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)); }
public function findGroups($kw, $userId, $limit = null) { $groupDao = GROUPS_BOL_GroupDao::getInstance(); $groupUserDao = GROUPS_BOL_GroupUserDao::getInstance(); $params = array('u' => $userId); if (!empty($kw)) { $params["kw"] = "%" . $kw . "%"; } $limitStr = $limit === null ? '' : 'LIMIT 0, ' . intval($limit); $kwWhere = empty($kw) ? "1" : "g.title LIKE :kw"; $query = "SELECT DISTINCT g.* FROM " . $groupDao->getTableName() . " g\n INNER JOIN " . $groupUserDao->getTableName() . " u ON g.id = u.groupId AND u.id != :u\n WHERE g.userId=:u AND {$kwWhere} " . $limitStr; return OW::getDbo()->queryForObjectList($query, $groupDao->getDtoClassName(), $params); }
public function findMyGroupsCount($userId) { $groupUserDao = GROUPS_BOL_GroupUserDao::getInstance(); $query = "SELECT COUNT(g.id) FROM " . $this->getTableName() . " g\n INNER JOIN " . $groupUserDao->getTableName() . " u ON g.id = u.groupId\n WHERE u.userId=:u"; return (int) $this->dbo->queryForColumn($query, array('u' => $userId)); }
/** * Class constructor * */ protected function __construct() { $this->groupDao = GROUPS_BOL_GroupDao::getInstance(); $this->groupUserDao = GROUPS_BOL_GroupUserDao::getInstance(); $this->inviteDao = GROUPS_BOL_InviteDao::getInstance(); }