Пример #1
0
 private function _edit_allowed_action($action_id, $set = true, $page_id)
 {
     $action = AdminAction::preload($action_id);
     $controller = AdminController::preload($action->controller_id);
     $action_name = $controller->controller . '.' . $action->action;
     // add action id and controller_action as keys so both can be checked
     $this->_processed_actions[$page_id][$action->id] = $set;
     $this->_processed_actions[$page_id][$action_name] = $set;
     if ($action->action == 'index') {
         $this->_processed_actions[$page_id][$controller->controller] = $set;
     }
 }
Пример #2
0
 public function postEdit()
 {
     $v = Validator::make(Request::all(), array('role' => 'required|integer', 'action' => 'required|integer', 'value' => 'required'));
     if ($v->passes()) {
         $role = UserRole::find(Request::input('role'));
         if (!empty($role)) {
             $action = AdminAction::find(Request::input('action'));
             $controller = AdminController::find($action->controller_id);
             if (!empty($controller) && ($controller->controller != 'roles' || $role->id != Auth::user()->role->id)) {
                 $role->actions()->detach(Request::input('action'));
                 if (Request::input('value') == 'true') {
                     $role->actions()->attach(Request::input('action'));
                 }
                 return 1;
             }
         }
     }
     return 0;
 }
Пример #3
0
 /**
  * @param $actionId
  * @return string
  */
 private static function _itemUrl($actionId)
 {
     if ($actionId > 0) {
         /** @var AdminAction $adminAction */
         $adminAction = AdminAction::preload($actionId);
         if (!empty($adminAction)) {
             /** @var AdminController $adminController */
             $adminController = AdminController::preload($adminAction->controller_id);
             $routeName = 'coaster.admin.' . $adminController->controller . ($adminAction->action == 'index' ? '' : '.' . $adminAction->action);
             if (strpos(Request::route()->getName(), $routeName) === 0) {
                 //self::$_setActive = true;
             }
             return route($routeName);
         }
     }
     return '#';
 }