summaryrefslogtreecommitdiff
path: root/classes/Notice.php
diff options
context:
space:
mode:
authorBrion Vibber <brion@pobox.com>2010-05-27 14:54:43 -0700
committerBrion Vibber <brion@pobox.com>2010-05-27 14:54:43 -0700
commit2f2fa100715f9c09b2b91a2d1afddacf7b7f16db (patch)
tree883a6642614484db322a3b6f17511c2ab5f46376 /classes/Notice.php
parent87b8a89aa7b96e63586bdd3b1afb9d43355fd48b (diff)
parent2b318a3420fe3e979defc7eacfb1eb2d9321d807 (diff)
Merge branch 'master' of gitorious.org:statusnet/mainline into testingtesting
Diffstat (limited to 'classes/Notice.php')
-rw-r--r--classes/Notice.php27
1 files changed, 18 insertions, 9 deletions
diff --git a/classes/Notice.php b/classes/Notice.php
index e173a2469..3d7d21533 100644
--- a/classes/Notice.php
+++ b/classes/Notice.php
@@ -97,15 +97,20 @@ class Notice extends Memcached_DataObject
// For auditing purposes, save a record that the notice
// was deleted.
- $deleted = new Deleted_notice();
+ // @fixme we have some cases where things get re-run and so the
+ // insert fails.
+ $deleted = Deleted_notice::staticGet('id', $this->id);
+ if (!$deleted) {
+ $deleted = new Deleted_notice();
- $deleted->id = $this->id;
- $deleted->profile_id = $this->profile_id;
- $deleted->uri = $this->uri;
- $deleted->created = $this->created;
- $deleted->deleted = common_sql_now();
+ $deleted->id = $this->id;
+ $deleted->profile_id = $this->profile_id;
+ $deleted->uri = $this->uri;
+ $deleted->created = $this->created;
+ $deleted->deleted = common_sql_now();
- $deleted->insert();
+ $deleted->insert();
+ }
// Clear related records
@@ -1235,7 +1240,7 @@ class Notice extends Memcached_DataObject
$noticeInfoAttr = array(
'local_id' => $this->id, // local notice ID (useful to clients for ordering)
- 'source' => $this->source // the client name (source attribution)
+ 'source' => $this->source, // the client name (source attribution)
);
$ns = $this->getSource();
@@ -1246,7 +1251,11 @@ class Notice extends Memcached_DataObject
}
if (!empty($cur)) {
- $noticeInfoAttr['favorited'] = ($cur->hasFave($this)) ? 'true' : 'false';
+ $noticeInfoAttr['favorite'] = ($cur->hasFave($this)) ? "true" : "false";
+ }
+
+ if (!empty($this->repeat_of)) {
+ $noticeInfoAttr['repeat_of'] = $this->repeat_of;
}
$xs->element('statusnet:notice_info', $noticeInfoAttr, null);