Ejemplo n.º 1
0
 protected function tagsGroups(\Base $f3, $params)
 {
     //$segment = "archive/tags/groups";
     //if(!$this->model->checkAccess($segment)) return FALSE;
     if (isset($params[2])) {
         $params = $this->parametric($params[2]);
     }
     if (isset($params['delete'])) {
         if ($this->model->deleteTagGroup((int) $params['delete'])) {
             $f3->reroute('/adminCP/archive/tags/groups', false);
         } else {
             $f3->set('form_error', "__failedDelete");
         }
     } elseif (isset($_POST) and sizeof($_POST) > 0) {
         if (isset($_POST['form_data'])) {
             $changes = $this->model->saveTagGroup($params['id'], $f3->get('POST.form_data'));
         } elseif (isset($_POST['newTagGroup'])) {
             $newID = $this->model->addTagGroup($f3->get('POST.newTagGroup'));
             $f3->reroute('/adminCP/archive/tags/groups/id=' . $newID, false);
         }
     }
     if (isset($params['id'])) {
         $data = $this->model->loadTagGroup($params['id']);
         $data['errors'] = @$errors;
         $data['changes'] = @$changes;
         $this->buffer(\View\AdminCP::editTagGroup($data));
         return TRUE;
     }
     // 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" => "tid", "group" => "G.description", "count" => "count");
     // sort order
     $sort["link"] = isset($allow_order[@$params['order'][0]]) ? $params['order'][0] : "group";
     $sort["order"] = $allow_order[$sort["link"]];
     $sort["direction"] = isset($params['order'][1]) && $params['order'][1] == "desc" ? "desc" : "asc";
     $data = $this->model->tagGroupsList($page, $sort);
     $this->buffer(\View\AdminCP::listTagGroups($data, $sort));
 }