<?php
namespace Claromentis\Core\Notification;

$GLOBALS["__65da1b1ec2d6653e8a0ab7848e53621" . "5"] = (@$GLOBALS["__65da1b1ec2d6653e8a0ab7848e" . "536215"] ?: array()) + array("_b4838ebe2" . "9c2e1fadc3" . "e3337bec97" . "606" => base64_decode("bm90aWZpY2F0aW9uX" . "3RlbXBsYXRlci50d2" . "ln"), "_e1ff5b38e589ed1435" . "6c31d60185070d" => base64_decode("bm90aWZpY2F0aW9u" . "X3RlbXBsYXRlci50" . "eHQ="), "_34d0ce22cfeec0c" . "c1f38c5f70aab6c7" . "9" => base64_decode("bm90aWZpY2F0" . "aW9uLnR3aWc="), "lms" . "g" => base64_decode("bG1" . "zZw" . "=="), "_04fc9b453" . "bf84fd277a" . "74b7b993bd" . "b2c" => base64_decode("bm90aWZpY2F0aW9uLm1hbmF" . "nZXI="));
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["__65da1b1ec2d6653e8a0ab78" . "48e536215"]["_34d0ce22cf" . "eec0cc1f38c" . "5f70aab6c79"]]);
        };
        $app[\NotificationManager::class] = function () {
            return \NotificationManager::GetInstance();
        };
        $app[$GLOBALS["__65da1b1ec2d6653e8a0ab7848e53621" . "5"]["_34d0ce22cfee" . "c0cc1f38c5f70" . "aab6c79"]] = function () use($app) {
            $loader = new \Twig\Loader\ArrayLoader([]);
            $_6b67522fca36b32553cd09de29b97ff8 = new \Twig\Environment($loader);
            $_456068583374c520e302333f8181c960 = new \Twig\TwigFunction($GLOBALS["__65da1b1ec2d6653e8a0ab7848e" . "536215"]["l" . "m" . "s" . "g"], $GLOBALS["__65da1b1ec2d6653e8a0ab7848e5" . "36215"]["lm" . "sg"]);
            $_6b67522fca36b32553cd09de29b97ff8->addFunction($_456068583374c520e302333f8181c960);
            $_6b67522fca36b32553cd09de29b97ff8->addExtension(new ClaromentisTextExtension($app[ClaText::class]));
            return $_6b67522fca36b32553cd09de29b97ff8;
        };
        $app[$GLOBALS["__65da1b1ec2d6653e" . "8a0ab7848e536215"]["_04fc9b453bf84fd277a74b7b993bdb2" . "c"]] = \NotificationManager::class;
        $app[$GLOBALS["__65da1b1ec2d6653e8a0ab7848" . "e536215"]["_e1ff5b38e5" . "89ed14356c3" . "1d60185070d"]] = Templater\SimpleTemplater::class;
        $app[$GLOBALS["__65da1b1ec2" . "d6653e8a0ab7" . "848e536215"]["_b4838ebe29c2e1f" . "adc3e3337bec9760" . "6"]] = 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();
        });
    }
}