/** * Load groups to roles associations from database using specified role * * @param Role $role Role * @param ARSelectFilter $filter * @param bool $loadReferencedRecords * * @return ARSet */ public static function getRecordSetByRole(Role $role, ARSelectFilter $filter, $loadReferencedRecords = false) { $filter->mergeCondition(new EqualsCond(new ARFieldHandle(__CLASS__, "roleID"), $role->getID())); return self::getRecordSet($filter, $loadReferencedRecords = false); }
public function cancelRole(Role $role) { if (!$role->isExistingRecord()) { return; } $this->canceledRoles[$role->getID()] = $role; if (isset($this->appliedRoles[$role->getID()])) { unset($this->appliedRoles[$role->getID()]); } }
public function deleteRole(Role $roleToDelete) { // check permissions if (!PermissionEngine::getInstance()->currentUserCanDo('userCanDeleteRoles')) { return false; } $db = Database::getInstance(); if (!$db->isConnected()) { return false; } $roleID = $db->escapeString($roleToDelete->getID()); $roleName = $db->escapeString($roleToDelete->getName()); $results = $db->removeData('role', 'roleID = ' . $roleID . ' AND roleName = \'' . $roleName . '\''); if (!$results) { return false; } return true; }
public function assign(Role $role) { foreach ($this->roles as $assigned) { if ($assigned->getID() === $role->getID()) { return; } } $this->roles[] = $role; }