Esempio n. 1
0
 /**
  * Returns an instance of class (singleton pattern implementation).
  *
  * @return BOL_AvatarDao
  */
 public static function getInstance()
 {
     if (self::$classInstance === null) {
         self::$classInstance = new self();
     }
     return self::$classInstance;
 }
Esempio n. 2
0
 public function findUsers($groupId, $count, $withPhoto = true)
 {
     $userTable = BOL_UserDao::getInstance()->getTableName();
     $avatarJoin = !$withPhoto ? '' : "INNER JOIN `" . BOL_AvatarDao::getInstance()->getTableName() . "` as `a`\n    \t\t\tON( `u`.`id` = `a`.`userId` )";
     $query = "\n            SELECT `u`.* FROM `{$userTable}` AS `u`\n\n            INNER JOIN `" . GROUPS_BOL_GroupUserDao::getInstance()->getTableName() . "` AS `g`\n                    ON( `u`.`id` = `g`.`userId` )\n\n            LEFT JOIN `" . BOL_UserSuspendDao::getInstance()->getTableName() . "` as `s`\n                    ON( `u`.`id` = `s`.`userId` )\n\n            LEFT JOIN `" . BOL_UserApproveDao::getInstance()->getTableName() . "` as `d`\n                    ON( `u`.`id` = `d`.`userId` )\n\n            {$avatarJoin}\n\n            WHERE g.groupId=:g AND `s`.`id` IS NULL AND `d`.`id` IS NULL\n            ORDER BY `u`.`activityStamp` DESC\n            LIMIT :ls, :le";
     return OW::getDbo()->queryForObjectList($query, BOL_UserDao::getInstance()->getDtoClassName(), array('ls' => 0, 'le' => $count, 'g' => $groupId));
 }
Esempio n. 3
0
 /**
  * Checks if user has avatar
  *
  * @param int $userId
  * @return boolean
  */
 public function userHasAvatar($userId)
 {
     $avatar = $this->avatarDao->findByUserId($userId);
     return $avatar != null;
 }
Esempio n. 4
0
 public function findByAccountTypes($count, $accountTypes, $withPhoto = true)
 {
     if (empty($accountTypes)) {
         return array();
     }
     $avatarJoin = !$withPhoto ? '' : "INNER JOIN `" . BOL_AvatarDao::getInstance()->getTableName() . "` as `a`\n    \t\t\tON( `u`.`id` = `a`.`userId` )";
     $query = "\n            SELECT DISTINCT `u`.*\n            FROM `{$this->getTableName()}` AS `u`\n\n    \t\tLEFT JOIN `" . BOL_UserSuspendDao::getInstance()->getTableName() . "` as `s`\n    \t\t\tON( `u`.`id` = `s`.`userId` )\n\n    \t\tLEFT JOIN `" . BOL_UserApproveDao::getInstance()->getTableName() . "` as `d`\n    \t\t\tON( `u`.`id` = `d`.`userId` )\n\n                {$avatarJoin}\n                    \n    \t\tWHERE `s`.`id` IS NULL AND `d`.`id` IS NULL AND `u`.`accountType` IN ( '" . implode("', '", $accountTypes) . "' )\n\n            ORDER BY `u`.`activityStamp` DESC\n            LIMIT ?, ?\n            ";
     return $this->dbo->queryForObjectList($query, $this->getDtoClassName(), array(0, $count));
 }