forked from GNUsocial/gnu-social
trim mail and maildaemon
darcs-hash:20080721042333-84dde-f3331569171b33f16322bd6b2999a21cefb718c0.gz
This commit is contained in:
parent
c2aaa22ffb
commit
184425796b
18
lib/mail.php
18
lib/mail.php
@ -123,7 +123,7 @@ function mail_subscribe_notify($listenee, $listener) {
|
||||
"\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);
|
||||
@ -134,12 +134,12 @@ function mail_new_incoming_notify($user) {
|
||||
|
||||
$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".
|
||||
@ -148,7 +148,7 @@ function mail_new_incoming_notify($user) {
|
||||
$user->incomingemail,
|
||||
common_local_url('doc', array('title' => 'email')),
|
||||
common_config('site', 'name'));
|
||||
|
||||
|
||||
mail_send($user->email, $headers, $body);
|
||||
}
|
||||
|
||||
@ -159,16 +159,16 @@ function mail_new_incoming_address() {
|
||||
}
|
||||
|
||||
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);
|
||||
}
|
||||
@ -192,7 +192,7 @@ function mail_send_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');
|
||||
|
@ -35,10 +35,10 @@ require_once('Mail/mimeDecode.php');
|
||||
# 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) {
|
||||
@ -96,11 +96,11 @@ class MailerDaemon {
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
function handle_command($user, $msg) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
function respond($from, $to, $response) {
|
||||
|
||||
$headers['From'] = $to;
|
||||
@ -109,11 +109,11 @@ class MailerDaemon {
|
||||
|
||||
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;
|
||||
@ -142,12 +142,12 @@ class MailerDaemon {
|
||||
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,
|
||||
@ -157,13 +157,13 @@ class MailerDaemon {
|
||||
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' &&
|
||||
@ -177,17 +177,17 @@ class MailerDaemon {
|
||||
} 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;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user