From 46a9cc1a1207a7b017b697288f0d1a9bf6c6c8f6 Mon Sep 17 00:00:00 2001 From: Kousuke Ebihara Date: Tue, 11 May 2010 19:03:58 +0900 Subject: [PATCH] =?UTF-8?q?=E3=81=8A=E6=B0=97=E3=81=AB=E5=85=A5=E3=82=8A?= =?UTF-8?q?=E6=9C=80=E6=96=B0=E6=97=A5=E8=A8=98=E3=81=A7=E3=81=99=E3=81=B9?= =?UTF-8?q?=E3=81=A6=E3=81=AE=E3=83=A1=E3=83=B3=E3=83=90=E3=83=BC=E3=81=AE?= =?UTF-8?q?=E6=97=A5=E8=A8=98=E3=82=92=E5=8F=96=E5=BE=97=E3=81=97=E3=82=88?= =?UTF-8?q?=E3=81=86=E3=81=A8=E3=81=97=E3=81=A6=E3=81=84=E3=81=9F=E3=81=AE?= =?UTF-8?q?=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../favorite/templates/diarySuccess.php | 4 +-- .../doctrine/PluginFavoriteTable.class.php | 32 +++++++++++-------- 2 files changed, 21 insertions(+), 15 deletions(-) diff --git a/apps/pc_frontend/modules/favorite/templates/diarySuccess.php b/apps/pc_frontend/modules/favorite/templates/diarySuccess.php index 019c443..fffc117 100644 --- a/apps/pc_frontend/modules/favorite/templates/diarySuccess.php +++ b/apps/pc_frontend/modules/favorite/templates/diarySuccess.php @@ -4,14 +4,14 @@ getNbResults()): ?>

-

+

getResults() as $diary): ?>
getCreatedAt(), 'XDateTimeJa') ?>
(getMember()->getName() ?>)getHasImages()) : ?> 'photo')) ?>
-

+

$title)) ?> diff --git a/lib/model/doctrine/PluginFavoriteTable.class.php b/lib/model/doctrine/PluginFavoriteTable.class.php index dddc521..fc4be57 100644 --- a/lib/model/doctrine/PluginFavoriteTable.class.php +++ b/lib/model/doctrine/PluginFavoriteTable.class.php @@ -78,10 +78,8 @@ public function retrieveDiaryList($member_id_from, $size = 10) } $q = Doctrine::getTable('Diary')->createQuery() - ->select('Diary.*') - ->leftJoin('Favorite ON Diary.member_id = Favorite.member_id_to') - ->where('Favorite.member_id_from = ?', $member_id_from) - ->orderBy('Diary.created_at DESC') + ->whereIn('member_id', $this->getFavoriteToIds($member_id_from)) + ->orderBy('created_at DESC') ->limit($size); $list = array(); @@ -107,9 +105,7 @@ public function retrieveDiaryPager($member_id_from, $page = 1, $size = 10) } $q = Doctrine::getTable('Diary')->createQuery() - ->select('Diary.*') - ->leftJoin('Favorite ON Diary.member_id = Favorite.member_id_to') - ->where('Favorite.member_id_from = ?', $member_id_from) + ->whereIn('member_id', $this->getFavoriteToIds($member_id_from)) ->orderBy('Diary.created_at DESC'); $pager = new sfDoctrinePager('Diary', $size); @@ -160,6 +156,17 @@ public function getBlogListOfFavorite($member_id_from, $size=20, $limitTitle = f return array(); } + $list = Doctrine::getTable('BlogRssCache')->createQuery() + ->whereIn('member_id', $this->getFavoriteToIds($member_id_from)) + ->orderBy('date DESC') + ->limit($size) + ->execute(); + + return $list; + } + + public function getFavoriteToIds($member_id_from) + { $ids = $this->createQuery() ->select('member_id_to, member_id_from') ->where('member_id_from = ?', $member_id_from) @@ -171,13 +178,12 @@ public function getBlogListOfFavorite($member_id_from, $size=20, $limitTitle = f $memberIds[] = $id[0]; } - $list = Doctrine::getTable('BlogRssCache')->createQuery() - ->whereIn('member_id', $memberIds) - ->orderBy('date DESC') - ->limit($size) - ->execute(); + if (empty($memberIds) && version_compare(OPENPNE_VERSION, '3.5.2-dev', '<')) + { + $memberIds[] = '0'; + } - return $list; + return $memberIds; } public function retrieveByMemberIdFromAndTo($member_id_from, $member_id_to)