예제 #1
0
 /**
  * @covers Hermes\Resource\Paginator::setPageCount
  * @covers Hermes\Resource\Paginator::getPageCount
  */
 public function testSetGetPageCount()
 {
     $this->assertSame($this->object, $this->object->setPageCount(15));
     $this->assertSame(15, $this->object->getPageCount());
 }
 private function loadTemplateNavigationVariables(Paginator $paginator)
 {
     if ($this->sess->get('search')) {
         $this->templateVars['search'] = urlencode($this->sess->get('search'));
     } else {
         $this->templateVars['search'] = '';
     }
     $this->templateVars['record_count'] = $paginator->getRecordCount();
     $this->templateVars['total_pages'] = $paginator->getPageCount();
     $currentPage = $this->sess->get('current_page');
     if ($currentPage > $this->templateVars['total_pages']) {
         $currentPage = 1;
         $this->sess->set('current_page', 1);
     }
     $this->templateVars['current_page'] = $currentPage;
     $this->templateVars['navigation_pages'] = $paginator->getNavigationPagesList($currentPage);
     if ($this->templateVars['record_count'] > 0) {
         $this->templateVars['record_start'] = ($currentPage - 1) * $paginator->getRecordsPerPage() + 1;
     } else {
         $this->templateVars['record_start'] = 0;
     }
     $this->templateVars['record_end'] = $currentPage * $paginator->getRecordsPerPage();
     if ($this->templateVars['record_end'] > $this->templateVars['record_count']) {
         $this->templateVars['record_end'] = $this->templateVars['record_count'];
     }
     $this->templateVars['records_per_page'] = $this->sess->get('records_per_page');
     $this->templateVars['order_by'] = $this->sess->get('order_by');
     $this->templateVars['order_direction'] = $this->sess->get('order_direction');
     $this->templateVars['header_fields'] = $this->dataRepository->getListOfFields();
 }