protected function doModelsListing()
    {
        $query = $this->newIndexQuery();
        $filters = $this->getRequestFilters();
        $query = $this->getModelManager()->filter($query, $filters);

        $pageNumber = intval($this->getRequest()->query->get('page', 1));
        $itemsPerPage = $this->getRecordPaginator()->getItemsPerPage();

        $this->getRecordPaginator()->setPage($pageNumber);
        $this->getRecordPaginator()->paginate($query);

        $items = $this->indexFindItems($query);
        $this->indexPrepareItems($items);

        $this->getView()->set('filters', $filters);
        $this->getView()->set('filters', $filters);
        $this->getView()->set('filtersManager', $this->getModelManager()->getFilterManager());
        $this->getView()->set('title', $this->getModelManager()->getLabel('title'));

        $this->getView()->Paginator()->setPaginator($this->getRecordPaginator());
        $this->getView()->Paginator()->setURL($this->getModelManager()->getURL($filters));

//        if ($pageNumber * $itemsPerPage < $this->recordLimit) {
//        } else {
//            $this->getView()->set('recordLimit', true);
//        }
    }