/**
  * @Request({"permissions": "array"}, csrf=true)
  * @Response("json")
  */
 public function saveAction($permissions = [])
 {
     foreach ($this->roles->findAll() as $role) {
         $role->setPermissions(isset($permissions[$role->getId()]) ? $permissions[$role->getId()] : []);
         $this->roles->save($role);
     }
     return $this['request']->isXmlHttpRequest() ? ['message' => __('Permissions saved!')] : $this->redirect('@system/permission');
 }
 /**
  * @Request({"id": "int"})
  * @Response("extension://page/views/admin/pages/edit.razr")
  */
 public function editAction($id)
 {
     try {
         if (!($page = $this->pages->find($id))) {
             throw new Exception(__('Invalid page id.'));
         }
     } catch (Exception $e) {
         $this['message']->error($e->getMessage());
         return $this->redirect('@page/page');
     }
     return ['head.title' => __('Edit Page'), 'page' => $page, 'statuses' => Page::getStatuses(), 'roles' => $this->roles->findAll()];
 }
 /**
  * @Request({"id": "int"})
  * @Response("extension://system/views/admin/menu/item.edit.razr")
  */
 public function editAction($id)
 {
     try {
         if (!($item = $this->items->find($id))) {
             throw new Exception(__('Invalid menu item.'));
         }
         return ['head.title' => __('Edit Menu Item'), 'item' => $item, 'roles' => $this->roles->findAll()];
     } catch (Exception $e) {
         $this['message']->error($e->getMessage());
     }
     return $this->redirect('@system/menu');
 }
 /**
  * @Request({"position", "order": "array"}, csrf=true)
  * @Response("json")
  */
 public function reorderAction($position, $order = [])
 {
     $widgets = $this->widgets->findAll();
     foreach ($order as $priority => $data) {
         $id = $data['id'];
         if (isset($widgets[$id])) {
             $this->widgets->save($widgets[$id], compact('position', 'priority'));
         }
     }
     return ['message' => __('Widgets updated.')];
 }
Beispiel #5
0
 /**
  * @Request({"id": "int"})
  * @Response("extension://blog/views/admin/post/edit.razr")
  */
 public function editAction($id)
 {
     try {
         if (!($post = $this->posts->query()->where(compact('id'))->related('user')->first())) {
             throw new Exception(__('Invalid post id.'));
         }
     } catch (Exception $e) {
         $this['message']->error($e->getMessage());
         return $this->redirect('@blog/post');
     }
     return ['head.title' => __('Edit Post'), 'post' => $post, 'statuses' => Post::getStatuses(), 'roles' => $this->roles->findAll(), 'users' => $this->users->findAll()];
 }