/** * Search keywords for bbses in the title and body */ public function getBbsSearchPager($keywords, $page = 1, $size = 20) { $q = $this->getOrderdQuery(); $this->addSearchKeywordQuery($q, $keywords); $pager = new opNonCountQueryPager('Bbs', $size); $pager->setQuery($q); $pager->setPage($page); return $pager; }
/** * Search keywords for diaries in the title and body */ public function getDiarySearchPager($keywords, $page = 1, $size = 20, $publicFlag = self::PUBLIC_FLAG_SNS) { $q = $this->getOrderdQuery(); $this->addPublicFlagQuery($q, $publicFlag); $this->addSearchKeywordQuery($q, $keywords); $pager = new opNonCountQueryPager('Diary', $size); $pager->setQuery($q); $pager->setPage($page); return $pager; }
public function getFriendListPager($memberId, $page = 1, $size = 20) { $friendMemberIds = $this->getFriendMemberIds($memberId); if (!count($friendMemberIds)) { return null; } $q = Doctrine::getTable('Member')->createQuery()->whereIn('id', $friendMemberIds); $pager = new opNonCountQueryPager('Member', $size); $pager->setQuery($q); $pager->setPage($page); $pager->init(); return $pager; }
/** * Search keywords for diaries in the title and body */ public function getDiarySearchPager($keywords, $page = 1, $size = 20, $publicFlag = self::PUBLIC_FLAG_SNS) { $q = $this->getOrderdQuery(); if ('pc_backend' !== sfConfig::get('sf_app') && Doctrine::getTable('SnsConfig')->get('op_diary_plugin_search_period_enable')) { $lower = date('Y-m-d 00:00:00', strtotime('-' . Doctrine::getTable('SnsConfig')->get('op_diary_plugin_search_period', '30') . ' days')); $q->where('created_at >= ?', $lower); } $this->addPublicFlagQuery($q, $publicFlag); $this->addSearchKeywordQuery($q, $keywords); $pager = new opNonCountQueryPager('Diary', $size); $pager->setQuery($q); $pager->setPage($page); return $pager; }
public function getAshiatoListPager($memberId, $page = 1, $size = 20) { $day_list = array(); $q = $this->createQuery()->select('id, r_date')->where('member_id_to = ?', $memberId)->groupBy('r_date DESC')->limit($size); foreach ($q->execute(array(), Doctrine::HYDRATE_NONE) as $day) { $day_list[] = $day[1]; } $q = $this->createQuery()->select('*')->addSelect('MAX(updated_at) as max_updated_at')->where('member_id_to = ?', $memberId)->andWhereIn('r_date', $day_list)->groupBy('member_id_from')->addGroupBy('r_date')->orderBy('max_updated_at DESC'); $pager = new opNonCountQueryPager('Ashiato', $size); $pager->setQuery($q); $pager->setPage($page); $pager->init(); return $pager; }
public function getCommunityMemberListPager($communityId, $page = 1, $size = 20) { $communityMembers = Doctrine::getTable('CommunityMember')->createQuery()->select('member_id')->where('community_id = ?', $communityId)->andWhere('is_pre = ?', false)->execute(array(), Doctrine::HYDRATE_NONE); $ids = array(); foreach ($communityMembers as $communityMember) { $ids[] = $communityMember[0]; } $pager = new opNonCountQueryPager('Member', $size); if (empty($ids)) { return $pager; } $q = Doctrine::getTable('Member')->createQuery()->whereIn('id', $ids); $pager->setQuery($q); $pager->setPage($page); $pager->init(); return $pager; }