/**
  * 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;
 }