/** * @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.')]; }
/** * @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()]; }