/** * Show edit history of an object * Required REQUEST parameters are: * objectId - int * objectClass - base64_encoded fully qualified class name * * @param Request $request * @return \HealthCareAbroad\AdminBundle\Controller\Response * @author Allejo Chris G. Velarde */ public function showEditHistoryAction(Request $request) { $objectId = $request->get('objectId', null); $objectClass = $request->get('objectClass', null); if ($objectId === null || $objectClass === null) { return new Response("objectId and objectClass are required parameters", 400); } $objectClass = \base64_decode($objectClass); if (!\class_exists($objectClass)) { throw $this->createNotFoundException("Cannot view history of invalid class {$objectClass}"); } $this->userService = $this->get('services.twig_user'); $this->historyService = $this->get('services.log.entity_version'); $filters = array('objectId' => $objectId, 'objectClass' => $objectClass); $qb = $this->getDoctrine()->getRepository('LogBundle:VersionEntry')->getQueryBuilderForFindAll($filters); $adapter = new DoctrineOrmAdapter($qb, Query::HYDRATE_ARRAY); $pager = new Pager($adapter); $pager->setLimit(50); $pager->setPage($request->get('page', 1)); foreach ($pager->getResults() as $versionEntry) { $entries[] = $this->buildViewDataOfVersionEntry($versionEntry); } $response = $this->render('AdminBundle:EntityHistory:editHistory.html.twig', array('entries' => $entries, 'pager' => $pager, 'objectId' => $objectId, 'objectClass' => $objectClass)); return $response; }
public function indexAction(Request $request) { $searchTerm = \trim($request->get('q', '')); $page = $request->get('page', 1); $qb = $this->getDoctrine()->getEntityManager()->createQueryBuilder()->select('a, b')->from('TermBundle:Term', 'a')->innerJoin('a.termDocuments', 'b')->orderBy('a.name'); if ('' != $searchTerm) { $qb->where('a.name LIKE :searchQuery')->setParameter('searchQuery', '%' . $searchTerm . '%'); } $pager = new Pager(new DoctrineOrmAdapter($qb)); $pager->setLimit('25'); $pager->setPage($page); $data = array('pager' => $pager); return $this->render('AdminBundle:Terms:index.html.twig', $data); }
public function testIsNotPaginable() { $this->pager->setLimit(100); $this->assertEquals(false, $this->pager->isPaginable()); }