Beispiel #1
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));
 }
Beispiel #2
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;
 }
Beispiel #3
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));
 }
 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;
 }
 /**
  * @param $count
  * @param $page
  * @param $itemsPerPage
  * @return \Zend\Paginator\Paginator
  */
 private function getPaginator($count, $page, $itemsPerPage)
 {
     $adapter = new \Zend\Paginator\Adapter\NullFill($count);
     $paginator = new \Zend\Paginator\Paginator($adapter);
     $paginator->setCurrentPageNumber($page);
     $paginator->setItemCountPerPage($itemsPerPage);
     $paginator->setPageRange(10);
     return $paginator;
 }
Beispiel #6
0
 /**
  * FUNCAO QUE EXECUTA UM COMANDO QUALQUER NO BANCO DE DADOS
  * ESTA FUNCAO MASCARA O USO DO ZEND_DB NO SISTEMA
  * @param  string  $sqlQuery
  * @param  boolean $activationPaginator
  * @param  integer $pageNumber
  * @param  integer $limitPerPage
  * @return boolean
  * @throws \Exception
  */
 public function executeSqlQuery($sqlQuery, $activationPaginator = false, $pageNumber = 1, $limitPerPage = 10)
 {
     $sql = new Sql($this->getAdapter($this->varConfigAdapter));
     /*
      * RETIRA CARACTERES INVALIDOS DA QUERY
      */
     $varSqlQuery = trim(str_replace(array("\n", "\r", "\t", "     ", "    ", "   ", "  "), array(" ", " ", " ", " ", " ", " ", " "), $sqlQuery));
     /*
      * VERIFICA SE O TIPO DE COMANDO E UM SELECT
      */
     $typeSelect = (bool) (substr(strtoupper($varSqlQuery), 0, 6) == "SELECT") ? true : false;
     /*
      * VERIFICA SE O COMANDO FOI DEFINIDO
      */
     if (!empty($varSqlQuery)) {
         try {
             $query = $this->getAdapter($this->varConfigAdapter)->query($varSqlQuery);
             /*
              * CASO O DEBUG ESTEJA ATIVO IMPRIME A QUERY (COMANDO) NA TELA
              */
             if (self::$varDebug) {
                 $this->debugQuery($varSqlQuery);
             } elseif (self::$varExplan) {
                 $this->explainQuery($varSqlQuery);
             }
             /*
              * CASO O COMANDO EXECUTADO SEJA DO TIPO SELECT RETORNA UM ARRAY COM O RESULTADO DA CONSULTA
              */
             if ($typeSelect === true) {
                 /**
                  * VERIFICA SE HÁ CACHE GRAVADO E NAO EXPIRADO
                  */
                 $rowSet = $query->execute();
                 if ($activationPaginator) {
                     $retorno = array();
                     $adapter = new \Zend\Paginator\Adapter\Iterator($rowSet, $sql);
                     $paginator = new \Zend\Paginator\Paginator($adapter);
                     $paginator->setItemCountPerPage($limitPerPage);
                     $paginator->setPageRange(5);
                     $paginator->setCurrentPageNumber($pageNumber);
                     $retorno['db'] = \Cityware\Format\Arrays::getObjectToArray($paginator->getCurrentItems());
                     $retorno['page'] = $paginator;
                 } else {
                     $retorno = self::$resultSetPrototype->initialize($rowSet)->toArray();
                 }
                 if (!is_array($retorno) || count($retorno) <= 0) {
                     $retorno = false;
                 }
             } else {
                 $query->execute();
                 $retorno = true;
             }
         } catch (\Zend\Db\Exception $exc) {
             $this->closeConnection();
             $retorno = false;
             throw new \Exception('Nao foi possivel executar o comando SQL no banco de dados!<br /><br />' . $exc->getMessage(), 500);
         }
     } else {
         $this->closeConnection();
         $retorno = false;
         throw new \Exception('O comando SQL nao foi definido corretamente!');
     }
     $this->closeConnection();
     self::freeMemory();
     return $retorno;
 }