Ejemplo n.º 1
1
 public function indexAction()
 {
     $limit = 25;
     $page = $this->params('page', 1);
     $cond = "1 = 1";
     $query_count = $this->em()->createQuery("select count(u) from \\Application\\Entity\\User u where {$cond} order by u.createdAt DESC");
     $query = $this->em()->createQuery("select u from \\Application\\Entity\\User u where {$cond} order by u.createdAt DESC")->setFirstResult($limit * ($page - 1))->setMaxResults($limit);
     // create paginator control (null adapter)
     $count = $query_count->getSingleScalarResult();
     $paginator = new \Zend\Paginator\Paginator(new \Zend\Paginator\Adapter\Null($count));
     $paginator->setItemCountPerPage($limit);
     $paginator->setCurrentPageNumber($page);
     return new ViewModel(["active_tab" => "user", "paginator" => $paginator, "items" => $query->getResult()]);
 }
Ejemplo n.º 2
0
 function viewAction()
 {
     if ($this->params()->fromQuery('page') > 100) {
         throw new \Exception('You cant go past 100 pages for performance reasons');
     }
     if ($this->params('id')) {
         $category = $this->categoryMapper()->load($this->params('id'));
     }
     $page = $this->params()->fromQuery('page', 1);
     $perpage = 6;
     $offset = $page * $perpage - $perpage;
     $attributes = array();
     $allowed_attributes = $this->attributeMapper()->listAttributes();
     foreach ($allowed_attributes as $attribute) {
         if ($this->params()->fromQuery($attribute)) {
             $attributes[$attribute] = $this->params()->fromQuery($attribute);
         }
     }
     $criteria = array('attributes' => $attributes, 'active' => 1);
     if ($this->params('id')) {
         $criteria['category'] = $this->params('id');
     }
     $products = $this->productMapper()->find($criteria, $offset, $perpage);
     $productCount = $this->productMapper()->count($criteria);
     $pageAdapter = new \Zend\Paginator\Adapter\Null($productCount);
     $paginator = new \Zend\Paginator\Paginator($pageAdapter);
     $paginator->setItemCountPerPage($perpage);
     $paginator->setCurrentPageNumber($page);
     if ($offset + $perpage > $productCount) {
         $end = $productCount;
     } else {
         $end = $offset + $perpage;
     }
     return array('category' => $this->params('id') ? $category['name'] : '', 'start' => $offset + 1, 'end' => $end, 'total' => $productCount, 'paginator' => $paginator, 'products' => $products);
 }
Ejemplo n.º 3
0
 public static function createPagination($totalItem, $configPaginator)
 {
     $adapterPaginator = new \Zend\Paginator\Adapter\NullFill($totalItem);
     $paginator = new \Zend\Paginator\Paginator($adapterPaginator);
     $paginator->setItemCountPerPage($configPaginator['itemPerPage'])->setCurrentPageNumber($configPaginator['curentPage'])->setPageRange($configPaginator['pageRange']);
     return $paginator;
 }
Ejemplo n.º 4
0
 /**
  * @extra:Route("/", name="_alf")
  * @extra:Template()
  */
 public function leftMenuAction()
 {
     //        $catalog = new Catalogs();
     //        $catalog->setCategory('1');
     //        $catalog->setName('skarpety wpisane');
     //        $em = $this->get('doctrine.orm.entity_manager');
     //        $em->persist($catalog);
     //        $em->flush();
     //        $menu = $this->get('doctrine.orm.entity_manager')
     //            ->createQuery('SELECT c FROM AlfShopBundle:Catalogs c ORDER BY c.id DESC')
     //            ->getResult()
     //            ;
     //        $menu = array( array('name' => 'A'), array('name' => 'B'),array('name' => 'C'));
     $em = $this->get('doctrine.orm.entity_manager');
     $qb = new QueryBuilder($em);
     $dql = $qb->select('c.name')->from('AlfShopBundle:Catalogs', 'c')->getQuery();
     $menu = $dql->getResult();
     $em = $this->get('doctrine.orm.entity_manager');
     $qb = new QueryBuilder($em);
     $dql = $qb->select('c')->from('AlfShopBundle:Catalogs', 'c');
     $query = $em->createQuery($dql);
     $adapter = $this->get('knplabs_paginator.adapter');
     $adapter->setQuery($query);
     $adapter->setDistinct(true);
     $paginator = new \Zend\Paginator\Paginator($adapter);
     $paginator->setCurrentPageNumber($this->get('request')->query->get('page', 1));
     $paginator->setItemCountPerPage(2);
     $paginator->setPageRange(5);
     //        $menu = $m ->getResult();
     //        $menu = $em->find('AlfShopBundle:Catalogs');
     //        $em->persist($menu);
     //        $em->flush();
     //        $menu = array('A', 'B');
     return $this->render('AlfShopBundle:Shop:leftMenu.html.twig', array('menuList' => $paginator, 'paginator' => $paginator));
 }
 /**
  * @param int $limit
  * @param int $page
  * @param boolean $isArray
  * @param mixed $target
  */
 public function __construct($target, $page = 0, $limit = 0, $isArray = false)
 {
     $this->limit = $limit;
     $this->page = $page;
     // different adapters : Array results or Doctrine query
     $adapter = null;
     if ($isArray) {
         $this->arrayResults = $target;
         $arrayCollection = new \Doctrine\Common\Collections\ArrayCollection($target);
         $adapter = new \DoctrineModule\Paginator\Adapter\Collection($arrayCollection);
     } else {
         $this->doctrineQuery = $target;
         $adapter = new \DoctrineORMModule\Paginator\Adapter\DoctrinePaginator(new \Doctrine\ORM\Tools\Pagination\Paginator($target));
     }
     $paginator = new \Zend\Paginator\Paginator($adapter);
     if (!$limit) {
         $limit = \TmCommon\Config\Config::DEFAULT_PAGE_ITEMS_LIMIT;
     }
     $paginator->setItemCountPerPage($limit);
     if (!$page) {
         $page = 1;
     }
     $paginator->setCurrentPageNumber($page);
     $this->paginator = $paginator;
 }
Ejemplo n.º 6
0
 public static function createPaginator($totalItem, $paginatorParams)
 {
     $adapter = new \Zend\Paginator\Adapter\Null($totalItem);
     $paginator = new \Zend\Paginator\Paginator($adapter);
     $paginator->setCurrentPageNumber($paginatorParams['currentPageNumber']);
     $paginator->setPageRange($paginatorParams['pageRange']);
     $paginator->setItemCountPerPage($paginatorParams['itemCountPerPage']);
     return $paginator;
 }
Ejemplo n.º 7
0
 public function index04Action()
 {
     $this->configPaginator['currentPage'] = $this->params()->fromRoute("page", 1);
     $userTable = $this->getServiceLocator()->get("userTable");
     $totalItem = $userTable->countItem();
     $items = $userTable->listItem($this->configPaginator, array("task" => "list-item-for-paginator"));
     $adapterPaginator = new \Zend\Paginator\Adapter\NullFill($totalItem);
     $paginator = new \Zend\Paginator\Paginator($adapterPaginator);
     $paginator->setItemCountPerPage($this->configPaginator['ItemCountPerPage'])->setCurrentPageNumber($this->configPaginator['currentPage'])->setPageRange($this->configPaginator['PageRange']);
     return array("paginator" => $paginator, "items" => $items);
 }
Ejemplo n.º 8
0
 public function getDocumentPaginator($page_num)
 {
     $hydrator = new ObjectPropertyHydrator();
     $objectPrototype = new Document();
     $resultSet = new \Zend\Db\ResultSet\HydratingResultSet($hydrator, $objectPrototype);
     $query = new \Zend\Db\Sql\Select();
     $query->from('document');
     $adapter = new \Zend\Paginator\Adapter\DbSelect($query, $this->adapter, $resultSet);
     $paginator = new \Zend\Paginator\Paginator($adapter);
     $paginator->setCurrentPageNumber($page_num);
     return $paginator;
 }
Ejemplo n.º 9
0
 /**
  * 显示所有已收集的Email地址
  */
 public function indexAction()
 {
     $hydrator = new \Zend\Stdlib\Hydrator\ObjectProperty();
     $objectPrototype = new \Console\Model\Address();
     $resultSet = new \Zend\Db\ResultSet\HydratingResultSet($hydrator, $objectPrototype);
     $query = new \Zend\Db\Sql\Select();
     $query->from('address');
     $adapter = new \Zend\Paginator\Adapter\DbSelect($query, $this->dbAdapter, $resultSet);
     $paginator = new \Zend\Paginator\Paginator($adapter);
     $paginator->setCurrentPageNumber($this->params()->fromRoute('page'));
     return new ViewModel(array('paginator' => $paginator));
 }
Ejemplo n.º 10
0
 public function indexAction()
 {
     $dm = $this->getDocumentManager();
     $query = $dm->createQueryBuilder('RJCDiakoniaBundle:Song')->getQuery();
     $adapter = $this->get('knplabs_paginator.adapter');
     $adapter->setQuery($query);
     $paginator = new \Zend\Paginator\Paginator($adapter);
     $paginator->setCurrentPageNumber($this->getRequest()->query->get('page', 1));
     $paginator->setItemCountPerPage(20);
     $paginator->setPageRange(5);
     return $this->render('RJCDiakoniaBundle:Song:index.html.twig', array('paginator' => $paginator));
 }
Ejemplo n.º 11
0
 public function getQueue($task_id, $page_num)
 {
     $hydrator = new ObjectPropertyHydrator();
     $objectPrototype = new Queue();
     $resultSet = new \Zend\Db\ResultSet\HydratingResultSet($hydrator, $objectPrototype);
     $query = new \Zend\Db\Sql\Select();
     $query->from('queue')->where(array('task_id' => $task_id));
     $adapter = new \Zend\Paginator\Adapter\DbSelect($query, $this->adapter, $resultSet);
     $paginator = new \Zend\Paginator\Paginator($adapter);
     $paginator->setCurrentPageNumber($page_num);
     $paginator->setDefaultItemCountPerPage(100);
     return $paginator;
 }
Ejemplo n.º 12
0
 public function dados(\Zend\Db\Sql\Select $select)
 {
     if (isset($_POST) && @$_POST["busca"] == "Busca simples" && @$_POST["valor"]) {
         $valor = $_POST["valor"];
         $valor = str_replace(array("*"), "%", $valor);
         $select->where->addPredicate(new \bhcosta90\zend\src\Sql\Where\ILike($_POST["campo"], $valor));
     }
     $adapter = new \Zend\Paginator\Adapter\DbSelect($select, $this->getTableGateway()->getAdapter(), null);
     $paginator = new \Zend\Paginator\Paginator($adapter);
     $paginator->setItemCountPerPage($this->quantidade);
     $paginator->setCurrentPageNumber(isset($_REQUEST["pagina"]) ? $_REQUEST["pagina"] : null);
     return $paginator;
 }
Ejemplo n.º 13
0
 /**
  * Get Paginator
  *
  * @author  Marco Rieger
  *
  * @param QueryBuilder $qb
  * @param bool         $fetchJoinCollection
  *
  * @return \Zend\Paginator\Paginator
  */
 public function getPaginator(AbstractQuery $qb, $seite = 1, $fetchJoinCollection = false)
 {
     $adapter = new \DoctrineORMModule\Paginator\Adapter\DoctrinePaginator(new \Doctrine\ORM\Tools\Pagination\Paginator($qb, $fetchJoinCollection));
     $paginator = new \Zend\Paginator\Paginator($adapter);
     $paginator->setDefaultItemCountPerPage(1);
     $seite = (int) $seite;
     if ($seite <= 1) {
         $paginator->setCurrentPageNumber(1);
     } else {
         $paginator->setCurrentPageNumber($seite);
     }
     return $paginator;
 }
Ejemplo n.º 14
0
 public function indexAction()
 {
     $request = $this->getRequest();
     $users = $this->getEntityManager()->getRepository('Admin\\Entity\\ShopncCustomer')->findAll();
     $paginator = new \Zend\Paginator\Paginator(new \Zend\Paginator\Adapter\ArrayAdapter($users));
     //设置当前页数
     $paginator->setCurrentPageNumber($request->getQuery('page'));
     //设置一页要返回的结果条数
     $paginator->setItemCountPerPage(5);
     $view = new ViewModel();
     $view->setVariable('paginator', $paginator);
     return $view;
 }
Ejemplo n.º 15
0
 /**
  * Fetch items by node
  * http://docs.doctrine-project.org/en/latest/tutorials/pagination.html
  * http://stackoverflow.com/questions/10043588/doctrine-2-pagination-with-association-mapping
  * http://docs.doctrine-project.org/en/latest/reference/query-builder.html
  * @param object $node The node
  * @param array $options Associtive array
  * $options = array(
  *  'page' => $theCurrentPage,
  *  'rowsPerPage' => $theRowsPerPage
  *  'sortField' => $theFieldToSort
  *  'sortDirection' => $theDirectionToSort
  * )
  * @return object \Zend\Paginator
  */
 public function fetchItems($node, $options = array())
 {
     $page = (int) isset($options['page']) ? $options['page'] : 0;
     $maxRows = (int) isset($options['rowsPerPage']) ? $options['rowsPerPage'] : 15;
     $sortField = isset($options['sortField']) ? $options['sortField'] : 'created';
     $sortDirection = isset($options['sortDirection']) ? $options['sortDirection'] : 'DESC';
     $cacheName = $this->cacheName($node->getId() . 'collection' . __FUNCTION__ . $page . $maxRows . $sortField . $sortDirection);
     $query = $this->_em->createQuery("\n\t\t\tSELECT i\n\t\t\t FROM DxBuySell\\Entity\\Item i \n\t\t\t  INNER JOIN i.categories c\n\t\t\t  WHERE c.id = " . $node->getId() . " \n\t\t\t  ORDER By i." . $sortField . " " . $sortDirection);
     $query->useResultCache($this->cacheEnabled, $this->cacheLifetime, $cacheName);
     $paginator = new Paginator($query, $fetchJoinCollection = true);
     $zendPaginator = new \Zend\Paginator\Paginator(new \Zend\Paginator\Adapter\Iterator($paginator->getIterator()));
     $zendPaginator->setItemCountPerPage($maxRows)->setCurrentPageNumber($page);
     return $zendPaginator;
 }
Ejemplo n.º 16
0
 public function indexAction()
 {
     $npcFilter = $this->params()->fromQuery("npcfilter");
     $limit = $this->params()->fromQuery("limit", 50);
     $page = $this->params()->fromQuery("page", 1);
     $killLogMapper = $this->getServiceLocator()->get('DB\\Mapper\\KillLog');
     $result = $killLogMapper->getLog(['limit' => $limit, 'page' => $page, 'npcFilter' => $npcFilter]);
     $npcMapper = $this->getServiceLocator()->get('DB\\Mapper\\NPC');
     $adapter = new \Zend\Paginator\Adapter\NullFill($result['count']);
     $paginator = new \Zend\Paginator\Paginator($adapter);
     $paginator->setCurrentPageNumber($page);
     $paginator->setItemCountPerPage($limit);
     return ['result' => $result['result'], 'paginator' => $paginator, 'parameter' => $this->params()->fromQuery(), 'npcs' => $npcMapper->getEntityRepository()->findAll()];
 }
Ejemplo n.º 17
0
 public function fetch($page)
 {
     $sql = new \Zend\Db\Sql\Sql($this->adapter);
     $select = $sql->select();
     $select->columns(array('id', 'title', 'slug', 'content', 'created'))->from(array('p' => 'news'))->join(array('c' => 'category'), 'c.id = p.category_id', array('category_id' => 'id', 'name', 'category_slug' => 'slug'), $select::JOIN_INNER)->order('p.id DESC');
     $hydrator = new AggregateHydrator();
     $hydrator->add(new PostHydrator());
     $hydrator->add(new CategoryHydrator());
     $resultSet = new HydratingResultSet($hydrator, new Post());
     $paginatorAdapter = new \Zend\Paginator\Adapter\DbSelect($select, $this->adapter, $resultSet);
     $paginator = new \Zend\Paginator\Paginator($paginatorAdapter);
     $paginator->setCurrentPageNumber($page);
     $paginator->setItemCountPerPage(5);
     return $paginator;
 }
Ejemplo n.º 18
0
 public function clientesAction()
 {
     $consulta = $this->params()->fromPost('texto');
     $clientes = $this->getTableClientes()->getCliente();
     $paginator = new \Zend\Paginator\Paginator(new \Zend\Paginator\Adapter\Iterator($clientes));
     $paginator->setCurrentPageNumber((int) $this->params()->fromQuery('page', 1));
     $paginator->setItemCountPerPage(10);
     if ($this->getRequest()->isPost()) {
         $clientes = $this->getTableClientes()->getCliente($consulta);
         $paginator = new \Zend\Paginator\Paginator(new \Zend\Paginator\Adapter\Iterator($clientes));
         $paginator->setCurrentPageNumber((int) $this->params()->fromQuery('page', 1));
         $paginator->setItemCountPerPage(10);
     }
     return new ViewModel(array('clientes' => $paginator));
 }
Ejemplo n.º 19
0
 public function listAction()
 {
     $auth = new AuthenticationService();
     if (!$auth->hasIdentity()) {
         return $this->redirect()->toRoute('home');
     }
     $search = @$_REQUEST['search'];
     $rowset = $this->UsersTable()->select();
     $select = array('rowset' => $rowset, 'action' => $this->params()->fromRoute('action'));
     $select = new \Zend\Paginator\Paginator(new \Zend\Paginator\Adapter\ArrayAdapter($select));
     $select->setCurrentPageNumber($this->params()->fromRoute('page'));
     $select->setItemCountPerPage(2);
     $view = new ViewModel($select);
     return $view;
 }
Ejemplo n.º 20
0
 public function indexAction()
 {
     //$result=$this->forward()->dispatch('CategoryController',array('action'=>'index'));
     //echo '<pre>'; print_r($result); echo '<pre>'; die;
     $auth = new AuthenticationService();
     if (!$auth->hasIdentity()) {
         return $this->redirect()->toRoute('home');
     }
     $productService = $this->getServiceLocator()->get('Application\\Service\\ProductService');
     $search = @$_REQUEST['search'];
     $products = $productService->findAll($search);
     $paginator = new \Zend\Paginator\Paginator(new \Zend\Paginator\Adapter\ArrayAdapter($products));
     $paginator->setCurrentPageNumber($this->params()->fromRoute('page'));
     $paginator->setItemCountPerPage(2);
     return new ViewModel(array('products' => $paginator));
 }
Ejemplo n.º 21
0
 public function indexAction()
 {
     // I) Without pagination
     //		return new ViewModel(array('rowset' => $this->getUsersTable()->select()));
     // II) Pagination
     // 1) ArrayAdapter. You first retireve all result turn them to array and after paginate. Not a very good solution.
     //		$resulySet = $this->getUsersTable()->select();
     //		$paginator = new \Zend\Paginator\Paginator(new \Zend\Paginator\Adapter\ArrayAdapter($resulySet->toArray()));
     // 2) Zend\Paginator\Adapter\DbTableGateway. The best.
     $paginator = new \Zend\Paginator\Paginator(new \Zend\Paginator\Adapter\DbTableGateway($this->getUsersTable()));
     $page = 1;
     if ($this->params()->fromRoute('page')) {
         $page = $this->params()->fromRoute('page');
     }
     $paginator->setCurrentPageNumber((int) $page);
     $paginator->setItemCountPerPage(5);
     return new ViewModel(array('paginator' => $paginator));
 }
 public function pagination($page, $limit, $query = null, $orderBy = null, $sort = 'ASC')
 {
     $select = $this->getSelect();
     if ($orderBy) {
         $select->order($orderBy . ' ' . $sort);
     }
     if (null !== $query) {
         $spec = function ($where) use($query) {
             $where->like('name', '%' . $query . '%')->or->like('description', '%' . $query . '%');
         };
         $select->where($spec);
     }
     $adapter = new \Zend\Paginator\Adapter\DbSelect($select, $this->getSql(), new HydratingResultSet($this->getHydrator(), $this->getEntityPrototype()));
     $paginator = new \Zend\Paginator\Paginator($adapter);
     $paginator->setCurrentPageNumber($page);
     $paginator->setItemCountPerPage($limit);
     return $paginator;
 }
Ejemplo n.º 23
0
 function manageAction()
 {
     $page = $this->params()->fromQuery('page', 1);
     $perpage = 6;
     $offset = $page * $perpage - $perpage;
     $products = $this->productMapper()->find(array(), $offset, $perpage);
     $productCount = $this->productMapper()->count();
     $pageAdapter = new \Zend\Paginator\Adapter\Null($productCount);
     $paginator = new \Zend\Paginator\Paginator($pageAdapter);
     $paginator->setItemCountPerPage($perpage);
     $paginator->setCurrentPageNumber($page);
     if ($offset + $perpage > $productCount) {
         $end = $productCount;
     } else {
         $end = $offset + $perpage;
     }
     return array('start' => $offset + 1, 'end' => $end, 'total' => $productCount, 'paginator' => $paginator, 'products' => $products);
 }
Ejemplo n.º 24
0
 /**
  * Get the list of the active and visible pages 
  * 
  * (non-PHPdoc)
  * @see Zend\Mvc\Controller.AbstractActionController::indexAction()
  */
 public function indexAction()
 {
     $page = $this->params()->fromRoute('page');
     $ItemCountPerPage = $this->cmsSettings->getValueByParameter('Cms', 'postperpage');
     $paginator = null;
     $records = $this->pageService->getActivePages();
     if (!empty($records) && $records->count()) {
         foreach ($records as $record) {
             $data[] = $record;
         }
         $paginator = new \Zend\Paginator\Paginator(new \Zend\Paginator\Adapter\ArrayAdapter($data));
         $paginator->setItemCountPerPage($ItemCountPerPage);
         $paginator->setCurrentPageNumber($page);
     } else {
         $this->flashMessenger()->setNamespace('danger')->addMessage($this->translator->translate('Sorry, there are no news!'));
     }
     $viewModel = new ViewModel(array('paginator' => $paginator));
     return $viewModel;
 }
Ejemplo n.º 25
0
 public function indexAction()
 {
     $filter = $this->filter();
     $page = $this->params()->fromQuery('page', 1);
     $perpage = 10;
     $offset = $page * $perpage - $perpage;
     $vehicles = $this->finder()->findByLevels($filter, false, $perpage, $offset);
     $vehicleCount = count($this->finder()->findByLevels($filter));
     $pageAdapter = new \Zend\Paginator\Adapter\Null($vehicleCount);
     $paginator = new \Zend\Paginator\Paginator($pageAdapter);
     $paginator->setItemCountPerPage($perpage);
     $paginator->setCurrentPageNumber($page);
     if ($offset + $perpage > $vehicleCount) {
         $end = $vehicleCount;
     } else {
         $end = $offset + $perpage;
     }
     return array('vehicles' => $vehicles, 'schema' => $this->schema(), 'start' => $offset + 1, 'end' => $end, 'total' => $vehicleCount, 'paginator' => $paginator);
 }
Ejemplo n.º 26
0
 public function indexAction()
 {
     $filtrar = $this->params()->fromPost('submit');
     $datos = $this->params()->fromPost('texto');
     $estado = $this->params()->fromPost('estado');
     $puntaje = $this->params()->fromPost('puntaje');
     //        var_dump($datos);
     //        var_dump($estado);
     //        var_dump($puntaje);
     //        exit;
     $request = $this->getRequest();
     if ($request->isPost()) {
         $comentarios = $this->getComentariosTable()->buscarComentario($datos, $estado, $puntaje);
     } else {
         $comentarios = $this->getComentariosTable()->fetchAll();
     }
     $paginator = new \Zend\Paginator\Paginator(new \Zend\Paginator\Adapter\Iterator($comentarios));
     $paginator->setCurrentPageNumber((int) $this->params()->fromQuery('page', 1));
     $paginator->setItemCountPerPage(10);
     return array('comentarios' => $paginator, 'puntaje' => $this->puntaje(), 'texto' => $datos);
 }
Ejemplo n.º 27
0
 public function indexAction()
 {
     $auth = new \Zend\Authentication\AuthenticationService();
     if (!$auth->hasIdentity()) {
         return $this->redirect()->toUrl($this->getRequest()->getBaseUrl() . '/usuario/index/login');
     }
     //        $this->layout('layout/layout22');
     //$this->dbAdapter=$this->getServiceLocator()->get('Zend\Db\Adapter');
     //$u=new Ubigeo($this->dbAdapter);
     // var_dump($u->getUbigeo());exit;
     $filtrar = $this->params()->fromPost('submit');
     $id = (int) $this->params()->fromRoute('in_id', 0);
     //       if(!empty($id)){
     //       if(isset($filtrar)){
     //           $consulta=$this->params()->fromPost('texto');
     //               $lista =  $this->getLocalTable()->listar($consulta);
     //           }else{
     //               $lista =  $this->getLocalTable()->listar($id);//$id
     //           }
     //       }else{
     //           if(isset($filtrar)){
     //           $consulta=$this->params()->fromPost('texto');
     //               $lista =  $this->getLocalTable()->listar($consulta);
     //           }else{
     //               $lista =  $this->getLocalTable()->listar();//$id
     //           }
     //
     //       }
     $lista = $this->getLocalTable()->listar($id);
     $request = $this->getRequest();
     if ($request->isPost()) {
         $consulta = $this->params()->fromPost('texto');
         $lista = $this->getLocalTable()->listar($id, $consulta);
     }
     $paginator = new \Zend\Paginator\Paginator(new \Zend\Paginator\Adapter\Iterator($lista));
     $page = (int) $this->params()->fromQuery('page', 1);
     $paginator->setCurrentPageNumber($page);
     $paginator->setItemCountPerPage(10);
     return new ViewModel(array('locales' => $paginator, 'in_id' => $id));
 }
Ejemplo n.º 28
0
 /**
  * 分页方法
  * $dql 查询dql语句
  * $maxlist 每页显示条数
  * $pageNumberOld 当前页数
  * */
 public function fenye($dql, $maxlist, $pageNumberOld)
 {
     $firstResult = 0;
     if ($pageNumberOld == null) {
         $pageNumberOld = 1;
     }
     if ($pageNumberOld == 1) {
         $firstResult = 0;
     } else {
         $pageNumberNew = $pageNumberOld * $maxlist;
         $firstResult = $pageNumberNew - $maxlist;
     }
     $entityManager = $this->getEntityManager();
     $query = $entityManager->createQuery($dql)->setFirstResult($firstResult)->setMaxResults($maxlist);
     $paginator = new Paginator($query, $fetchJoinCollection = true);
     $countNumber = count($paginator);
     $bugs = $query->getArrayResult();
     $paginator = new \Zend\Paginator\Paginator(new \Zend\Paginator\Adapter\null($countNumber));
     $paginator->setCurrentPageNumber($pageNumberOld)->setItemCountPerPage($maxlist);
     $vm = new \Zend\View\Model\ViewModel();
     $vm->setVariables(array('paginator' => $paginator, 'bugs' => $bugs));
     return $vm;
 }
 public function getBlocks($startBlockNumber = null, $endBlockNumber = null)
 {
     /*{{{*/
     $blockList = array();
     $whereSet = false;
     $qb = $this->objectManager->createQueryBuilder();
     $qb->select('b')->from('Blockchain\\Entity\\Block', 'b')->orderBy('b.id', 'DESC')->setMaxResults(20);
     if ($startBlockNumber) {
         $qb->where($qb->expr()->gte('b.blockNumber', $startBlockNumber));
         $whereSet = true;
     }
     if ($endBlockNumber) {
         $expr = $qb->expr()->lte('b.blockNumber', $endBlockNumber);
         if ($whereSet) {
             $qb->andWhere($expr);
         } else {
             $qb->where($expr);
             $whereSet = true;
         }
     }
     $query = $qb->getQuery();
     $doctrinePaginator = new \Doctrine\ORM\Tools\Pagination\Paginator($query);
     // the following line prevents doctrine from loading the entire table into a temp table
     $doctrinePaginator->setUseOutputWalkers(false);
     $doctrinePaginatorAdapter = new \DoctrineORMModule\Paginator\Adapter\DoctrinePaginator($doctrinePaginator);
     $paginator = new \Zend\Paginator\Paginator($doctrinePaginatorAdapter);
     $paginator->setItemCountPerPage(20);
     $paginator->setPageRange(14);
     /*
     if (count($result)) {
         foreach ($result as $blockEntity) {
             $blockList[] = array(
                 'blocknumber' => $blockEntity->getBlockNumber(),
                 'blockhash' => $blockEntity->getBlockhash(),
                 'blockhashTruncated' => substr($blockEntity->getBlockhash(), 0, 25).'...',
                 'time' => $blockEntity->getTime()->format('Y-m-d H:i:s'),
                 'transactionCount' => $blockEntity->getTransactions()->count(),
                 'totalBTC' => self::gmpSatoshisToFloatBTC(gmp_init($blockEntity->getTotalvalue())),
                 'offeredFees' => self::gmpSatoshisToFloatBTC(gmp_init($blockEntity->getOfferedFees())),
                 'takenFees' => self::gmpSatoshisToFloatBTC(gmp_init($blockEntity->getTakenFees())),
                 'size' => $blockEntity->getSize()
             );
         }
     }
     
     return $blockList;
     */
     return $paginator;
 }
Ejemplo n.º 30
0
 /**
  *
  * @param unknown $select        	
  * @return \Zend\Paginator\Paginator
  */
 public function getPaginator($select)
 {
     $Paginator = new \Zend\Paginator\Paginator(new \Zend\Paginator\Adapter\Iterator($select));
     $Paginator->setCurrentPageNumber($this->_current_page);
     $Paginator->setItemCountPerPage($this->_items_per_page);
     return $Paginator;
 }