| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | hunk ./lib/mail.php 2 | 
					
						
							| 
									
										
										
										
											2008-12-20 19:39:55 -05:00
										 |  |  | -/* | 
					
						
							| 
									
										
										
										
											2008-12-22 12:32:49 -05:00
										 |  |  | - * Laconica - a distributed open-source microblogging tool | 
					
						
							|  |  |  | - * Copyright (C) 2008, Controlez-Vous, Inc. | 
					
						
							| 
									
										
										
										
											2008-12-20 19:39:55 -05:00
										 |  |  | +/** | 
					
						
							| 
									
										
										
										
											2008-12-22 12:32:49 -05:00
										 |  |  | + * Laconica, the distributed open-source microblogging tool | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | hunk ./lib/mail.php 5 | 
					
						
							| 
									
										
										
										
											2008-12-22 12:32:49 -05:00
										 |  |  | - * This program is free software: you can redistribute it and/or modify | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | + * utilities for sending email | 
					
						
							| 
									
										
										
										
											2008-12-22 12:32:49 -05:00
										 |  |  | + * | 
					
						
							|  |  |  | + * PHP version 5 | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * LICENCE: This program is free software: you can redistribute it and/or modify | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | hunk ./lib/mail.php 21 | 
					
						
							| 
									
										
										
										
											2008-12-22 14:30:29 -05:00
										 |  |  | + * | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | + * @category  Mail | 
					
						
							| 
									
										
										
										
											2008-12-22 14:50:41 -05:00
										 |  |  | + * @package   Laconica | 
					
						
							|  |  |  | + * @author    Evan Prodromou <evan@controlyourself.ca> | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | + * @author    Zach Copley <zach@controlyourself.ca> | 
					
						
							|  |  |  | + * @author    Robin Millette <millette@controlyourself.ca> | 
					
						
							|  |  |  | + * @author    Sarven Capadisli <csarven@controlyourself.ca> | 
					
						
							| 
									
										
										
										
											2008-12-22 14:50:41 -05:00
										 |  |  | + * @copyright 2008 Control Yourself, Inc. | 
					
						
							|  |  |  | + * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 | 
					
						
							|  |  |  | + * @link      http://laconi.ca/ | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | hunk ./lib/mail.php 33 | 
					
						
							|  |  |  | -if (!defined('LACONICA')) { exit(1); } | 
					
						
							| 
									
										
										
										
											2008-12-20 19:39:55 -05:00
										 |  |  | +if (!defined('LACONICA')) { | 
					
						
							|  |  |  | +    exit(1); | 
					
						
							|  |  |  | +} | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | hunk ./lib/mail.php 37 | 
					
						
							|  |  |  | -require_once('Mail.php'); | 
					
						
							|  |  |  | +require_once 'Mail.php'; | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | + | 
					
						
							| 
									
										
										
										
											2008-12-22 12:32:49 -05:00
										 |  |  | +/** | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | + * return the configured mail backend | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * Uses the $config array to make a mail backend. Cached so it is safe to call | 
					
						
							|  |  |  | + * more than once. | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return Mail backend | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | hunk ./lib/mail.php 48 | 
					
						
							|  |  |  | -function mail_backend() { | 
					
						
							|  |  |  | -	static $backend = NULL; | 
					
						
							|  |  |  | +function mail_backend() | 
					
						
							| 
									
										
										
										
											2008-12-22 12:32:49 -05:00
										 |  |  | +{ | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +    static $backend = null; | 
					
						
							|  |  |  | hunk ./lib/mail.php 52 | 
					
						
							|  |  |  | -	if (!$backend) { | 
					
						
							|  |  |  | -		global $config; | 
					
						
							|  |  |  | -		$backend = Mail::factory($config['mail']['backend'], | 
					
						
							|  |  |  | -								 ($config['mail']['params']) ? $config['mail']['params'] : array()); | 
					
						
							|  |  |  | -		if (PEAR::isError($backend)) { | 
					
						
							|  |  |  | -			common_server_error($backend->getMessage(), 500); | 
					
						
							|  |  |  | -		} | 
					
						
							|  |  |  | -	} | 
					
						
							|  |  |  | -	return $backend; | 
					
						
							|  |  |  | +    if (!$backend) { | 
					
						
							|  |  |  | +        global $config; | 
					
						
							|  |  |  | +        $backend = Mail::factory($config['mail']['backend'], | 
					
						
							|  |  |  | +                                 ($config['mail']['params']) ? | 
					
						
							|  |  |  | +                                 $config['mail']['params'] : | 
					
						
							|  |  |  | +                                 array()); | 
					
						
							|  |  |  | +        if (PEAR::isError($backend)) { | 
					
						
							|  |  |  | +            common_server_error($backend->getMessage(), 500); | 
					
						
							| 
									
										
										
										
											2008-12-22 14:50:41 -05:00
										 |  |  | +        } | 
					
						
							| 
									
										
										
										
											2008-12-20 19:58:37 -05:00
										 |  |  | +    } | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +    return $backend; | 
					
						
							|  |  |  | hunk ./lib/mail.php 65 | 
					
						
							|  |  |  | -# XXX: use Mail_Queue... maybe | 
					
						
							|  |  |  | +/** | 
					
						
							|  |  |  | + * send an email to one or more recipients | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @param array  $recipients array of strings with email addresses of recipients | 
					
						
							|  |  |  | + * @param array  $headers    array mapping strings to strings for email headers | 
					
						
							|  |  |  | + * @param string $body       body of the email | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return boolean success flag | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | hunk ./lib/mail.php 75 | 
					
						
							|  |  |  | -function mail_send($recipients, $headers, $body) { | 
					
						
							|  |  |  | -	$backend = mail_backend(); | 
					
						
							|  |  |  | +function mail_send($recipients, $headers, $body) | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | +    // XXX: use Mail_Queue... maybe | 
					
						
							|  |  |  | +    $backend = mail_backend(); | 
					
						
							|  |  |  | hunk ./lib/mail.php 82 | 
					
						
							|  |  |  | -	assert($backend); # throws an error if it's bad | 
					
						
							|  |  |  | -	$sent = $backend->send($recipients, $headers, $body); | 
					
						
							|  |  |  | -	if (PEAR::isError($sent)) { | 
					
						
							|  |  |  | -		common_log(LOG_ERR, 'Email error: ' . $sent->getMessage()); | 
					
						
							|  |  |  | -		return false; | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | -	} | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | -	return true; | 
					
						
							|  |  |  | +    assert($backend); // throws an error if it's bad | 
					
						
							|  |  |  | +    $sent = $backend->send($recipients, $headers, $body); | 
					
						
							|  |  |  | +    if (PEAR::isError($sent)) { | 
					
						
							|  |  |  | +        common_log(LOG_ERR, 'Email error: ' . $sent->getMessage()); | 
					
						
							|  |  |  | +        return false; | 
					
						
							|  |  |  | +    } | 
					
						
							|  |  |  | +    return true; | 
					
						
							|  |  |  | hunk ./lib/mail.php 91 | 
					
						
							|  |  |  | -function mail_domain() { | 
					
						
							|  |  |  | -	$maildomain = common_config('mail', 'domain'); | 
					
						
							|  |  |  | -	if (!$maildomain) { | 
					
						
							|  |  |  | -		$maildomain = common_config('site', 'server'); | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | -	} | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | -	return $maildomain; | 
					
						
							|  |  |  | -} | 
					
						
							|  |  |  | +/** | 
					
						
							|  |  |  | + * returns the configured mail domain | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * Defaults to the server name. | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return string mail domain, suitable for making email addresses. | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | hunk ./lib/mail.php 99 | 
					
						
							|  |  |  | -function mail_notify_from() { | 
					
						
							|  |  |  | -	$notifyfrom = common_config('mail', 'notifyfrom'); | 
					
						
							|  |  |  | -	if (!$notifyfrom) { | 
					
						
							|  |  |  | -		$domain = mail_domain(); | 
					
						
							|  |  |  | -		$notifyfrom = common_config('site', 'name') .' <noreply@'.$domain.'>'; | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | -	} | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | -	return $notifyfrom; | 
					
						
							|  |  |  | +function mail_domain() | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | +    $maildomain = common_config('mail', 'domain'); | 
					
						
							|  |  |  | +    if (!$maildomain) { | 
					
						
							|  |  |  | +        $maildomain = common_config('site', 'server'); | 
					
						
							|  |  |  | +    } | 
					
						
							|  |  |  | +    return $maildomain; | 
					
						
							|  |  |  | hunk ./lib/mail.php 108 | 
					
						
							|  |  |  | -function mail_to_user(&$user, $subject, $body, $address=NULL) { | 
					
						
							|  |  |  | -	if (!$address) { | 
					
						
							|  |  |  | -		$address = $user->email; | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | -	} | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +/** | 
					
						
							|  |  |  | + * returns a good address for sending email from this server | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * Uses either the configured value or a faked-up value made | 
					
						
							|  |  |  | + * from the mail domain. | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return string notify from address | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | hunk ./lib/mail.php 117 | 
					
						
							|  |  |  | -	$recipients = $address; | 
					
						
							|  |  |  | -	$profile = $user->getProfile(); | 
					
						
							|  |  |  | +function mail_notify_from() | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | +    $notifyfrom = common_config('mail', 'notifyfrom'); | 
					
						
							|  |  |  | hunk ./lib/mail.php 121 | 
					
						
							|  |  |  | -	$headers['From'] = mail_notify_from(); | 
					
						
							|  |  |  | -	$headers['To'] = $profile->getBestName() . ' <' . $address . '>'; | 
					
						
							|  |  |  | -	$headers['Subject'] = $subject; | 
					
						
							|  |  |  | +    if (!$notifyfrom) { | 
					
						
							|  |  |  | hunk ./lib/mail.php 123 | 
					
						
							|  |  |  | -	return mail_send($recipients, $headers, $body); | 
					
						
							|  |  |  | +        $domain = mail_domain(); | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +        $notifyfrom = common_config('site', 'name') .' <noreply@'.$domain.'>'; | 
					
						
							| 
									
										
										
										
											2008-12-22 14:50:41 -05:00
										 |  |  | +    } | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | + | 
					
						
							|  |  |  | +    return $notifyfrom; | 
					
						
							|  |  |  | hunk ./lib/mail.php 131 | 
					
						
							|  |  |  | -# For confirming a Jabber address | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | +/** | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | + * sends email to a user | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | + * | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | + * @param User   &$user   user to send email to | 
					
						
							|  |  |  | + * @param string $subject subject of the email | 
					
						
							|  |  |  | + * @param string $body    body of the email | 
					
						
							|  |  |  | + * @param string $address optional specification of email address | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | + * | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | + * @return boolean success flag | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +function mail_to_user(&$user, $subject, $body, $address=null) | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | +    if (!$address) { | 
					
						
							|  |  |  | +        $address = $user->email; | 
					
						
							|  |  |  | +    } | 
					
						
							|  |  |  | hunk ./lib/mail.php 148 | 
					
						
							|  |  |  | -function mail_confirm_address($user, $code, $nickname, $address) { | 
					
						
							|  |  |  | +    $recipients = $address; | 
					
						
							|  |  |  | +    $profile    = $user->getProfile(); | 
					
						
							|  |  |  | hunk ./lib/mail.php 151 | 
					
						
							|  |  |  | -	$subject = _('Email address confirmation'); | 
					
						
							|  |  |  | +    $headers['From']    = mail_notify_from(); | 
					
						
							|  |  |  | +    $headers['To']      = $profile->getBestName() . ' <' . $address . '>'; | 
					
						
							|  |  |  | +    $headers['Subject'] = $subject; | 
					
						
							|  |  |  | hunk ./lib/mail.php 155 | 
					
						
							|  |  |  | -    $body = sprintf(_("Hey, %s.\n\nSomeone just entered this email address on %s.\n\n" . | 
					
						
							|  |  |  | -        "If it was you, and you want to confirm your entry, use the URL below:\n\n\t%s\n\n" . | 
					
						
							|  |  |  | -        "If not, just ignore this message.\n\nThanks for your time, \n%s\n") | 
					
						
							|  |  |  | -        , $nickname, common_config('site', 'name') | 
					
						
							|  |  |  | -        , common_local_url('confirmaddress', array('code' => $code)), common_config('site', 'name')); | 
					
						
							|  |  |  | -     return mail_to_user($user, $subject, $body, $address); | 
					
						
							|  |  |  | +    return mail_send($recipients, $headers, $body); | 
					
						
							|  |  |  | hunk ./lib/mail.php 158 | 
					
						
							|  |  |  | -function mail_subscribe_notify($listenee, $listener) { | 
					
						
							|  |  |  | -	$other = $listener->getProfile(); | 
					
						
							|  |  |  | -	mail_subscribe_notify_profile($listenee, $other); | 
					
						
							|  |  |  | +/** | 
					
						
							|  |  |  | + * Send an email to confirm a user's control of an email address | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | + * | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | + * @param User   $user     User claiming the email address | 
					
						
							|  |  |  | + * @param string $code     Confirmation code | 
					
						
							|  |  |  | + * @param string $nickname Nickname of user | 
					
						
							|  |  |  | + * @param string $address  email address to confirm | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @see common_confirmation_code() | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return success flag | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | + */ | 
					
						
							| 
									
										
										
										
											2008-12-22 12:32:49 -05:00
										 |  |  | + | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +function mail_confirm_address($user, $code, $nickname, $address) | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | +    $subject = _('Email address confirmation'); | 
					
						
							| 
									
										
										
										
											2008-12-22 14:50:41 -05:00
										 |  |  | + | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +    $body = sprintf(_("Hey, %s.\n\n". | 
					
						
							|  |  |  | +                      "Someone just entered this email address on %s.\n\n" . | 
					
						
							|  |  |  | +                      "If it was you, and you want to confirm your entry, ". | 
					
						
							|  |  |  | +                      "use the URL below:\n\n\t%s\n\n" . | 
					
						
							|  |  |  | +                      "If not, just ignore this message.\n\n". | 
					
						
							|  |  |  | +                      "Thanks for your time, \n%s\n"), | 
					
						
							|  |  |  | +                    $nickname, common_config('site', 'name'), | 
					
						
							|  |  |  | +                    common_local_url('confirmaddress', array('code' => $code)), | 
					
						
							|  |  |  | +                    common_config('site', 'name')); | 
					
						
							|  |  |  | +    return mail_to_user($user, $subject, $body, $address); | 
					
						
							|  |  |  | hunk ./lib/mail.php 187 | 
					
						
							|  |  |  | -function mail_subscribe_notify_profile($listenee, $other) { | 
					
						
							|  |  |  | -	if ($listenee->email && $listenee->emailnotifysub) { | 
					
						
							|  |  |  | -        // use the recipients localization | 
					
						
							|  |  |  | +/** | 
					
						
							|  |  |  | + * notify a user of subscription by another user | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * This is just a wrapper around the profile-based version. | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @param User $listenee user who is being subscribed to | 
					
						
							|  |  |  | + * @param User $listener user who is subscribing | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @see mail_subscribe_notify_profile() | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return void | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +function mail_subscribe_notify($listenee, $listener) | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | +    $other = $listener->getProfile(); | 
					
						
							|  |  |  | +    mail_subscribe_notify_profile($listenee, $other); | 
					
						
							|  |  |  | +} | 
					
						
							| 
									
										
										
										
											2008-12-22 12:32:49 -05:00
										 |  |  | + | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | +/** | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | + * notify a user of subscription by a profile (remote or local) | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * This function checks to see if the listenee has an email | 
					
						
							|  |  |  | + * address and wants subscription notices. | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @param User    $listenee user who's being subscribed to | 
					
						
							|  |  |  | + * @param Profile $other    profile of person who's listening | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return void | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +function mail_subscribe_notify_profile($listenee, $other) | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | +{ | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +    if ($listenee->email && $listenee->emailnotifysub) { | 
					
						
							| 
									
										
										
										
											2008-12-22 12:32:49 -05:00
										 |  |  | + | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +        // use the recipient's localization | 
					
						
							|  |  |  | hunk ./lib/mail.php 224 | 
					
						
							|  |  |  | -		$profile = $listenee->getProfile(); | 
					
						
							|  |  |  | -		$name = $profile->getBestName(); | 
					
						
							|  |  |  | -		$long_name = ($other->fullname) ? ($other->fullname . ' (' . $other->nickname . ')') : $other->nickname; | 
					
						
							|  |  |  | -		$recipients = $listenee->email; | 
					
						
							|  |  |  | -		$headers['From'] = mail_notify_from(); | 
					
						
							|  |  |  | -		$headers['To'] = $name . ' <' . $listenee->email . '>'; | 
					
						
							|  |  |  | -		$headers['Subject'] = sprintf(_('%1$s is now listening to your notices on %2$s.'), | 
					
						
							| 
									
										
										
										
											2008-12-22 14:50:41 -05:00
										 |  |  | + | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +        $profile = $listenee->getProfile(); | 
					
						
							| 
									
										
										
										
											2008-12-22 14:50:41 -05:00
										 |  |  | + | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +        $name = $profile->getBestName(); | 
					
						
							| 
									
										
										
										
											2008-12-22 14:50:41 -05:00
										 |  |  | + | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +        $long_name = ($other->fullname) ? | 
					
						
							|  |  |  | +          ($other->fullname . ' (' . $other->nickname . ')') : $other->nickname; | 
					
						
							| 
									
										
										
										
											2008-12-22 14:50:41 -05:00
										 |  |  | + | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +        $recipients = $listenee->email; | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | + | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +        $headers['From']    = mail_notify_from(); | 
					
						
							|  |  |  | +        $headers['To']      = $name . ' <' . $listenee->email . '>'; | 
					
						
							|  |  |  | +        $headers['Subject'] = sprintf(_('%1$s is now listening to '. | 
					
						
							|  |  |  | +                                        'your notices on %2$s.'), | 
					
						
							|  |  |  | hunk ./lib/mail.php 239 | 
					
						
							|  |  |  | -									  common_config('site', 'name')); | 
					
						
							|  |  |  | -		$body  = sprintf(_('%1$s is now listening to your notices on %2$s.'."\n\n". | 
					
						
							|  |  |  | -						   "\t".'%3$s'."\n\n". | 
					
						
							|  |  |  | -						   '%4$s'. | 
					
						
							|  |  |  | -                           '%5$s'. | 
					
						
							|  |  |  | -                           '%6$s'. | 
					
						
							|  |  |  | -						   "\n".'Faithfully yours,'."\n".'%7$s.'."\n\n". | 
					
						
							|  |  |  | -                           "----\n". | 
					
						
							|  |  |  | -                           "Change your email address or notification options at %8$s"), | 
					
						
							|  |  |  | -                         $long_name, | 
					
						
							|  |  |  | -                         common_config('site', 'name'), | 
					
						
							|  |  |  | -                         $other->profileurl, | 
					
						
							|  |  |  | -                         ($other->location) ? sprintf(_("Location: %s\n"), $other->location) : '', | 
					
						
							|  |  |  | -                         ($other->homepage) ? sprintf(_("Homepage: %s\n"), $other->homepage) : '', | 
					
						
							|  |  |  | -                         ($other->bio) ? sprintf(_("Bio: %s\n\n"), $other->bio) : '', | 
					
						
							|  |  |  | -                         common_config('site', 'name'), | 
					
						
							|  |  |  | -                         common_local_url('emailsettings')); | 
					
						
							|  |  |  | +                                      common_config('site', 'name')); | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +        $body = sprintf(_('%1$s is now listening to your notices on %2$s.'."\n\n". | 
					
						
							|  |  |  | +                          "\t".'%3$s'."\n\n". | 
					
						
							|  |  |  | +                          '%4$s'. | 
					
						
							|  |  |  | +                          '%5$s'. | 
					
						
							|  |  |  | +                          '%6$s'. | 
					
						
							|  |  |  | +                          "\n".'Faithfully yours,'."\n".'%7$s.'."\n\n". | 
					
						
							|  |  |  | +                          "----\n". | 
					
						
							|  |  |  | +                          "Change your email address or ". | 
					
						
							|  |  |  | +                          "notification options at %8$s\n"), | 
					
						
							|  |  |  | +                        $long_name, | 
					
						
							|  |  |  | +                        common_config('site', 'name'), | 
					
						
							|  |  |  | +                        $other->profileurl, | 
					
						
							|  |  |  | +                        ($other->location) ? | 
					
						
							|  |  |  | +                        sprintf(_("Location: %s\n"), $other->location) : '', | 
					
						
							|  |  |  | +                        ($other->homepage) ? | 
					
						
							|  |  |  | +                        sprintf(_("Homepage: %s\n"), $other->homepage) : '', | 
					
						
							|  |  |  | +                        ($other->bio) ? | 
					
						
							|  |  |  | +                        sprintf(_("Bio: %s\n\n"), $other->bio) : '', | 
					
						
							|  |  |  | +                        common_config('site', 'name'), | 
					
						
							|  |  |  | +                        common_local_url('emailsettings')); | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | hunk ./lib/mail.php 264 | 
					
						
							|  |  |  | -		mail_send($recipients, $headers, $body); | 
					
						
							|  |  |  | -	} | 
					
						
							|  |  |  | +        mail_send($recipients, $headers, $body); | 
					
						
							| 
									
										
										
										
											2008-12-22 14:50:41 -05:00
										 |  |  | +    } | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | hunk ./lib/mail.php 268 | 
					
						
							|  |  |  | -function mail_new_incoming_notify($user) { | 
					
						
							|  |  |  | +/** | 
					
						
							|  |  |  | + * notify a user of their new incoming email address | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * User's email and incoming fields should already be updated. | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @param User $user user with the new address | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return void | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +function mail_new_incoming_notify($user) | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | +    $profile = $user->getProfile(); | 
					
						
							|  |  |  | hunk ./lib/mail.php 282 | 
					
						
							|  |  |  | -	$profile = $user->getProfile(); | 
					
						
							|  |  |  | -	$name = $profile->getBestName(); | 
					
						
							|  |  |  | +    $name = $profile->getBestName(); | 
					
						
							|  |  |  | hunk ./lib/mail.php 284 | 
					
						
							|  |  |  | -	$headers['From'] = $user->incomingemail; | 
					
						
							|  |  |  | -	$headers['To'] = $name . ' <' . $user->email . '>'; | 
					
						
							|  |  |  | -	$headers['Subject'] = sprintf(_('New email address for posting to %s'), | 
					
						
							|  |  |  | -								  common_config('site', 'name')); | 
					
						
							|  |  |  | +    $headers['From']    = $user->incomingemail; | 
					
						
							|  |  |  | +    $headers['To']      = $name . ' <' . $user->email . '>'; | 
					
						
							|  |  |  | +    $headers['Subject'] = sprintf(_('New email address for posting to %s'), | 
					
						
							|  |  |  | +                                  common_config('site', 'name')); | 
					
						
							|  |  |  | hunk ./lib/mail.php 289 | 
					
						
							|  |  |  | -	$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". | 
					
						
							|  |  |  | -					   "Faithfully yours,\n%4\$s"), | 
					
						
							|  |  |  | -					 common_config('site', 'name'), | 
					
						
							|  |  |  | -					 $user->incomingemail, | 
					
						
							|  |  |  | -					 common_local_url('doc', array('title' => 'email')), | 
					
						
							|  |  |  | -					 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". | 
					
						
							|  |  |  | +                      "Faithfully yours,\n%4\$s"), | 
					
						
							|  |  |  | +                    common_config('site', 'name'), | 
					
						
							|  |  |  | +                    $user->incomingemail, | 
					
						
							|  |  |  | +                    common_local_url('doc', array('title' => 'email')), | 
					
						
							|  |  |  | +                    common_config('site', 'name')); | 
					
						
							|  |  |  | hunk ./lib/mail.php 298 | 
					
						
							|  |  |  | -	mail_send($user->email, $headers, $body); | 
					
						
							|  |  |  | +    mail_send($user->email, $headers, $body); | 
					
						
							|  |  |  | hunk ./lib/mail.php 301 | 
					
						
							|  |  |  | -function mail_new_incoming_address() { | 
					
						
							|  |  |  | -	$prefix = common_confirmation_code(64); | 
					
						
							|  |  |  | -	$suffix = mail_domain(); | 
					
						
							|  |  |  | -	return $prefix . '@' . $suffix; | 
					
						
							|  |  |  | +/** | 
					
						
							|  |  |  | + * generate a new address for incoming messages | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @todo check the database for uniqueness | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return string new email address for incoming messages | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +function mail_new_incoming_address() | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | +    $prefix = common_confirmation_code(64); | 
					
						
							|  |  |  | +    $suffix = mail_domain(); | 
					
						
							|  |  |  | +    return $prefix . '@' . $suffix; | 
					
						
							|  |  |  | hunk ./lib/mail.php 316 | 
					
						
							|  |  |  | -function mail_broadcast_notice_sms($notice) { | 
					
						
							|  |  |  | +/** | 
					
						
							|  |  |  | + * broadcast a notice to all subscribers with SMS notification on | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * This function sends SMS messages to all users who have sms addresses; | 
					
						
							|  |  |  | + * have sms notification on; and have sms enabled for this particular | 
					
						
							|  |  |  | + * subscription. | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @param Notice $notice The notice to broadcast | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return success flag | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | hunk ./lib/mail.php 328 | 
					
						
							|  |  |  | -    # Now, get users subscribed to this profile | 
					
						
							|  |  |  | +function mail_broadcast_notice_sms($notice) | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | +    // Now, get users subscribed to this profile | 
					
						
							|  |  |  | hunk ./lib/mail.php 332 | 
					
						
							|  |  |  | -	$user = new User(); | 
					
						
							|  |  |  | +    $user = new User(); | 
					
						
							|  |  |  | hunk ./lib/mail.php 334 | 
					
						
							|  |  |  | -	$user->query('SELECT nickname, smsemail, incomingemail ' . | 
					
						
							|  |  |  | -				 'FROM user JOIN subscription ' . | 
					
						
							|  |  |  | -				 'ON user.id = subscription.subscriber ' . | 
					
						
							|  |  |  | -				 'WHERE subscription.subscribed = ' . $notice->profile_id . ' ' . | 
					
						
							|  |  |  | -				 'AND user.smsemail IS NOT NULL ' . | 
					
						
							|  |  |  | -				 'AND user.smsnotify = 1 ' . | 
					
						
							|  |  |  | +    $user->query('SELECT nickname, smsemail, incomingemail ' . | 
					
						
							|  |  |  | +                 'FROM user JOIN subscription ' . | 
					
						
							|  |  |  | +                 'ON user.id = subscription.subscriber ' . | 
					
						
							|  |  |  | +                 'WHERE subscription.subscribed = ' . $notice->profile_id . ' ' . | 
					
						
							|  |  |  | +                 'AND user.smsemail IS NOT null ' . | 
					
						
							|  |  |  | +                 'AND user.smsnotify = 1 ' . | 
					
						
							|  |  |  | hunk ./lib/mail.php 342 | 
					
						
							|  |  |  | -	while ($user->fetch()) { | 
					
						
							|  |  |  | -		common_log(LOG_INFO, | 
					
						
							|  |  |  | -				   'Sending notice ' . $notice->id . ' to ' . $user->smsemail, | 
					
						
							|  |  |  | -				   __FILE__); | 
					
						
							|  |  |  | -		$success = mail_send_sms_notice_address($notice, $user->smsemail, $user->incomingemail); | 
					
						
							|  |  |  | -		if (!$success) { | 
					
						
							|  |  |  | -			# XXX: Not sure, but I think that's the right thing to do | 
					
						
							|  |  |  | -			common_log(LOG_WARNING, | 
					
						
							|  |  |  | -					   'Sending notice ' . $notice->id . ' to ' . $user->smsemail . ' FAILED, cancelling.', | 
					
						
							|  |  |  | -					   __FILE__); | 
					
						
							|  |  |  | -			return false; | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | -		} | 
					
						
							| 
									
										
										
										
											2008-12-22 14:50:41 -05:00
										 |  |  | -	} | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +    while ($user->fetch()) { | 
					
						
							|  |  |  | +        common_log(LOG_INFO, | 
					
						
							|  |  |  | +                   'Sending notice ' . $notice->id . ' to ' . $user->smsemail, | 
					
						
							|  |  |  | +                   __FILE__); | 
					
						
							|  |  |  | +        $success = mail_send_sms_notice_address($notice, | 
					
						
							|  |  |  | +                                                $user->smsemail, | 
					
						
							|  |  |  | +                                                $user->incomingemail); | 
					
						
							|  |  |  | +        if (!$success) { | 
					
						
							|  |  |  | +            // XXX: Not sure, but I think that's the right thing to do | 
					
						
							|  |  |  | +            common_log(LOG_WARNING, | 
					
						
							|  |  |  | +                       'Sending notice ' . $notice->id . ' to ' . | 
					
						
							|  |  |  | +                       $user->smsemail . ' FAILED, cancelling.', | 
					
						
							|  |  |  | +                       __FILE__); | 
					
						
							|  |  |  | +            return false; | 
					
						
							|  |  |  | +        } | 
					
						
							|  |  |  | +    } | 
					
						
							|  |  |  | hunk ./lib/mail.php 359 | 
					
						
							|  |  |  | -	$user->free(); | 
					
						
							|  |  |  | -	unset($user); | 
					
						
							|  |  |  | +    $user->free(); | 
					
						
							|  |  |  | +    unset($user); | 
					
						
							|  |  |  | hunk ./lib/mail.php 362 | 
					
						
							|  |  |  | -	return true; | 
					
						
							|  |  |  | +    return true; | 
					
						
							|  |  |  | hunk ./lib/mail.php 365 | 
					
						
							|  |  |  | -function mail_send_sms_notice($notice, $user) { | 
					
						
							|  |  |  | -	return mail_send_sms_notice_address($notice, $user->smsemail, $user->incomingemail); | 
					
						
							|  |  |  | +/** | 
					
						
							|  |  |  | + * send a notice to a user via SMS | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * A convenience wrapper around mail_send_sms_notice_address() | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @param Notice $notice notice to send | 
					
						
							|  |  |  | + * @param User   $user   user to receive notice | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @see mail_send_sms_notice_address() | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return boolean success flag | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +function mail_send_sms_notice($notice, $user) | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | +    return mail_send_sms_notice_address($notice, | 
					
						
							|  |  |  | +                                        $user->smsemail, | 
					
						
							|  |  |  | +                                        $user->incomingemail); | 
					
						
							|  |  |  | hunk ./lib/mail.php 385 | 
					
						
							|  |  |  | -function mail_send_sms_notice_address($notice, $smsemail, $incomingemail) { | 
					
						
							|  |  |  | +/** | 
					
						
							|  |  |  | + * send a notice to an SMS email address from a given address | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * We use the user's incoming email address as the "From" address to make | 
					
						
							|  |  |  | + * replying to notices easier. | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @param Notice $notice        notice to send | 
					
						
							|  |  |  | + * @param string $smsemail      email address to send to | 
					
						
							|  |  |  | + * @param string $incomingemail email address to set as 'from' | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return boolean success flag | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +function mail_send_sms_notice_address($notice, $smsemail, $incomingemail) | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | +    $to = $nickname . ' <' . $smsemail . '>'; | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +    $other = $notice->getProfile(); | 
					
						
							|  |  |  | hunk ./lib/mail.php 404 | 
					
						
							|  |  |  | -	$to = $nickname . ' <' . $smsemail . '>'; | 
					
						
							|  |  |  | -	$other = $notice->getProfile(); | 
					
						
							|  |  |  | +    common_log(LOG_INFO, 'Sending notice ' . $notice->id . | 
					
						
							|  |  |  | +               ' to ' . $smsemail, __FILE__); | 
					
						
							|  |  |  | hunk ./lib/mail.php 407 | 
					
						
							|  |  |  | -	common_log(LOG_INFO, "Sending notice " . $notice->id . " to " . $smsemail, __FILE__); | 
					
						
							|  |  |  | +    $headers = array(); | 
					
						
							|  |  |  | hunk ./lib/mail.php 409 | 
					
						
							|  |  |  | -	$headers = array(); | 
					
						
							|  |  |  | -	$headers['From'] = (isset($incomingemail)) ? $incomingemail : mail_notify_from(); | 
					
						
							|  |  |  | -	$headers['To'] = $to; | 
					
						
							|  |  |  | -	$headers['Subject'] = sprintf(_('%s status'), | 
					
						
							|  |  |  | -								  $other->getBestName()); | 
					
						
							|  |  |  | -	$body = $notice->content; | 
					
						
							|  |  |  | +    $headers['From']    = ($incomingemail) ? $incomingemail : mail_notify_from(); | 
					
						
							|  |  |  | +    $headers['To']      = $to; | 
					
						
							|  |  |  | +    $headers['Subject'] = sprintf(_('%s status'), | 
					
						
							|  |  |  | +                                  $other->getBestName()); | 
					
						
							|  |  |  | hunk ./lib/mail.php 414 | 
					
						
							|  |  |  | -	return mail_send($smsemail, $headers, $body); | 
					
						
							|  |  |  | +    $body = $notice->content; | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +    return mail_send($smsemail, $headers, $body); | 
					
						
							|  |  |  | hunk ./lib/mail.php 419 | 
					
						
							|  |  |  | -function mail_confirm_sms($code, $nickname, $address) { | 
					
						
							|  |  |  | +/** | 
					
						
							|  |  |  | + * send a message to confirm a claim for an SMS number | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @param string $code     confirmation code | 
					
						
							|  |  |  | + * @param string $nickname nickname of user claiming number | 
					
						
							|  |  |  | + * @param string $address  email address to send the confirmation to | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @see common_confirmation_code() | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return void | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +function mail_confirm_sms($code, $nickname, $address) | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | +    $recipients = $address; | 
					
						
							|  |  |  | hunk ./lib/mail.php 435 | 
					
						
							|  |  |  | -	$recipients = $address; | 
					
						
							|  |  |  | +    $headers['From']    = mail_notify_from(); | 
					
						
							|  |  |  | +    $headers['To']      = $nickname . ' <' . $address . '>'; | 
					
						
							|  |  |  | +    $headers['Subject'] = _('SMS confirmation'); | 
					
						
							|  |  |  | hunk ./lib/mail.php 439 | 
					
						
							|  |  |  | -	$headers['From'] = mail_notify_from(); | 
					
						
							|  |  |  | -	$headers['To'] = $nickname . ' <' . $address . '>'; | 
					
						
							|  |  |  | -	$headers['Subject'] = _('SMS confirmation'); | 
					
						
							|  |  |  | +    // FIXME: I18N | 
					
						
							|  |  |  | hunk ./lib/mail.php 441 | 
					
						
							|  |  |  | -	$body = "$nickname: confirm you own this phone number with this code:"; | 
					
						
							|  |  |  | -	$body .= "\n\n"; | 
					
						
							|  |  |  | -	$body .= $code; | 
					
						
							|  |  |  | -	$body .= "\n\n"; | 
					
						
							|  |  |  | +    $body  = "$nickname: confirm you own this phone number with this code:"; | 
					
						
							|  |  |  | +    $body .= "\n\n"; | 
					
						
							|  |  |  | +    $body .= $code; | 
					
						
							|  |  |  | +    $body .= "\n\n"; | 
					
						
							|  |  |  | hunk ./lib/mail.php 446 | 
					
						
							|  |  |  | -	mail_send($recipients, $headers, $body); | 
					
						
							|  |  |  | +    mail_send($recipients, $headers, $body); | 
					
						
							|  |  |  | hunk ./lib/mail.php 449 | 
					
						
							|  |  |  | -function mail_notify_nudge($from, $to) { | 
					
						
							|  |  |  | +/** | 
					
						
							|  |  |  | + * send a mail message to notify a user of a 'nudge' | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @param User $from user nudging | 
					
						
							|  |  |  | + * @param User $to   user being nudged | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return boolean success flag | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +function mail_notify_nudge($from, $to) | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | hunk ./lib/mail.php 461 | 
					
						
							|  |  |  | -	$subject = sprintf(_('You\'ve been nudged by %s'), $from->nickname); | 
					
						
							|  |  |  | +    $subject = sprintf(_('You\'ve been nudged by %s'), $from->nickname); | 
					
						
							|  |  |  | hunk ./lib/mail.php 463 | 
					
						
							|  |  |  | -	$from_profile = $from->getProfile(); | 
					
						
							|  |  |  | +    $from_profile = $from->getProfile(); | 
					
						
							|  |  |  | hunk ./lib/mail.php 465 | 
					
						
							|  |  |  | -	$body = sprintf(_("%1\$s (%2\$s) is wondering what you are up to these days and is inviting you to post some news.\n\n". | 
					
						
							|  |  |  | -					  "So let's hear from you :)\n\n". | 
					
						
							|  |  |  | -					  "%3\$s\n\n". | 
					
						
							|  |  |  | -					  "Don't reply to this email; it won't get to them.\n\n". | 
					
						
							|  |  |  | -					  "With kind regards,\n". | 
					
						
							|  |  |  | -					  "%4\$s\n"), | 
					
						
							|  |  |  | -					$from_profile->getBestName(), | 
					
						
							|  |  |  | -					$from->nickname, | 
					
						
							|  |  |  | -					common_local_url('all', array('nickname' => $to->nickname)), | 
					
						
							|  |  |  | -					common_config('site', 'name')); | 
					
						
							|  |  |  | +    $body = sprintf(_("%1\$s (%2\$s) is wondering what you are up to ". | 
					
						
							|  |  |  | +                      "these days and is inviting you to post some news.\n\n". | 
					
						
							|  |  |  | +                      "So let's hear from you :)\n\n". | 
					
						
							|  |  |  | +                      "%3\$s\n\n". | 
					
						
							|  |  |  | +                      "Don't reply to this email; it won't get to them.\n\n". | 
					
						
							|  |  |  | +                      "With kind regards,\n". | 
					
						
							|  |  |  | +                      "%4\$s\n"), | 
					
						
							|  |  |  | +                    $from_profile->getBestName(), | 
					
						
							|  |  |  | +                    $from->nickname, | 
					
						
							|  |  |  | +                    common_local_url('all', array('nickname' => $to->nickname)), | 
					
						
							|  |  |  | +                    common_config('site', 'name')); | 
					
						
							|  |  |  | hunk ./lib/mail.php 477 | 
					
						
							|  |  |  | -	return mail_to_user($to, $subject, $body); | 
					
						
							|  |  |  | +    return mail_to_user($to, $subject, $body); | 
					
						
							|  |  |  | hunk ./lib/mail.php 480 | 
					
						
							|  |  |  | -function mail_notify_message($message, $from=NULL, $to=NULL) { | 
					
						
							|  |  |  | +/** | 
					
						
							|  |  |  | + * send a message to notify a user of a direct message (DM) | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * This function checks to see if the recipient wants notification | 
					
						
							|  |  |  | + * of DMs and has a configured email address. | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @param Message $message message to notify about | 
					
						
							|  |  |  | + * @param User    $from    user sending message; default to sender | 
					
						
							|  |  |  | + * @param User    $to      user receiving message; default to recipient | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return boolean success code | 
					
						
							|  |  |  | + */ | 
					
						
							|  |  |  | hunk ./lib/mail.php 493 | 
					
						
							|  |  |  | -	if (is_null($from)) { | 
					
						
							|  |  |  | -		$from = User::staticGet('id', $message->from_profile); | 
					
						
							| 
									
										
										
										
											2008-12-22 14:50:41 -05:00
										 |  |  | -	} | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +function mail_notify_message($message, $from=null, $to=null) | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | +    if (is_null($from)) { | 
					
						
							|  |  |  | +        $from = User::staticGet('id', $message->from_profile); | 
					
						
							|  |  |  | +    } | 
					
						
							|  |  |  | hunk ./lib/mail.php 499 | 
					
						
							|  |  |  | -	if (is_null($to)) { | 
					
						
							|  |  |  | -		$to = User::staticGet('id', $message->to_profile); | 
					
						
							| 
									
										
										
										
											2008-12-22 14:50:41 -05:00
										 |  |  | -	} | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +    if (is_null($to)) { | 
					
						
							|  |  |  | +        $to = User::staticGet('id', $message->to_profile); | 
					
						
							|  |  |  | +    } | 
					
						
							|  |  |  | hunk ./lib/mail.php 503 | 
					
						
							|  |  |  | -	if (is_null($to->email) || !$to->emailnotifymsg) { | 
					
						
							|  |  |  | -		return true; | 
					
						
							| 
									
										
										
										
											2008-12-22 14:50:41 -05:00
										 |  |  | -	} | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +    if (is_null($to->email) || !$to->emailnotifymsg) { | 
					
						
							|  |  |  | +        return true; | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | +    } | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | hunk ./lib/mail.php 508 | 
					
						
							|  |  |  | -	$subject = sprintf(_('New private message from %s'), $from->nickname); | 
					
						
							|  |  |  | +    $subject = sprintf(_('New private message from %s'), $from->nickname); | 
					
						
							|  |  |  | hunk ./lib/mail.php 510 | 
					
						
							|  |  |  | -	$from_profile = $from->getProfile(); | 
					
						
							|  |  |  | +    $from_profile = $from->getProfile(); | 
					
						
							|  |  |  | hunk ./lib/mail.php 512 | 
					
						
							|  |  |  | -	$body = sprintf(_("%1\$s (%2\$s) sent you a private message:\n\n". | 
					
						
							|  |  |  | -					  "------------------------------------------------------\n". | 
					
						
							|  |  |  | -					  "%3\$s\n". | 
					
						
							|  |  |  | -					  "------------------------------------------------------\n\n". | 
					
						
							|  |  |  | -					  "You can reply to their message here:\n\n". | 
					
						
							|  |  |  | -					  "%4\$s\n\n". | 
					
						
							|  |  |  | -					  "Don't reply to this email; it won't get to them.\n\n". | 
					
						
							|  |  |  | -					  "With kind regards,\n". | 
					
						
							|  |  |  | -					  "%5\$s\n"), | 
					
						
							|  |  |  | -					$from_profile->getBestName(), | 
					
						
							|  |  |  | -					$from->nickname, | 
					
						
							|  |  |  | -					$message->content, | 
					
						
							|  |  |  | -					common_local_url('newmessage', array('to' => $from->id)), | 
					
						
							|  |  |  | -					common_config('site', 'name')); | 
					
						
							|  |  |  | +    $body = sprintf(_("%1\$s (%2\$s) sent you a private message:\n\n". | 
					
						
							|  |  |  | +                      "------------------------------------------------------\n". | 
					
						
							|  |  |  | +                      "%3\$s\n". | 
					
						
							|  |  |  | +                      "------------------------------------------------------\n\n". | 
					
						
							|  |  |  | +                      "You can reply to their message here:\n\n". | 
					
						
							|  |  |  | +                      "%4\$s\n\n". | 
					
						
							|  |  |  | +                      "Don't reply to this email; it won't get to them.\n\n". | 
					
						
							|  |  |  | +                      "With kind regards,\n". | 
					
						
							|  |  |  | +                      "%5\$s\n"), | 
					
						
							|  |  |  | +                    $from_profile->getBestName(), | 
					
						
							|  |  |  | +                    $from->nickname, | 
					
						
							|  |  |  | +                    $message->content, | 
					
						
							|  |  |  | +                    common_local_url('newmessage', array('to' => $from->id)), | 
					
						
							|  |  |  | +                    common_config('site', 'name')); | 
					
						
							|  |  |  | hunk ./lib/mail.php 528 | 
					
						
							|  |  |  | -	return mail_to_user($to, $subject, $body); | 
					
						
							|  |  |  | +    return mail_to_user($to, $subject, $body); | 
					
						
							|  |  |  | hunk ./lib/mail.php 531 | 
					
						
							|  |  |  | -function mail_notify_fave($other, $user, $notice) { | 
					
						
							|  |  |  | +/** | 
					
						
							|  |  |  | + * notify a user that one of their notices has been chosen as a 'fave' | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * Doesn't check that the user has an email address nor if they | 
					
						
							|  |  |  | + * want to receive notification of faves. Maybe this happens higher | 
					
						
							|  |  |  | + * up the stack...? | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @param User   $other  The user whose notice was faved | 
					
						
							|  |  |  | + * @param User   $user   The user who faved the notice | 
					
						
							|  |  |  | + * @param Notice $notice The notice that was faved | 
					
						
							|  |  |  | + * | 
					
						
							|  |  |  | + * @return void | 
					
						
							|  |  |  | + */ | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | + | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +function mail_notify_fave($other, $user, $notice) | 
					
						
							|  |  |  | +{ | 
					
						
							|  |  |  | +    $profile = $user->getProfile(); | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +    $bestname = $profile->getBestName(); | 
					
						
							|  |  |  | hunk ./lib/mail.php 551 | 
					
						
							|  |  |  | -	$profile = $user->getProfile(); | 
					
						
							|  |  |  | -	$bestname = $profile->getBestName(); | 
					
						
							|  |  |  | hunk ./lib/mail.php 552 | 
					
						
							|  |  |  | -	$subject = sprintf(_('%s added your notice as a favorite'), $bestname); | 
					
						
							|  |  |  | -	$body = sprintf(_("%1\$s just added your notice from %2\$s as one of their favorites.\n\n" . | 
					
						
							|  |  |  | -					  "In case you forgot, you can see the text of your notice here:\n\n" . | 
					
						
							|  |  |  | -					  "%3\$s\n\n" . | 
					
						
							|  |  |  | -					  "You can see the list of %1\$s's favorites here:\n\n" . | 
					
						
							|  |  |  | -					  "%4\$s\n\n" . | 
					
						
							|  |  |  | -					  "Faithfully yours,\n" . | 
					
						
							|  |  |  | -					  "%5\$s\n"), | 
					
						
							|  |  |  | -					$bestname, | 
					
						
							|  |  |  | -					common_exact_date($notice->created), | 
					
						
							|  |  |  | -					common_local_url('shownotice', array('notice' => $notice->id)), | 
					
						
							|  |  |  | -					common_local_url('showfavorites', array('nickname' => $user->nickname)), | 
					
						
							|  |  |  | -					common_config('site', 'name')); | 
					
						
							|  |  |  | + | 
					
						
							|  |  |  | +    $subject = sprintf(_('%s added your notice as a favorite'), $bestname); | 
					
						
							| 
									
										
										
										
											2008-12-22 15:13:04 -05:00
										 |  |  | + | 
					
						
							| 
									
										
										
										
											2008-12-23 12:33:30 -05:00
										 |  |  | +    $body = sprintf(_("%1\$s just added your notice from %2\$s". | 
					
						
							|  |  |  | +                      " as one of their favorites.\n\n" . | 
					
						
							|  |  |  | +                      "In case you forgot, you can see the text". | 
					
						
							|  |  |  | +                      " of your notice here:\n\n" . | 
					
						
							|  |  |  | +                      "%3\$s\n\n" . | 
					
						
							|  |  |  | +                      "You can see the list of %1\$s's favorites here:\n\n" . | 
					
						
							|  |  |  | +                      "%4\$s\n\n" . | 
					
						
							|  |  |  | +                      "Faithfully yours,\n" . | 
					
						
							|  |  |  | +                      "%5\$s\n"), | 
					
						
							|  |  |  | +                    $bestname, | 
					
						
							|  |  |  | +                    common_exact_date($notice->created), | 
					
						
							|  |  |  | +                    common_local_url('shownotice', | 
					
						
							|  |  |  | +                                     array('notice' => $notice->id)), | 
					
						
							|  |  |  | +                    common_local_url('showfavorites', | 
					
						
							|  |  |  | +                                     array('nickname' => $user->nickname)), | 
					
						
							|  |  |  | +                    common_config('site', 'name')); | 
					
						
							|  |  |  | hunk ./lib/mail.php 573 | 
					
						
							|  |  |  | -	mail_to_user($other, $subject, $body); | 
					
						
							|  |  |  | +    mail_to_user($other, $subject, $body); |