diff options
Diffstat (limited to 'actions/all.php')
-rw-r--r-- | actions/all.php | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/actions/all.php b/actions/all.php new file mode 100644 index 000000000..fa1be8c96 --- /dev/null +++ b/actions/all.php @@ -0,0 +1,32 @@ +<?php + +class AllAction extends ShowstreamAction { + + // XXX: push this up to a common function. + + function show_notices($profile) { + + $notice = DB_DataObject::factory('notice'); + + # XXX: chokety and bad + + $notice->whereAdd('EXISTS (SELECT subscribed from subscription where subscriber = {$profile->id})', 'OR'); + $notice->whereAdd('profile_id = {$profile->id}', 'OR'); + + $notice->orderBy('created DESC'); + + $page = $this->arg('page') || 1; + + $notice->limit((($page-1)*NOTICES_PER_PAGE) + 1, NOTICES_PER_PAGE); + + $notice->find(); + + common_start_element('div', 'notices'); + + while ($notice->fetch()) { + $this->show_notice($notice); + } + + common_end_element('div'); + } +} |