コード例 #1
0
 /**
  * Init events
  * 
  * @param \Zend\ModuleManager\ModuleEvent $e
  */
 public function initEvents(ModuleEvent $e)
 {
     $model = $this->serviceLocator->get('Application\\Model\\ModelManager')->getInstance('ActionTracker\\Model\\ActionTrackerBase');
     $actions = $model->getActivatedActions();
     // bind all activated events
     if (count($actions)) {
         $eventManager = ActionTrackerEvent::getEventManager();
         foreach ($actions as $action) {
             $eventManager->attach($action->name, function ($e) use($model, $action) {
                 if ($model->getModuleInfo('ActionTracker')) {
                     $model->logAction($action->action_id, $e->getParam('description'), $e->getParam('description_params'));
                 }
             });
         }
     }
 }
コード例 #2
0
ファイル: Module.php プロジェクト: phpab/phpab-module
 /**
  * Called when the modules are loaded.
  *
  * @param ModuleEvent $event
  */
 public function onLoadModulesPost(ModuleEvent $event)
 {
     /** @var ServiceManager $serviceManager */
     $serviceManager = $event->getParam('ServiceManager');
     /** @var EngineInterface $engine */
     $engine = $serviceManager->get('phpab.engine');
     $engine->start();
 }
コード例 #3
0
 public function onLoadModules(ModuleEvent $event)
 {
     //        /** @var ModuleManager $moduleManager */
     //        $moduleManager = $event->getTarget();
     /** @var ServiceManager $serviceLocator */
     $serviceLocator = $event->getParam('ServiceManager');
     $serviceConfig = ArrayUtils::merge($this->getConfig(false)['service_manager'], $this->getServiceConfig());
     $serviceConfig = new ServiceConfig($serviceConfig);
     $serviceConfig->configureServiceManager($serviceLocator);
     /** @var \Detail\VarCrypt\Listener\MultiEncryptorListener $encryptorListener */
     $encryptorListener = $serviceLocator->get('Detail\\VarCrypt\\Listener\\MultiEncryptorListener');
     $encryptorListener->onLoadModules($event);
     //        $moduleManager->getEventManager()->attachAggregate($encryptorListener);
 }
コード例 #4
0
ファイル: Module.php プロジェクト: joacub/libra-locale
 public function overrideViewHelperUrl(ModuleEvent $e)
 {
     $serviceLocator = $e->getParam('ServiceManager');
     $viewHelperManager = $serviceLocator->get('ViewHelperManager');
     // Configure URL view helper with router
     $viewHelperManager->setFactory('url', function ($sm) use($serviceLocator) {
         $helper = new View\Helper\Url();
         $router = \Zend\Console\Console::isConsole() ? 'HttpRouter' : 'Router';
         $helper->setRouter($serviceLocator->get($router));
         $match = $serviceLocator->get('application')->getMvcEvent()->getRouteMatch();
         if ($match instanceof \Zend\Mvc\Router\RouteMatch) {
             $helper->setRouteMatch($match);
         }
         return $helper;
     });
 }
コード例 #5
0
 /**
  * Merge the config for each module
  *
  * @param  ModuleEvent $e
  * @return ConfigListener
  */
 public function onLoadModule(ModuleEvent $e)
 {
     $module = $e->getParam('module');
     if (!$module instanceof ConfigProviderInterface && !is_callable(array($module, 'getConfig'))) {
         return $this;
     }
     $config = $module->getConfig();
     $this->addConfig($e->getModuleName(), $config);
     return $this;
 }
コード例 #6
0
 /**
  * Merge the config for each module
  *
  * @param  ModuleEvent $e
  * @return ConfigListener
  */
 public function loadModule(ModuleEvent $e)
 {
     if (true === $this->skipConfig) {
         return;
     }
     $module = $e->getParam('module');
     if (is_callable(array($module, 'getConfig'))) {
         $this->mergeModuleConfig($module);
     }
     return $this;
 }