public function activate() { $this->header(); $filter = new CustomDataFilter($this->page->getPosition()); $filter->field('title'); $filter->condition('published', 0); $filter->orderBy('date'); $this->page->overview($this->getTemplateFile('/Cms/admin/data_categories'), Config::get('pagination.admin'), $filter); $this->footer(); }
public function top() { $this->breadcrumb->add('Rating'); $this->header(); $filter = new CustomDataFilter($this->flightPage->getPosition()); $filter->fieldForeign('categories', 'name', 'airlineName'); $filter->fieldForeign('categories', 'id', 'airlineId'); $filter->fieldCalculation('rating', '(AVG(vdr_rating)+AVG(bord_rating)+AVG(service_rating))/3'); $filter->join('categories', 'id', 'airline'); $filter->condition('published', 1); $filter->orderBy('rating', false); $filter->groupBy('airline'); $this->flightPage->overview('/Airlines/top', 0, $filter); $this->footer(); }
public function overview($tpl = null, $pagination = 0, CustomDataFilter $filter = null) { if ($filter === null) { $filter = new CustomDataFilter($this->position); foreach ($this->mainFields as $field) { $filter->field($field); } $filter->orderBy(reset($this->mainFields)); } $pages = ''; if ($pagination > 0) { $pg = new Pagination($pagination, $filter->getAmount()); $pg->setUri($this->baseUri); $pg->parsePage(); $filter->limit($pg->getPerPage(), $pg->getOffset()); $pages = $pg->build(); } $tpl = Response::getObject()->appendTemplate($tpl ? $tpl : "/Cms/fields/data_categories"); $tpl->assign('pages', $pages, false); $tpl->assign('list', $filter->retrieveList(), false); $tpl->assign('baseUri', $this->baseUri); $tpl->output(); }