Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace Fcm;
- use Zend\EventManager\Event;
- use BjyAuthorize\View\RedirectionStrategy;
- class Module
- {
- // public function onBootstrap(MvcEvent $e)
- // {
- // $eventManager = $e->getApplication()->getEventManager();
- // $moduleRouteListener = new ModuleRouteListener();
- // $moduleRouteListener->attach($eventManager);
- // }
- public function getConfig()
- {
- return include __DIR__ . '/config/module.config.php';
- }
- public function getAutoloaderConfig()
- {
- return array(
- 'Zend\Loader\StandardAutoloader' => array(
- 'namespaces' => array(
- __NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__,
- ),
- ),
- );
- }
- public function onBootstrap(Event $e)
- {
- $serviceManager = $e->getApplication()->getServiceManager();
- $serviceManager->get('viewhelpermanager')->setFactory('Fcmhelper', function ($sm) use ($e) {
- return new \Fcm\View\Helper\Fcmhelper($sm);
- });
- $e->getApplication()->getEventManager()->getSharedManager()->attach('Zend\Mvc\Controller\AbstractActionController', 'dispatch', function($e) {
- $controller = $e->getTarget();
- $controllerClass = get_class($controller);
- $moduleNamespace = substr($controllerClass, 0, strpos($controllerClass, '\\'));
- $config = $e->getApplication()->getServiceManager()->get('config');
- $routeMatch = $e->getRouteMatch();
- $actionName = strtolower($routeMatch->getParam('action', 'not-found')); // get the action name
- if (isset($config['module_layouts'][$moduleNamespace][$actionName])) {
- $controller->layout($config['module_layouts'][$moduleNamespace][$actionName]);
- } elseif (isset($config['module_layouts'][$moduleNamespace]['default'])) {
- $controller->layout($config['module_layouts'][$moduleNamespace]['default']);
- }
- }, 100);
- $events = $e->getApplication()->getEventManager()->getSharedManager();
- $events->attach('ZfcUser\Form\Register', 'init', function($e) {
- $form = $e->getTarget();
- $form->add(
- array(
- 'name' => 'roles',
- 'type' => 'Zend\Form\Element\Text',
- 'options' => array(
- 'label' => 'Select role',
- ),
- )
- );
- $form->add(
- array(
- 'name' => 'client',
- 'type' => 'Zend\Form\Element\Text',
- 'options' => array(
- 'label' => 'Select client',
- ),
- )
- );
- $routeMatch = $e->getRouteMatch();
- die(var_dump($routeMatch->getParam('action', 'not-found')));
- $form->get('submit')->setLabel('Add User');
- // Do what you please with the form instance ($form)
- });
- $events->attach('ZfcUser\Form\RegisterFilter', 'init', function($e) {
- $filter = $e->getTarget();
- $filter->add(array(
- 'name' => 'client',
- 'required' => false,
- )
- );
- $filter->add(array(
- 'name' => 'roles',
- 'required' => false,
- )
- );
- // Do what you please with the filter instance ($filter)
- });
- $em = \Zend\EventManager\StaticEventManager::getInstance();
- $app = $e->getApplication();
- $em->attach('ZfcUser\Service\User', 'register', function($e) use ($app) {
- $user = $e->getParam('user'); // User account object
- $form = $e->getParam('form'); // Form object
- $em = $app->getServiceManager()->get('Doctrine\ORM\EntityManager');
- $clients = $em->getRepository('Fcm\Entity\Client')->findEntity($user->getClient());
- if ($form->get('roles')->getValue() != null) {
- $role = $em->getRepository('Fcm\Entity\Role')->findEntity($form->get('roles')->getValue());
- $user->getRolesCollection()->add($role);
- }
- $user->setClient($clients);
- });
- // Config RedirectRoute for manage 403 error
- $application = $e->getTarget();
- $eventManager = $application->getEventManager();
- $strategy = new RedirectionStrategy();
- // eventually set the route name (default is ZfcUser's login route)
- $strategy->setRedirectRoute('login');
- // eventually set the URI to be used for redirects
- // $strategy->setRedirectUri('http://example.org/login');
- $eventManager->attach($strategy);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement