public function testGetRolesMultiOptions() { $element = new Application_Form_Element_Roles('Roles'); $options = $element->getRolesMultiOptions(); $this->assertEquals(count(Opus_UserRole::getAll()), count($options)); foreach ($options as $value => $label) { $this->assertEquals($value, $label); } }
public function getRolesMultiOptions() { $roles = Opus_UserRole::getAll(); $options = array(); foreach ($roles as $role) { $roleName = $role->getDisplayName(); $options[$roleName] = $roleName; } return $options; }
/** * Initialize model with the following fields: * - staringip * - endingip * - Name * * @return void */ protected function _init() { $startingip = new Opus_Model_Field('Startingip'); $endingip = new Opus_Model_Field('Endingip'); $name = new Opus_Model_Field('Name'); $role = new Opus_Model_Field('Role'); $startingip->setMandatory(true)->setValidator(new Zend_Validate_NotEmpty())->setValidator(new Zend_Validate_Hostname(Zend_Validate_Hostname::ALLOW_IP)); $endingip->setMandatory(true)->setValidator(new Zend_Validate_NotEmpty())->setValidator(new Zend_Validate_Hostname(Zend_Validate_Hostname::ALLOW_IP)); $role->setMultiplicity('*')->setDefault(Opus_UserRole::getAll())->setSelection(true); $this->addField($startingip)->addField($endingip)->addField($name)->addField($role); }
/** * Shows list of all roles. */ public function indexAction() { $this->view->title = $this->view->translate('admin_role_index'); $roles = Opus_UserRole::getAll(); if (empty($roles)) { $this->view->render('none'); } else { $this->view->roles = array(); foreach ($roles as $role) { $this->view->roles[$role->getId()] = $role->getDisplayName(); } } $this->view->protectedRoles = self::$_protectedRoles; }
public static function parseSelectedRoleNames($postData) { $roles = Opus_UserRole::getAll(); $selectedRoles = array(); foreach ($roles as $roleName) { $keyName = 'role' . $roleName; // FIXME: Kludge to avoid undefined array indices. if (!array_key_exists($keyName, $postData)) { continue; } // If role-checkbox is activated, add role to returned array. if ($postData[$keyName]) { $selectedRoles[] = $roleName; } } return $selectedRoles; }
public function getRolesForFile($fileId) { $checkedRoles = array(); $roles = Opus_UserRole::getAll(); $items = array(); foreach ($roles as $role) { $files = $role->listAccessFiles(); if (in_array($fileId, $files)) { array_push($checkedRoles, $role->getName()); } } return $checkedRoles; }
/** * Stores roles for document. * * @param <type> $request * * TODO Is it a problem if document is append twice? */ private function storeRoles($request) { $docId = $request->getParam('docid'); $roles = Opus_UserRole::getAll(); foreach ($roles as $role) { $roleName = $role->getName(); $checked = $request->getParam($roleName); if ($checked) { $role->appendAccessDocument($docId); $role->store(); } else { $role->removeAccessDocument($docId); $role->store(); } } }