/** * Ïðîâåðêà ïðàâà ïðîñìîòðà ñòðàíèö * */ 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; }