From 66c97a1a1ee782b364ab68eed27193f3caf34965 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Fri, 23 Sep 2011 17:28:54 -0400 Subject: [PATCH] switch between conversation and stream for public and group --- actions/public.php | 15 +++++++++++++-- actions/showgroup.php | 15 +++++++++++++-- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/actions/public.php b/actions/public.php index 75217cb229..847aba666e 100644 --- a/actions/public.php +++ b/actions/public.php @@ -60,6 +60,7 @@ class PublicAction extends Action var $page = null; var $notice; var $userProfile = null; + var $mode = 'conversation'; function isReadOnly($args) { @@ -88,7 +89,13 @@ class PublicAction extends Action $this->userProfile = Profile::current(); - $stream = new ThreadingPublicNoticeStream($this->userProfile); + $this->mode = $this->trimmed('mode', 'conversation'); + + if ($this->mode == 'stream') { + $stream = new PublicNoticeStream($this->userProfile); + } else { + $stream = new ThreadingPublicNoticeStream($this->userProfile); + } $this->notice = $stream->getNotices(($this->page-1)*NOTICES_PER_PAGE, NOTICES_PER_PAGE + 1); @@ -213,7 +220,11 @@ class PublicAction extends Action */ function showContent() { - $nl = new ThreadedNoticeList($this->notice, $this, $this->userProfile); + if ($this->mode == 'stream') { + $nl = new NoticeList($this->notice, $this); + } else { + $nl = new ThreadedNoticeList($this->notice, $this, $this->userProfile); + } $cnt = $nl->show(); diff --git a/actions/showgroup.php b/actions/showgroup.php index 9d4051bd89..5e1012e9d8 100644 --- a/actions/showgroup.php +++ b/actions/showgroup.php @@ -50,6 +50,7 @@ class ShowgroupAction extends GroupAction var $page = null; var $userProfile = null; var $notice = null; + var $mode = 'conversation'; /** * Is this page read-only? @@ -97,10 +98,15 @@ class ShowgroupAction extends GroupAction $this->page = ($this->arg('page')) ? ($this->arg('page')+0) : 1; + $this->mode = $this->trimmed('mode', 'conversation'); $this->userProfile = Profile::current(); - $stream = new ThreadingGroupNoticeStream($this->group, $this->userProfile); + if ($this->mode == 'stream') { + $stream = new GroupNoticeStream($this->group, $this->userProfile); + } else { + $stream = new ThreadingGroupNoticeStream($this->group, $this->userProfile); + } $this->notice = $stream->getNotices(($this->page-1)*NOTICES_PER_PAGE, NOTICES_PER_PAGE + 1); @@ -140,7 +146,12 @@ class ShowgroupAction extends GroupAction */ function showGroupNotices() { - $nl = new ThreadedNoticeList($this->notice, $this, $this->userProfile); + if ($this->mode == 'stream') { + $nl = new NoticeList($this->notice, $this); + } else { + $nl = new ThreadedNoticeList($this->notice, $this, $this->userProfile); + } + $cnt = $nl->show(); $this->pagination($this->page > 1,