In Zend Framework 2, how do you use a controller plugin outside the controller -


specifically, i'm trying use flashmessenger plugin form within module.php file.

right method inside application/module.php file looks this:

public function checkacl(mvcevent $e) {     // code determine route , role ...      if (!$e->getviewmodel()->acl->isallowed($userrole, $route)) {         $flashmessenger = $e->getcontroller()->plugin('flashmessenger');         $flashmessenger->addmessage('you must logged in');          // code redirect login page ...     } } 

but not working because $e->getcontroller() returning string, not controller object. accessing either controller or plugin directly appreciated.

you can use controllerpluginmanager instance of flashmessenger event handler in module.php so:

public function myeventhandler(mvcevent $e) {     $sm = $e->getapplication()->getservicemanager();     $flash = $sm->get('controllerpluginmanager')->get('flashmessenger');     $flash->adderrormessage('test');     // ... } 

obviously can controller plugin.


Comments

Popular posts from this blog

jquery - How can I dynamically add a browser tab? -

node.js - Getting the socket id,user id pair of a logged in user(s) -

keyboard - C++ GetAsyncKeyState alternative -