protected function news(\Base $f3, array $params) { $this->response->addTitle($f3->get('LN__AdminMenu_News')); $f3->set('title_h3', $f3->get('LN__AdminMenu_News')); if (isset($params[2])) { $params = $this->parametric($params[2]); } if (isset($params['delete'])) { if ($this->model->deleteNews((int) $params['delete'])) { $f3->reroute('/adminCP/home/news', false); } else { $f3->set('form_error', "__failedDelete"); } } elseif (isset($_POST) and sizeof($_POST) > 0) { if (isset($_POST['form_data'])) { //$changes = $this->model->saveCustompage($params['id'], $f3->get('POST.form_data') ); } elseif (isset($_POST['newHeadline'])) { $newID = $this->model->addNews($f3->get('POST.newHeadline')); if ($newID !== FALSE) { $f3->reroute('/adminCP/home/news/id=' . $newID, false); } } } if (isset($params['id'])) { if (NULL !== ($data = $this->model->loadNews($params['id']))) { $data['raw'] = @$params['raw']; $data['errors'] = @$errors; $data['changes'] = @$changes; $this->buffer(\View\AdminCP::editNews($data)); return TRUE; } else { $f3->set('form_error', "__failedLoad"); } } // page will always be an integer > 0 $page = empty((int) @$params['page']) || (int) $params['page'] < 0 ?: (int) $params['page']; // search/browse $allow_order = array("id" => "nid", "date" => "date", "title" => "headline", "author" => "author"); // sort order $sort["link"] = isset($allow_order[@$params['order'][0]]) ? $params['order'][0] : "date"; $sort["order"] = $allow_order[$sort["link"]]; $sort["direction"] = isset($params['order'][1]) && $params['order'][1] == "asc" ? "asc" : "desc"; $data = $this->model->listNews($page, $sort); $this->buffer(\View\AdminCP::listNews($data, $sort)); }