<?php
namespace Claromentis\Core\Notification;

$GLOBALS["__65da1b1ec2d6" . "653e8a0ab7848e" . "536215"] = (@$GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"] ?: array()) + array("_e1ff5b38e589ed1" . "4356c31d60185070" . "d" => base64_decode("bm90aWZpY2F0aW9uX3RlbXBsYXRlci" . "50eHQ="), "lms" . "g" => base64_decode("bG1zZ" . "w=="), "_04fc9b453bf84fd277a74b7b99" . "3bdb2c" => base64_decode("bm90aWZpY2F0aW9uLm1hbmFnZX" . "I="), "_34d0ce22cfeec0cc1f" . "38c5f70aab6c79" => base64_decode("bm90aWZpY2F0aW9uLnR3" . "aWc="), "_b4838ebe29c2e1fadc3e33" . "37bec97606" => base64_decode("bm90aWZpY2F0aW9u" . "X3RlbXBsYXRlci50" . "d2ln"));
use Claromentis\Core\TextUtil\ClaText;
use Claromentis\Core\Twig\ClaromentisTextExtension;
use NotificationManager;
use Pimple\Container;
use Pimple\ServiceProviderInterface;
use Silex\Api\EventListenerProviderInterface;
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
use Symfony\Component\HttpKernel\Event\TerminateEvent;
use Symfony\Component\HttpKernel\KernelEvents;




class NotificationServiceProvider implements ServiceProviderInterface, EventListenerProviderInterface
{
    
    
    
    
    
    
    
    
    
    public function register(Container $app)
    {
        $app[Templater\TwigTemplater::class] = function ($app) {
            return new Templater\TwigTemplater($app[$GLOBALS["__65da1b1ec2d6653e8a" . "0ab7848e536215"]["_34d0ce22cfeec0c" . "c1f38c5f70aab6c7" . "9"]]);
        };
        $app[\NotificationManager::class] = function () {
            return \NotificationManager::GetInstance();
        };
        $app[$GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"]["_34d0ce22cfeec0cc1f38c5f70aab" . "6c79"]] = function () use($app) {
            $loader = new \Twig\Loader\ArrayLoader([]);
            $_6b67522fca36b32553cd09de29b97ff8 = new \Twig\Environment($loader);
            $_456068583374c520e302333f8181c960 = new \Twig\TwigFunction($GLOBALS["__65da1b1ec2d665" . "3e8a0ab7848e5362" . "15"]["l" . "m" . "s" . "g"], $GLOBALS["__65da1b1ec2d" . "6653e8a0ab784" . "8e536215"]["lms" . "g"]);
            $_6b67522fca36b32553cd09de29b97ff8->addFunction($_456068583374c520e302333f8181c960);
            $_6b67522fca36b32553cd09de29b97ff8->addExtension(new ClaromentisTextExtension($app[ClaText::class]));
            return $_6b67522fca36b32553cd09de29b97ff8;
        };
        $app[$GLOBALS["__65da1b1ec2d6653e8a0ab7" . "848e536215"]["_04fc9b453bf" . "84fd277a74b7" . "b993bdb2c"]] = \NotificationManager::class;
        $app[$GLOBALS["__65da1b1ec2d6653e8a0ab7848e53" . "6215"]["_e1ff5b38e58" . "9ed14356c31d" . "60185070d"]] = Templater\SimpleTemplater::class;
        $app[$GLOBALS["__65da1b1ec2d6653e8a0ab7848" . "e536215"]["_b4838ebe29c" . "2e1fadc3e333" . "7bec97606"]] = Templater\TwigTemplater::class;
    }
    public function subscribe(Container $app, EventDispatcherInterface $_b497ce6f2af10f67516aed0ecf34d8cf)
    {
        
        
        $_b497ce6f2af10f67516aed0ecf34d8cf->addListener(KernelEvents::TERMINATE, function (TerminateEvent $event) use($app) {
            $_fd5a3a643834299cbdadfc3540ba0bcb = $event->getResponse();
            if ($_fd5a3a643834299cbdadfc3540ba0bcb->getStatusCode() != 200) {
                return;
            }
            $_78f96256dee2054aa66d935e3d929b3f = $app[NotificationManager::class];
            $_78f96256dee2054aa66d935e3d929b3f->SendNotifications();
        });
    }
}