diff options
Diffstat (limited to 'lib/profileaction.php')
-rw-r--r-- | lib/profileaction.php | 47 |
1 files changed, 21 insertions, 26 deletions
diff --git a/lib/profileaction.php b/lib/profileaction.php index 1f2e30994..9e9c79c78 100644 --- a/lib/profileaction.php +++ b/lib/profileaction.php @@ -47,18 +47,18 @@ require_once INSTALLDIR.'/lib/groupminilist.php'; * @link http://laconi.ca/ */ -class ProfileAction extends Action +class ProfileAction extends OwnerDesignAction { - var $user = null; - var $page = null; + var $page = null; var $profile = null; + var $tag = null; function prepare($args) { parent::prepare($args); $nickname_arg = $this->arg('nickname'); - $nickname = common_canonical_nickname($nickname_arg); + $nickname = common_canonical_nickname($nickname_arg); // Permanent redirect on non-canonical nickname @@ -85,10 +85,9 @@ class ProfileAction extends Action return false; } + $this->tag = $this->trimmed('tag'); $this->page = ($this->arg('page')) ? ($this->arg('page')+0) : 1; - common_set_returnto($this->selfUrl()); - return true; } @@ -109,8 +108,10 @@ class ProfileAction extends Action $this->element('h2', null, _('Subscriptions')); - if ($profile) { - $pml = new ProfileMiniList($profile, $this->user, $this); + $cnt = 0; + + if (!empty($profile)) { + $pml = new ProfileMiniList($profile, $this); $cnt = $pml->show(); if ($cnt == 0) { $this->element('p', null, _('(None)')); @@ -138,8 +139,10 @@ class ProfileAction extends Action $this->element('h2', null, _('Subscribers')); - if ($profile) { - $pml = new ProfileMiniList($profile, $this->user, $this); + $cnt = 0; + + if (!empty($profile)) { + $pml = new ProfileMiniList($profile, $this); $cnt = $pml->show(); if ($cnt == 0) { $this->element('p', null, _('(None)')); @@ -160,18 +163,9 @@ class ProfileAction extends Action function showStatistics() { - // XXX: WORM cache this - $subs = new Subscription(); - $subs->subscriber = $this->profile->id; - $subs_count = (int) $subs->count() - 1; - - $subbed = new Subscription(); - $subbed->subscribed = $this->profile->id; - $subbed_count = (int) $subbed->count() - 1; - - $notices = new Notice(); - $notices->profile_id = $this->profile->id; - $notice_count = (int) $notices->count(); + $subs_count = $this->profile->subscriptionCount(); + $subbed_count = $this->profile->subscriberCount(); + $notice_count = $this->profile->noticeCount(); $this->elementStart('div', array('id' => 'entity_statistics', 'class' => 'section')); @@ -196,7 +190,7 @@ class ProfileAction extends Action array('nickname' => $this->profile->nickname))), _('Subscriptions')); $this->elementEnd('dt'); - $this->element('dd', null, (is_int($subs_count)) ? $subs_count : '0'); + $this->element('dd', null, $subs_count); $this->elementEnd('dl'); $this->elementStart('dl', 'entity_subscribers'); @@ -205,12 +199,12 @@ class ProfileAction extends Action array('nickname' => $this->profile->nickname))), _('Subscribers')); $this->elementEnd('dt'); - $this->element('dd', 'subscribers', (is_int($subbed_count)) ? $subbed_count : '0'); + $this->element('dd', 'subscribers', $subbed_count); $this->elementEnd('dl'); $this->elementStart('dl', 'entity_notices'); $this->element('dt', null, _('Notices')); - $this->element('dd', null, (is_int($notice_count)) ? $notice_count : '0'); + $this->element('dd', null, $notice_count); $this->elementEnd('dl'); $this->elementEnd('div'); @@ -244,4 +238,5 @@ class ProfileAction extends Action $this->elementEnd('div'); } -}
\ No newline at end of file +} + |