public function processRequest()
{
$this->module = Request::getModule();
$this->controller = Request::getController();
$page = Request::getParam($this->prefix . 'page', 1);
$this->setPage($page);
$limit = Request::getParam($this->prefix . 'limit', $this->limit);
$this->setLimit($limit);
foreach ($this->allowOrders as $column) {
$order = Request::getParam($this->prefix . 'order-' . $column);
if ($order) {
$this->addOrder($column, $order);
}
}
foreach ($this->allowFilters as $column) {
$filter = Request::getParam($this->prefix . 'filter-' . $column);
if ($filter) {
if (strpos($filter, '-')) {
$filter = trim($filter, ' -');
while ($pos = strpos($filter, '-')) {
$filterType = substr($filter, 0, $pos);
$filter = substr($filter, $pos + 1);
if (strpos($filter, '-')) {
$filterValue = substr($filter, 0, strpos($filter, '-'));
$filter = substr($filter, strpos($filter, '-') + 1);
} else {
$filterValue = $filter;
}
$this->addFilter($column, $filterType, $filterValue);
}
} else {
$this->addFilter($column, self::FILTER_EQ, $filter);
}
}
}
return $this;
}