summaryrefslogtreecommitdiff
path: root/lib/subs.php
diff options
context:
space:
mode:
authorEvan Prodromou <evan@controlyourself.ca>2009-07-09 17:28:38 -0700
committerEvan Prodromou <evan@controlyourself.ca>2009-07-09 17:28:38 -0700
commit8b65883f9ddf1cb1b7bdec323722da351fa0cb69 (patch)
tree6dcfeb299efe9088a904d4def7c263618380a692 /lib/subs.php
parentefd94b4e5423c72a65cdd6acd252e5d00ec98967 (diff)
cache frequently-used subscriber, subscription, notice and fave count values
Diffstat (limited to 'lib/subs.php')
-rw-r--r--lib/subs.php13
1 files changed, 10 insertions, 3 deletions
diff --git a/lib/subs.php b/lib/subs.php
index 3bd67b39c..e76023752 100644
--- a/lib/subs.php
+++ b/lib/subs.php
@@ -44,7 +44,6 @@ function subs_subscribe_user($user, $other_nickname)
function subs_subscribe_to($user, $other)
{
-
if ($user->isSubscribed($other)) {
return _('Already subscribed!.');
}
@@ -60,12 +59,16 @@ function subs_subscribe_to($user, $other)
subs_notify($other, $user);
- $cache = common_memcache();
+ $cache = common_memcache();
if ($cache) {
$cache->delete(common_cache_key('user:notices_with_friends:' . $user->id));
}
+ $profile = $user->getProfile();
+
+ $profile->blowSubscriptionsCount();
+ $other->blowSubscribersCount();
if ($other->autosubscribe && !$other->isSubscribed($user) && !$user->hasBlocked($other)) {
if (!$other->subscribeTo($user)) {
@@ -117,7 +120,6 @@ function subs_unsubscribe_user($user, $other_nickname)
function subs_unsubscribe_to($user, $other)
{
-
if (!$user->isSubscribed($other))
return _('Not subscribed!.');
@@ -139,6 +141,11 @@ function subs_unsubscribe_to($user, $other)
$cache->delete(common_cache_key('user:notices_with_friends:' . $user->id));
}
+ $profile = $user->getProfile();
+
+ $profile->blowSubscriptionsCount();
+ $other->blowSubscribersCount();
+
return true;
}