/** * @Request({"order": "array"}, csrf=true) * @Response("json") */ public function priorityAction($order) { foreach ($order as $id => $priority) { $role = $this->roles->find($id); if ($role) { $this->roles->save($role, compact('priority')); } } return $order; }
/** * @Request({"id": "int"}, csrf=true) */ public function deleteAction($id) { try { if (!($menu = $this->menus->find($id))) { throw new Exception(__('Invalid menu id')); } $this->menus->delete($menu); $this['db']->delete('@system_menu_item', ['menu_id' => $id]); } catch (Exception $e) { $this['message']->error($e->getMessage()); } return $this->redirect('@system/menu'); }
/** * @Request({"ids": "int[]"}, csrf=true) */ public function disableAction($ids = []) { foreach ($ids as $id) { if ($widget = $this->widgets->find($id) and $widget->getStatus()) { $this->widgets->save($widget, ['status' => Widget::STATUS_DISABLED]); } } return $this->redirect('@system/widgets'); }
/** * @Request({"ids": "int[]"}, csrf=true) */ public function deleteAction($ids = []) { foreach ($ids as $id) { if ($alias = $this->aliases->find($id)) { $this->aliases->delete($alias); } } $this['message']->success(_c('{0} No alias deleted.|{1} Alias deleted.|]1,Inf[ Aliases deleted.', count($ids))); return $this->redirect('@system/alias'); }
/** * @Request({"status": "int", "ids": "int[]"}, csrf=true) * @Response("json") */ public function statusAction($status, $ids = []) { foreach ($ids as $id) { if ($comment = $this->comments->find($id) and $comment->getStatus() != $status) { $previous = $comment->getStatus(); $comment->setStatus($status); $this->comments->save($comment); $this['events']->dispatch('system.comment.spam_mark', new MarkSpamEvent($comment, $previous)); } } return ['message' => _c('{0} No comment status updated.|{1} Comment status updated.|]1,Inf[ Comment statuses updated.', count($ids))]; }
/** * @Request({"status": "int", "ids": "int[]"}, csrf=true) * @Response("json") */ public function statusAction($status, $ids = []) { foreach ($ids as $id) { if ($page = $this->pages->find($id) and $page->getStatus() != $status) { $page->setStatus($status); $this->pages->save($page); } } if ($status == Page::STATUS_PUBLISHED) { $message = _c('{0} No page published.|{1} Page published.|]1,Inf[ Pages published.', count($ids)); } else { $message = _c('{0} No page unpublished.|{1} Page unpublished.|]1,Inf[ Pages unpublished.', count($ids)); } return compact('message'); }
/** * @Request({"status": "int", "menu": "int", "id": "int[]"}, csrf=true) */ public function statusAction($status, $menuId, $ids = []) { try { if (!($menu = $this->menus->find($menuId))) { throw new Exception(__('Invalid menu.')); } foreach ($ids as $id) { if ($item = $this->items->find($id) and $item->getStatus() != $status) { $this->items->save($item, compact('status')); } } if ($status == Item::STATUS_ENABLED) { $message = _c('{0} No menu item enabled.|{1} Menu item enabled.|]1,Inf[ Menu items enabled.', count($ids)); } else { $message = _c('{0} No menu item disabled.|{1} Menu item disabled.|]1,Inf[ Menu items disabled.', count($ids)); } $this['message']->success($message); } catch (Exception $e) { $this['message']->error($e->getMessage()); } return $this->redirect('@system/menu', ['id' => $menuId]); }