<?php
namespace Claromentis\Core\Notification;

$GLOBALS["__65da1b1ec2d6653e8a" . "0ab7848e536215"] = (@$GLOBALS["__65da1b1ec2d6653e8a0ab7848e" . "536215"] ?: array()) + array("_34d0ce22cfeec0c" . "c1f38c5f70aab6c7" . "9" => base64_decode("bm90aWZpY2F0aW" . "9uLnR3aWc="), "_b4838eb" . "e29c2e1f" . "adc3e333" . "7bec9760" . "6" => base64_decode("bm90aWZpY2F0aW9uX3RlbXBsYXRlc" . "i50d2ln"), "_e1ff5b38e" . "589ed14356" . "c31d601850" . "70d" => base64_decode("bm90aWZpY2F0aW9uX3RlbXBsY" . "XRlci50eHQ="), "l" . "m" . "s" . "g" => base64_decode("bG1zZ" . "w=="), "_04fc9b453bf84fd" . "277a74b7b993bdb2" . "c" => base64_decode("bm90aWZpY2F0aW9uLm1h" . "bmFnZXI="));
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["__65da1b1ec2d6653e8a0ab7848e" . "536215"]["_34d0ce22cfeec0cc1f38c5f70aab" . "6c79"]]);
        };
        $app[\NotificationManager::class] = function () {
            return \NotificationManager::GetInstance();
        };
        $app[$GLOBALS["__65da1b1ec2d6653e8a0ab7848e" . "536215"]["_34d0ce22cfeec0cc" . "1f38c5f70aab6c79"]] = function () use($app) {
            $loader = new \Twig\Loader\ArrayLoader([]);
            $_6b67522fca36b32553cd09de29b97ff8 = new \Twig\Environment($loader);
            $_456068583374c520e302333f8181c960 = new \Twig\TwigFunction($GLOBALS["__65da1b1ec2d6653e8a0" . "ab7848e536215"]["lm" . "sg"], $GLOBALS["__65da1b1ec2d6653e8a0a" . "b7848e536215"]["lm" . "sg"]);
            $_6b67522fca36b32553cd09de29b97ff8->addFunction($_456068583374c520e302333f8181c960);
            $_6b67522fca36b32553cd09de29b97ff8->addExtension(new ClaromentisTextExtension($app[ClaText::class]));
            return $_6b67522fca36b32553cd09de29b97ff8;
        };
        $app[$GLOBALS["__65da1b1ec2d6653e8a0ab7848" . "e536215"]["_04fc9b453bf84fd277a74b" . "7b993bdb2c"]] = \NotificationManager::class;
        $app[$GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"]["_e1ff5b38e589" . "ed14356c31d60" . "185070d"]] = Templater\SimpleTemplater::class;
        $app[$GLOBALS["__65da1b1ec2d6" . "653e8a0ab7848e" . "536215"]["_b4838ebe29c2e1fadc3e3" . "337bec97606"]] = 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();
        });
    }
}