Example #1
0
 /**
  * @Route("/bulk", methods="POST")
  * @Request({"widgets": "array"}, csrf=true)
  */
 public function bulkSaveAction($widgets = [])
 {
     foreach ($widgets as $data) {
         $this->saveAction($data, isset($data['id']) ? $data['id'] : 0);
     }
     return ['message' => 'success', 'positions' => array_values(App::position()->all())];
 }
Example #2
0
 /**
  * @Request({"id": "int", "type": "string"})
  */
 public function editAction($id = 0, $type = null)
 {
     if (!$id) {
         $widget = Widget::create(['type' => $type]);
     } else {
         if (!($widget = Widget::find($id))) {
             App::abort(404, 'Widget not found.');
         }
     }
     return ['$view' => ['title' => __('Widgets'), 'name' => 'system/widget/edit.php'], '$data' => ['widget' => $widget, 'config' => ['menus' => App::menu(), 'nodes' => array_values(Node::query()->get()), 'roles' => array_values(Role::findAll()), 'types' => array_values(App::widget()->all()), 'positions' => array_values(App::position()->all())]]];
 }
Example #3
0
 /**
  * @Request({"position", "ids": "array"}, csrf=true)
  */
 public function assignAction($position, $ids)
 {
     App::position()->assign($position, $ids);
     return ['message' => 'success'];
 }