summaryrefslogtreecommitdiff
path: root/classes/Message.php
diff options
context:
space:
mode:
authorEvan Prodromou <evan@controlyourself.ca>2008-09-17 13:47:41 -0400
committerEvan Prodromou <evan@controlyourself.ca>2008-09-17 13:47:41 -0400
commit130ba2888643992943780962dd4efcca3c595735 (patch)
treef1aa8a3b4157a6d61d636ae7f3060ed94d159a1c /classes/Message.php
parent7f8aaf46c8279c120c012d2b479e592bfa9611cf (diff)
newmessage and showmessage
darcs-hash:20080917174741-5ed1f-c090055487bab0df52d25ad6550d3850ef5f7661.gz
Diffstat (limited to 'classes/Message.php')
-rw-r--r--classes/Message.php30
1 files changed, 30 insertions, 0 deletions
diff --git a/classes/Message.php b/classes/Message.php
index 93ec419d4..b713737e8 100644
--- a/classes/Message.php
+++ b/classes/Message.php
@@ -34,4 +34,34 @@ class Message extends DB_DataObject
function getTo() {
return Profile::staticGet('id', $this->to_profile);
}
+
+ static function saveNew($from, $to, $content, $source) {
+
+ $msg = new Message();
+
+ $msg->from_profile = $from;
+ $msg->to_profile = $to;
+ $msg->content = $content;
+ $msg->rendered = common_render_text($content);
+ $msg->source = $source;
+
+ $result = $msg->insert();
+
+ if (!$result) {
+ common_log_db_error($msg, 'INSERT', __FILE__);
+ return _('Could not insert message.');
+ }
+
+ $orig = clone($msg);
+ $msg->uri = common_local_url('showmessage', array('message' => $message->id));
+
+ $result = $msg->update($orig);
+
+ if (!$result) {
+ common_log_db_error($msg, 'UPDATE', __FILE__);
+ return _('Could not update message with new URI.');
+ }
+
+ return $msg;
+ }
}