public function getDefaultOptions(array $options) { $options = parent::getDefaultOptions($options); $roles = array(); if (count($options['choices']) == 0) { // get roles from the Admin classes foreach ($this->pool->getAdminServiceIds() as $id) { try { $admin = $this->pool->getInstance($id); } catch (\Exception $e) { continue; } $securityHandler = $admin->getSecurityHandler(); foreach ($securityHandler->buildSecurityInformation($admin) as $role => $acls) { $roles[$role] = $role; } } // get roles from the service container foreach ($this->pool->getContainer()->getParameter('security.role_hierarchy.roles') as $name => $rolesHierarchy) { $roles[$name] = $name . ': ' . implode(', ', $rolesHierarchy); foreach ($rolesHierarchy as $role) { if (!isset($roles[$role])) { $roles[$role] = $role; } } } $options['choices'] = $roles; } return $options; }
public function getDefaultOptions(array $options) { $options = parent::getDefaultOptions($options); $options['choices'] = array(self::TYPE_YES => $this->translator->trans('label_type_yes', array(), 'SonataAdminBundle'), self::TYPE_NO => $this->translator->trans('label_type_no', array(), 'SonataAdminBundle')); return $options; }
/** * {@inheritDoc} */ public function getDefaultOptions() { $options = parent::getDefaultOptions(); $options['choices'] = array(self::TYPE_IS_EQUAL => $this->translator->trans('label_type_equals', array(), 'SonataAdminBundle'), self::TYPE_IS_NOT_EQUAL => $this->translator->trans('label_type_not_equals', array(), 'SonataAdminBundle')); return $options; }