switch between conversation and stream for public and group

This commit is contained in:
Evan Prodromou 2011-09-23 17:28:54 -04:00
parent dba9d71abd
commit 66c97a1a1e
2 changed files with 26 additions and 4 deletions

View File

@ -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();

View File

@ -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,