Bluz\Grid\Grid::processRequest PHP Method

processRequest() public method

Example of request url - http://domain.com/pages/grid/ - http://domain.com/pages/grid/page/2/ - http://domain.com/pages/grid/page/2/order-alias/desc/ - http://domain.com/pages/grid/page/2/order-created/desc/order-alias/asc/ with prefix for support more than one grid on page - http://domain.com/users/grid/users-page/2/users-order-created/desc/ - http://domain.com/users/grid/users-page/2/users-filter-status/active/ hash support - http://domain.com/pages/grid/#/page/2/order-created/desc/order-alias/asc/
public processRequest ( ) : Grid
return Grid
    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;
    }