From 6b6c966369f180c43a1044eb1f445a367493cda8 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Fri, 14 Nov 2008 02:42:11 -0500 Subject: don't write notice to inbox if user isn't inboxed yet darcs-hash:20081114074211-84dde-77dbee17b2eb5848a0aa012c6ebe352135f5e7c1.gz --- classes/Notice.php | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/classes/Notice.php b/classes/Notice.php index 3a344e9ef..92d4b8832 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -374,14 +374,19 @@ class Notice extends Memcached_DataObject } function addToInboxes() { - - $inbox = new Notice_inbox(); - - $inbox->query('INSERT INTO notice_inbox (user_id, notice_id, created) ' . - 'SELECT user.id, ' . $this->id . ', "' . $this->created . '" ' . - 'FROM user JOIN subscription ON user.id = subscription.subscriber ' . - 'WHERE subscription.subscribed = ' . $this->profile_id); - + $enabled = common_config('inboxes', 'enabled'); + + if ($enabled === true || $enabled === 'transitional') { + $inbox = new Notice_inbox(); + $qry = 'INSERT INTO notice_inbox (user_id, notice_id, created) ' . + 'SELECT user.id, ' . $this->id . ', "' . $this->created . '" ' . + 'FROM user JOIN subscription ON user.id = subscription.subscriber ' . + 'WHERE subscription.subscribed = ' . $this->profile_id; + if ($enabled === 'transitional') { + $qry .= ' AND user.inboxed = 1'; + } + $inbox->query($qry); + } return; } @@ -389,9 +394,13 @@ class Notice extends Memcached_DataObject function blowInboxes() { - $inbox = new Notice_inbox(); - $inbox->notice_id = $this->id; - $inbox->delete(); + $enabled = common_config('inboxes', 'enabled'); + + if ($enabled === true || $enabled === 'transitional') { + $inbox = new Notice_inbox(); + $inbox->notice_id = $this->id; + $inbox->delete(); + } return; } -- cgit v1.2.3-54-g00ecf