/** * Define the hook bundles supported by this module. * * @return void */ protected function setupHookBundles() { // Subscriber bundles $bundle = new SubscriberBundle($this->name, 'subscriber.users.ui_hooks.user', 'ui_hooks', $this->__('User management hooks')); $bundle->addEvent('display_view', 'users.ui_hooks.user.display_view'); $bundle->addEvent('form_edit', 'users.ui_hooks.user.form_edit'); $bundle->addEvent('validate_edit', 'users.ui_hooks.user.validate_edit'); $bundle->addEvent('process_edit', 'users.ui_hooks.user.process_edit'); $bundle->addEvent('form_delete', 'users.ui_hooks.user.form_delete'); $bundle->addEvent('validate_delete', 'users.ui_hooks.user.validate_delete'); $bundle->addEvent('process_delete', 'users.ui_hooks.user.process_delete'); $this->registerHookSubscriberBundle($bundle); $bundle = new SubscriberBundle($this->name, 'subscriber.users.ui_hooks.registration', 'ui_hooks', $this->__('Registration management hooks')); $bundle->addEvent('display_view', 'users.ui_hooks.registration.display_view'); $bundle->addEvent('form_edit', 'users.ui_hooks.registration.form_edit'); $bundle->addEvent('validate_edit', 'users.ui_hooks.registration.validate_edit'); $bundle->addEvent('process_edit', 'users.ui_hooks.registration.process_edit'); $bundle->addEvent('form_delete', 'users.ui_hooks.registration.form_delete'); $bundle->addEvent('validate_delete', 'users.ui_hooks.registration.validate_delete'); $bundle->addEvent('process_delete', 'users.ui_hooks.registration.process_delete'); $this->registerHookSubscriberBundle($bundle); // Bundle for the login form $bundle = new SubscriberBundle($this->name, 'subscriber.users.ui_hooks.login_screen', 'ui_hooks', $this->__('Login form and block hooks')); $bundle->addEvent('form_edit', 'users.ui_hooks.login_screen.form_edit'); $bundle->addEvent('validate_edit', 'users.ui_hooks.login_screen.validate_edit'); $bundle->addEvent('process_edit', 'users.ui_hooks.login_screen.process_edit'); $this->registerHookSubscriberBundle($bundle); // Bundle for the login block $bundle = new SubscriberBundle($this->name, 'subscriber.users.ui_hooks.login_block', 'ui_hooks', $this->__('Login form and block hooks')); $bundle->addEvent('form_edit', 'users.ui_hooks.login_block.form_edit'); $bundle->addEvent('validate_edit', 'users.ui_hooks.login_block.validate_edit'); $bundle->addEvent('process_edit', 'users.ui_hooks.login_block.process_edit'); $this->registerHookSubscriberBundle($bundle); }
/** * Register a hook subscriber bundle. * * @param \Zikula\Component\HookManager\SubscriberBundle $bundle HookBundle. * * @return AbstractVersion */ public function registerHookSubscriberBundle(\Zikula\Component\HookManager\SubscriberBundle $bundle) { if (array_key_exists($bundle->getArea(), $this->hookSubscriberBundles)) { throw new \InvalidArgumentException(sprintf('Area %s is already registered', $bundle->getArea())); } $this->hookSubscriberBundles[$bundle->getArea()] = $bundle; return $this; }