Exemplo n.º 1
0
 /**
  * Ïðîâåðêà ïðàâà ïðîñìîòðà ñòðàíèö
  *
  */
 function CanMakeAction($action_name)
 {
     global $RightLimitation, $ActionBlockLimitation;
     $action_name = strtolower($action_name);
     // ïîëó÷àåì ãðóïïû
     $arr_groups = $this->User->getGroups();
     $ok = 1;
     if (isset($ActionBlockLimitation) && sizeof($ActionBlockLimitation) > 0) {
         $ok = 0;
     }
     foreach ($arr_groups as $key => $value) {
         // åñëè äîñòóï íà ãðóïïó íå ëèìèòèðîâàí, òî âïåðåä
         if (!isset($ActionBlockLimitation[$key])) {
             $ok = 1;
             break;
         }
         // åñëè äîñòóï íà ãðóïïó íå ëèìèòèðîâàí, òî âïåðåä
         if (!isset($ActionBlockLimitation[$key][$_SERVER['SCRIPT_NAME']])) {
             $ok = 1;
             break;
         }
         if (in_array($action_name, $ActionBlockLimitation[$key][$_SERVER['SCRIPT_NAME']])) {
             $ok = 0;
         } else {
             /*
             print_r($_SERVER);
             echo $_SERVER['REQUEST_URI'];
             exit();
             */
         }
     }
     return $ok;
 }