diff options
-rw-r--r-- | classes/Channel.php | 16 | ||||
-rw-r--r-- | classes/Command.php | 2 |
2 files changed, 17 insertions, 1 deletions
diff --git a/classes/Channel.php b/classes/Channel.php index ee0e57c89..a0dc71538 100644 --- a/classes/Channel.php +++ b/classes/Channel.php @@ -36,12 +36,20 @@ class Channel { function error($user, $text) { return false; } + + function source() { + return NULL; + } } class XMPPChannel extends Channel { var $conn = NULL; + function source() { + return 'xmpp'; + } + function __construct($conn) { $this->conn = $conn; } @@ -85,6 +93,10 @@ class XMPPChannel extends Channel { class WebChannel extends Channel { + function source() { + return 'web'; + } + function on($user) { return false; } @@ -110,6 +122,10 @@ class WebChannel extends Channel { class MailChannel extends Channel { var $addr = NULL; + + function source() { + return 'mail'; + } function __construct($addr=NULL) { $this->addr = $addr; diff --git a/classes/Command.php b/classes/Command.php index e049ff8ce..3a64e2fda 100644 --- a/classes/Command.php +++ b/classes/Command.php @@ -202,7 +202,7 @@ class MessageCommand extends Command { $channel->error($this->user, _('Don\'t send a message to yourself; just say it to yourself quietly instead.')); return; } - $message = Message::saveNew($this->user->id, $other->id, $body, 'xmpp'); + $message = Message::saveNew($this->user->id, $other->id, $this->text, $channel->source()); if ($message) { $channel->output($this->user, sprintf(_('Direct message to %s sent'), $this->other)); } else { |