/**
  * Advanced filtering for the list
  * @param QueryBuilder The $queryBuilder
  */
 public function filterCallback($queryBuilder)
 {
     $filter = new FilterExtractor($this);
     if ($filter->has("objectType") && $filter->get("objectType") != "") {
         $queryBuilder->andWhere("q.objectType = :objtype");
         $queryBuilder->setParameter("objtype", $filter->get("objectType"));
     }
 }
Exemplo n.º 2
0
 /**
  * 
  * @param unknown $queryBuilder
  */
 public function filterCallback($queryBuilder)
 {
     $filter = new FilterExtractor($this);
     // Apply access restriction filters here
     $user = SessionManager::getInstance()->getCurrentSession()->getUser();
     $queryBuilder->andWhere("(q.target = :sessionuser OR q.owner = :sessionuser)");
     $queryBuilder->setParameter("sessionuser", $user->getId());
     // Apply User filters here
     if ($filter->has("done") && $filter->get("done") != "") {
         $queryBuilder->andWhere("q.done = :done");
         $queryBuilder->setParameter("done", $filter->get("done"));
     }
 }
Exemplo n.º 3
0
 public function filterCallback($queryBuilder)
 {
     $filter = new FilterExtractor($this);
     if ($this->hasParameter("query") && ($query = $this->getParameter("query"))) {
         $queryBuilder->andWhere("LOWER(q.username) LIKE :query");
         $queryBuilder->setParameter("query", $query);
     }
     if ($filter->has("lastSeenMax") && ($lastSeenMax = $filter->get('lastSeenMax'))) {
         $queryBuilder->andWhere("q.lastSeen > :lastSeenMax");
         $queryBuilder->setParameter("lastSeenMax", new \DateTime('- ' . $lastSeenMax . ' seconds'));
     }
     if ($filter->has('hideCurrentUser') && $filter->get('hideCurrentUser') == '1') {
         $queryBuilder->andWhere("q.id != :currentUserId");
         $queryBuilder->setParameter("currentUserId", SessionManager::getCurrentSession()->getUser()->getId());
     }
 }