Exemplo n.º 1
0
 /**
  * @param $vars
  * @return array
  */
 public function checkAssignVarsOk($vars)
 {
     $errors = array();
     if (empty($vars['username'])) {
         $errors[] = 'AdminRightsUsernameEmpty';
     } else {
         // check if user name exists
         $member = new Member();
         $member = $member->findByUsername($vars['username']);
         if (!$member) {
             $errors[] = 'AdminRightsUsernameNotExisting';
         }
     }
     if ($vars['rightid'] == 0) {
         $errors[] = 'AdminRightsNoRightSelected';
     } else {
         // check if right is already assigned
         if (isset($member)) {
             $right = new Right($vars['rightid']);
             $assigned = $right->getRightForMember($member);
             if ($assigned) {
                 $errors[] = 'AdminRightsAlreadyAssigned';
             }
         }
     }
     if ($vars['level'] == 0) {
         $errors[] = 'AdminRightsNoLevelSelected';
     }
     if (empty($vars['scope'])) {
         $errors[] = 'AdminRightsScopeEmpty';
     } else {
         // check if scope is well formed
         if (!$this->checkScopeWellFormed($vars['scope'])) {
             $errors[] = 'AdminRightsScopeNotWellFormed';
         }
     }
     if (empty($vars['comment'])) {
         $errors[] = 'AdminRightsCommentEmpty';
     }
     return $errors;
 }
Exemplo n.º 2
0
 public function remove()
 {
     $this->checkRights('Rights');
     $rightId = $this->route_vars['id'];
     $username = $this->route_vars['username'];
     // Check if right and user exist and if right is assigned to user at all; redirect if not
     $right = new Right($rightId);
     if (!$right) {
         $this->redirectAbsolute($this->router->url('admin_rights_overview'));
     }
     $temp = new Member();
     $member = $temp->findByUsername($username);
     if (!$member) {
         $this->redirectAbsolute($this->router->url('admin_rights_overview'));
     }
     $assigned = $right->getRightForMember($member);
     if (!$assigned) {
         $this->redirectAbsolute($this->router->url('admin_rights_overview'));
     }
     $page = new AdminRightsRemovePage();
     $rights = $this->model->getRights(true);
     $page->rights = $rights;
     $redirectTo = '';
     if (isset($_SERVER['HTTP_REFERER'])) {
         if (strpos($_SERVER['HTTP_REFERER'], "/list/members") !== false) {
             $redirectTo = 'members';
         }
         if (strpos($_SERVER['HTTP_REFERER'], "/list/member/") !== false) {
             $redirectTo = 'member';
         }
         if (strpos($_SERVER['HTTP_REFERER'], "/list/rights") !== false) {
             $redirectTo = 'rights';
         }
         if (strpos($_SERVER['HTTP_REFERER'], "/list/right/") !== false) {
             $redirectTo = 'right';
         }
     }
     $vars = array('username' => $username, 'right' => $rightId, 'level' => $assigned->Level, 'scope' => $assigned->Scope, 'comment' => $assigned->Comment, 'redirect' => $redirectTo);
     $page->vars = $vars;
     return $page;
 }