use smsemail stored value

darcs-hash:20080721042302-84dde-b077675affa13a761ba07b4c5ac4ff667cf00eb2.gz
This commit is contained in:
Evan Prodromou 2008-07-21 00:23:02 -04:00
parent a4edf5daef
commit c2aaa22ffb
2 changed files with 16 additions and 2 deletions

View File

@ -159,7 +159,9 @@ function mail_new_incoming_address() {
} }
function mail_broadcast_notice_sms($notice) { function mail_broadcast_notice_sms($notice) {
$user = new User(); $user = new User();
$user->smsnotify = 1; $user->smsnotify = 1;
$user->whereAdd('EXISTS (select subscriber from subscriptions where ' . $user->whereAdd('EXISTS (select subscriber from subscriptions where ' .
' subscriber = user.id and subscribed = ' . $notice->profile_id); ' subscriber = user.id and subscribed = ' . $notice->profile_id);
@ -175,7 +177,7 @@ function mail_broadcast_notice_sms($notice) {
function mail_send_notice($notice, $user) { function mail_send_notice($notice, $user) {
$profile = $user->getProfile(); $profile = $user->getProfile();
$name = $profile->getBestName(); $name = $profile->getBestName();
$to = $name . ' <' . $sms_email . '>'; $to = $name . ' <' . $user->smsemail . '>';
$other = $notice->getProfile(); $other = $notice->getProfile();
$headers = array(); $headers = array();

View File

@ -31,6 +31,9 @@ require_once(INSTALLDIR . '/lib/common.php');
require_once(INSTALLDIR . '/lib/mail.php'); require_once(INSTALLDIR . '/lib/mail.php');
require_once('Mail/mimeDecode.php'); require_once('Mail/mimeDecode.php');
# FIXME: we use both Mail_mimeDecode and mailparse
# Need to move everything to mailparse
class MailerDaemon { class MailerDaemon {
function __construct() { function __construct() {
@ -49,12 +52,16 @@ class MailerDaemon {
} }
if (!$this->user_match_to($user, $to)) { if (!$this->user_match_to($user, $to)) {
$this->error($from, _('Sorry, that is not your incoming email address.')); $this->error($from, _('Sorry, that is not your incoming email address.'));
return false;
} }
if (!$user->emailpost) { if (!$user->emailpost) {
$this->error($from, _('Sorry, no incoming email allowed.'));
return false;
} }
$response = $this->handle_command($user, $msg); $response = $this->handle_command($user, $msg);
if ($response) { if ($response) {
$this->respond($from, $to, $response); $this->respond($from, $to, $response);
return true;
} }
$msg = $this->cleanup_msg($msg); $msg = $this->cleanup_msg($msg);
$this->add_notice($user, $msg); $this->add_notice($user, $msg);
@ -71,7 +78,12 @@ class MailerDaemon {
return NULL; return NULL;
} }
$from = $froms[0]; $from = $froms[0];
return User::staticGet('email', common_canonical_email($from['address'])); $addr = common_canonical_email($from['address']);
$user = User::staticGet('email', $addr);
if (!$user) {
$user = User::staticGet('smsemail', $addr);
}
return $user;
} }
function user_match_to($user, $to_hdr) { function user_match_to($user, $to_hdr) {