"\t".'%3$s'."\n\n".
'Faithfully yours,'."\n".'%4$s.'."\n"),
$long_name,
- common_config('site', 'name'),
+ common_config('site', 'name'),
$other->profileurl,
common_config('site', 'name'));
mail_send($recipients, $headers, $body);
$profile = $user->getProfile();
$name = $profile->getBestName();
-
+
$headers['From'] = $user->incomingemail;
$headers['To'] = $name . ' <' . $user->email . '>';
$headers['Subject'] = sprintf(_('New email address for posting to %s'),
common_config('site', 'name'));
-
+
$body = sprintf(_("You have a new posting address on %1\$s.\n\n".
"Send email to %2\$s to post new messages.\n\n".
"More email instructions at %3\$s.\n\n".
$user->incomingemail,
common_local_url('doc', array('title' => 'email')),
common_config('site', 'name'));
-
+
mail_send($user->email, $headers, $body);
}
}
function mail_broadcast_notice_sms($notice) {
-
+
$user = new User();
-
+
$user->smsnotify = 1;
$user->whereAdd('EXISTS (select subscriber from subscriptions where ' .
' subscriber = user.id and subscribed = ' . $notice->profile_id);
$user->whereAdd('sms is not null');
-
+
$cnt = $user->find();
-
+
while ($user->fetch()) {
mail_send_sms_notice($notice, $user);
}
function mail_confirm_sms($code, $nickname, $address) {
$recipients = $address;
-
+
$headers['From'] = mail_notify_from();
$headers['To'] = $nickname . ' <' . $address . '>';
$headers['Subject'] = _('SMS confirmation');
# Need to move everything to mailparse
class MailerDaemon {
-
+
function __construct() {
}
-
+
function handle_message($fname='php://stdin') {
list($from, $to, $msg) = $this->parse_message($fname);
if (!$from || !$to || !$msg) {
}
return false;
}
-
+
function handle_command($user, $msg) {
return false;
}
-
+
function respond($from, $to, $response) {
$headers['From'] = $to;
return mail_send(array($from), $headers, $response);
}
-
+
function log($level, $msg) {
common_log($level, 'MailDaemon: '.$msg);
}
-
+
function add_notice($user, $msg) {
$notice = new Notice();
$notice->profile_id = $user->id;
return;
}
$notice->query('COMMIT');
- common_save_replies($notice);
+ common_save_replies($notice);
common_real_broadcast($notice);
$this->log(LOG_INFO,
'Added notice ' . $notice->id . ' from user ' . $user->nickname);
}
-
+
function parse_message($fname) {
$contents = file_get_contents($fname);
$parsed = Mail_mimeDecode::decode(array('input' => $contents,
if (!$parsed) {
return NULL;
}
-
+
$from = $parsed->headers['from'];
-
+
$to = $parsed->headers['to'];
$type = $parsed->ctype_primary . '/' . $parsed->ctype_secondary;
-
+
if ($parsed->ctype_primary == 'multitype') {
foreach ($parsed->parts as $part) {
if ($part->ctype_primary == 'text' &&
} else {
$this->unsupported_type($type);
}
-
+
return array($from, $to, $msg);
}
-
+
function unsupported_type($type) {
$this->error(NULL, "Unsupported message type: " . $type);
}
-
+
function cleanup_msg($msg) {
# XXX: signatures
- # XXX: quoting
+ # XXX: quoting
preg_replace('/\s+/', ' ', $msg);
return $msg;
}