Example #1
0
 /**
  * Get user list count
  *
  * @param UsersFilter $filter
  * @param integer $cacheMinutes
  * @return integer
  */
 public function getUsersListCount(UsersFilter $filter = null, $cacheMinutes = 0, $cacheTag = null)
 {
     if ($filter === null) {
         $filter = new UsersFilter();
     }
     $filter->setSelectCount();
     $sqlQuery = $filter->getSQL();
     $this->query->exec($sqlQuery, $cacheMinutes, $cacheTag);
     return $this->query->fetchField('cnt');
 }
 /**
  * Get user list
  *
  * @param UsersFilter $filter
  * @param MysqlPager $pager
  * @return array[User]
  */
 public function getUsersList(UsersFilter $filter = null, MysqlPager $pager = null, $cacheMinutes = 0)
 {
     $users = array();
     if ($filter == null) {
         $filter = new UsersFilter();
     }
     $sqlQuery = $filter->getSQL();
     if ($pager !== null) {
         $this->query = $pager->executePagedSQL($sqlQuery, $cacheMinutes);
     } else {
         $this->query->exec($sqlQuery, $cacheMinutes);
     }
     if ($this->query->countRecords()) {
         foreach ($this->query->fetchFields('id') as $user_id) {
             array_push($users, $this->getObjectById($user_id, $cacheMinutes));
         }
     }
     return $users;
 }