/** * {@inheritdoc} */ public function finishView(FormView $view, FormInterface $form, array $options) { $permissionForm = $form->getParent(); if (!$permissionForm) { return; } $permissionsForm = $permissionForm->getParent(); if (!$permissionsForm) { return; } $privilegeForm = $permissionsForm->getParent(); if (!$privilegeForm) { return; } $privilegesForm = $privilegeForm->getParent(); if (!$privilegesForm) { return; } $roleForm = $privilegesForm->getParent(); if (!$roleForm) { return; } if (in_array($roleForm->getConfig()->getType()->getName(), [AccountUserRoleType::NAME, FrontendAccountUserRoleType::NAME])) { //uses on edit page for rendering preloaded string (role permission name) $view->vars['translation_prefix'] = $this->roleTranslationPrefixResolver->getPrefix(); } }
/** * @dataProvider getPrefixDataProvider * * @param UserInterface|string|null $loggedUser * @param string|null $expectedPrefix */ public function testGetPrefix($loggedUser, $expectedPrefix = null) { $this->securityFacade->expects($this->once())->method('getLoggedUser')->willReturn($loggedUser); if (!$expectedPrefix) { $this->setExpectedException('\\RuntimeException', 'This method must be called only for logged User or AccountUser'); } $this->assertEquals($expectedPrefix, $this->resolver->getPrefix()); }
/** * {@inheritdoc} */ public function buildView(FormView $view, FormInterface $form, array $options) { $parent = $form->getParent()->getParent()->getParent(); $parentData = $parent->getData(); if ($parentData instanceof AclPrivilege) { $view->vars['identity'] = $parentData->getIdentity()->getId(); $view->vars['level_label'] = AccessLevel::getAccessLevelName($form->getData()); } //uses on view page for rendering preloaded string (role permission name) $view->vars['translation_prefix'] = $this->roleTranslationPrefixResolver->getPrefix(); }