From 80c6af0ffebbc18d37c13461c0caeba2eebfebda Mon Sep 17 00:00:00 2001 From: Mikael Nordfeldth Date: Thu, 26 Sep 2013 00:47:56 +0200 Subject: [PATCH] Uncaught exception when no subscribers/subscriptions in ProfileList --- classes/Memcached_DataObject.php | 2 +- lib/profileaction.php | 34 ++++++++++++-------------------- 2 files changed, 14 insertions(+), 22 deletions(-) diff --git a/classes/Memcached_DataObject.php b/classes/Memcached_DataObject.php index 888b19a024..d5f1916907 100644 --- a/classes/Memcached_DataObject.php +++ b/classes/Memcached_DataObject.php @@ -335,7 +335,7 @@ class Memcached_DataObject extends Safe_DataObject $pkeyMap[$i->$keyCol][] = $pkeyVal; } } catch (NoResultException $e) { - // no results foudn for our keyVals, so we leave them as empty arrays + // no results found for our keyVals, so we leave them as empty arrays } foreach ($toFetch as $keyVal) { self::cacheSet(sprintf("%s:list-ids:%s:%s", strtolower($cls), $keyCol, $keyVal), diff --git a/lib/profileaction.php b/lib/profileaction.php index 1efa906067..f36f099c71 100644 --- a/lib/profileaction.php +++ b/lib/profileaction.php @@ -125,8 +125,6 @@ class ProfileAction extends Action function showSubscriptions() { - $profile = $this->profile->getSubscribed(0, PROFILES_PER_MINILIST + 1); - $this->elementStart('div', array('id' => 'entity_subscriptions', 'class' => 'section')); if (Event::handle('StartShowSubscriptionsMiniList', array($this))) { @@ -136,16 +134,14 @@ class ProfileAction extends Action $this->text(' '); $this->text($this->profile->subscriptionCount()); $this->elementEnd('h2'); - - $cnt = 0; - - if (!empty($profile)) { + + try { + $profile = $this->profile->getSubscribed(0, PROFILES_PER_MINILIST + 1); $pml = new ProfileMiniList($profile, $this); - $cnt = $pml->show(); - if ($cnt == 0) { - // TRANS: Text for user subscription statistics if the user has no subscriptions. - $this->element('p', null, _('(None)')); - } + $pml->show(); + } catch (NoResultException $e) { + // TRANS: Text for user subscription statistics if the user has no subscription + $this->element('p', null, _('(None)')); } Event::handle('EndShowSubscriptionsMiniList', array($this)); @@ -155,8 +151,6 @@ class ProfileAction extends Action function showSubscribers() { - $profile = $this->profile->getSubscribers(0, PROFILES_PER_MINILIST + 1); - $this->elementStart('div', array('id' => 'entity_subscribers', 'class' => 'section')); @@ -169,15 +163,13 @@ class ProfileAction extends Action $this->text($this->profile->subscriberCount()); $this->elementEnd('h2'); - $cnt = 0; - - if (!empty($profile)) { + try { + $profile = $this->profile->getSubscribers(0, PROFILES_PER_MINILIST + 1); $sml = new SubscribersMiniList($profile, $this); - $cnt = $sml->show(); - if ($cnt == 0) { - // TRANS: Text for user subscriber statistics if user has no subscribers. - $this->element('p', null, _('(None)')); - } + $sml->show(); + } catch (NoResultException $e) { + // TRANS: Text for user subscriber statistics if user has no subscribers. + $this->element('p', null, _('(None)')); } Event::handle('EndShowSubscribersMiniList', array($this));