diff options
Diffstat (limited to 'classes')
-rw-r--r-- | classes/Notice.php | 4 | ||||
-rw-r--r-- | classes/Reply.php | 14 |
2 files changed, 15 insertions, 3 deletions
diff --git a/classes/Notice.php b/classes/Notice.php index 4cf12fc6f..c4a316888 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -985,8 +985,6 @@ class Notice extends Memcached_DataObject $reply->profile_id = $user->id; $id = $reply->insert(); - - self::blow('reply:stream:%d', $user->id); } } @@ -1052,6 +1050,7 @@ class Notice extends Memcached_DataObject throw new ServerException("Couldn't save reply for {$this->id}, {$mentioned->id}"); } else { $replied[$mentioned->id] = 1; + self::blow('reply:stream:%d', $mentioned->id); } } } @@ -1107,7 +1106,6 @@ class Notice extends Memcached_DataObject foreach ($recipientIds as $recipientId) { $user = User::staticGet('id', $recipientId); if (!empty($user)) { - self::blow('reply:stream:%d', $recipientId); mail_notify_attn($user, $this); } } diff --git a/classes/Reply.php b/classes/Reply.php index 659e04c92..dc6296bda 100644 --- a/classes/Reply.php +++ b/classes/Reply.php @@ -22,6 +22,20 @@ class Reply extends Memcached_DataObject /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE + /** + * Wrapper for record insertion to update related caches + */ + function insert() + { + $result = parent::insert(); + + if ($result) { + self::blow('reply:stream:%d', $this->profile_id); + } + + return $result; + } + function stream($user_id, $offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0) { $ids = Notice::stream(array('Reply', '_streamDirect'), |