forked from GNUsocial/gnu-social
Merge branch 'master' of gitorious.org:statusnet/mainline into testing
This commit is contained in:
commit
a39a934dd4
@ -62,6 +62,28 @@ class LoginAction extends Action
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Prepare page to run
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @param $args
|
||||||
|
* @return string title
|
||||||
|
*/
|
||||||
|
|
||||||
|
function prepare($args)
|
||||||
|
{
|
||||||
|
parent::prepare($args);
|
||||||
|
|
||||||
|
// @todo this check should really be in index.php for all sensitive actions
|
||||||
|
$ssl = common_config('site', 'ssl');
|
||||||
|
if (empty($_SERVER['HTTPS']) && ($ssl == 'always' || $ssl == 'sometimes')) {
|
||||||
|
common_redirect(common_local_url('login'));
|
||||||
|
// exit
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Handle input, produce output
|
* Handle input, produce output
|
||||||
*
|
*
|
||||||
|
@ -74,6 +74,13 @@ class RegisterAction extends Action
|
|||||||
parent::prepare($args);
|
parent::prepare($args);
|
||||||
$this->code = $this->trimmed('code');
|
$this->code = $this->trimmed('code');
|
||||||
|
|
||||||
|
// @todo this check should really be in index.php for all sensitive actions
|
||||||
|
$ssl = common_config('site', 'ssl');
|
||||||
|
if (empty($_SERVER['HTTPS']) && ($ssl == 'always' || $ssl == 'sometimes')) {
|
||||||
|
common_redirect(common_local_url('register'));
|
||||||
|
// exit
|
||||||
|
}
|
||||||
|
|
||||||
if (empty($this->code)) {
|
if (empty($this->code)) {
|
||||||
common_ensure_session();
|
common_ensure_session();
|
||||||
if (array_key_exists('invitecode', $_SESSION)) {
|
if (array_key_exists('invitecode', $_SESSION)) {
|
||||||
|
@ -342,10 +342,24 @@ class TwitapisearchatomAction extends ApiAction
|
|||||||
'rel' => 'related',
|
'rel' => 'related',
|
||||||
'href' => $profile->avatarUrl()));
|
'href' => $profile->avatarUrl()));
|
||||||
|
|
||||||
// TODO: Here is where we'd put in a link to an atom feed for threads
|
// @todo: Here is where we'd put in a link to an atom feed for threads
|
||||||
|
|
||||||
$this->element("twitter:source", null,
|
$source = null;
|
||||||
htmlentities($this->sourceLink($notice->source)));
|
|
||||||
|
$ns = $notice->getSource();
|
||||||
|
if ($ns) {
|
||||||
|
if (!empty($ns->name) && !empty($ns->url)) {
|
||||||
|
$source = '<a href="'
|
||||||
|
. htmlspecialchars($ns->url)
|
||||||
|
. '" rel="nofollow">'
|
||||||
|
. htmlspecialchars($ns->name)
|
||||||
|
. '</a>';
|
||||||
|
} else {
|
||||||
|
$source = $ns->code;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->element("twitter:source", null, $source);
|
||||||
|
|
||||||
$this->elementStart('author');
|
$this->elementStart('author');
|
||||||
|
|
||||||
|
@ -1171,7 +1171,7 @@ class Notice extends Memcached_DataObject
|
|||||||
return $groups;
|
return $groups;
|
||||||
}
|
}
|
||||||
|
|
||||||
function asAtomEntry($namespace=false, $source=false, $author=true)
|
function asAtomEntry($namespace=false, $source=false, $author=true, $cur=null)
|
||||||
{
|
{
|
||||||
$profile = $this->getProfile();
|
$profile = $this->getProfile();
|
||||||
|
|
||||||
@ -1184,7 +1184,8 @@ class Notice extends Memcached_DataObject
|
|||||||
'xmlns:activity' => 'http://activitystrea.ms/spec/1.0/',
|
'xmlns:activity' => 'http://activitystrea.ms/spec/1.0/',
|
||||||
'xmlns:media' => 'http://purl.org/syndication/atommedia',
|
'xmlns:media' => 'http://purl.org/syndication/atommedia',
|
||||||
'xmlns:poco' => 'http://portablecontacts.net/spec/1.0',
|
'xmlns:poco' => 'http://portablecontacts.net/spec/1.0',
|
||||||
'xmlns:ostatus' => 'http://ostatus.org/schema/1.0');
|
'xmlns:ostatus' => 'http://ostatus.org/schema/1.0',
|
||||||
|
'xmlns:statusnet' => 'http://status.net/ont/');
|
||||||
} else {
|
} else {
|
||||||
$attrs = array();
|
$attrs = array();
|
||||||
}
|
}
|
||||||
@ -1232,6 +1233,24 @@ class Notice extends Memcached_DataObject
|
|||||||
$xs->element('published', null, common_date_w3dtf($this->created));
|
$xs->element('published', null, common_date_w3dtf($this->created));
|
||||||
$xs->element('updated', null, common_date_w3dtf($this->created));
|
$xs->element('updated', null, common_date_w3dtf($this->created));
|
||||||
|
|
||||||
|
$noticeInfoAttr = array(
|
||||||
|
'local_id' => $this->id, // local notice ID (useful to clients for ordering)
|
||||||
|
'source' => $this->source // the client name (source attribution)
|
||||||
|
);
|
||||||
|
|
||||||
|
$ns = $this->getSource();
|
||||||
|
if ($ns) {
|
||||||
|
if (!empty($ns->url)) {
|
||||||
|
$noticeInfoAttr['source_link'] = $ns->url;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!empty($cur)) {
|
||||||
|
$noticeInfoAttr['favorited'] = ($cur->hasFave($this)) ? 'true' : 'false';
|
||||||
|
}
|
||||||
|
|
||||||
|
$xs->element('statusnet:notice_info', $noticeInfoAttr, null);
|
||||||
|
|
||||||
if ($this->reply_to) {
|
if ($this->reply_to) {
|
||||||
$reply_notice = Notice::staticGet('id', $this->reply_to);
|
$reply_notice = Notice::staticGet('id', $this->reply_to);
|
||||||
if (!empty($reply_notice)) {
|
if (!empty($reply_notice)) {
|
||||||
@ -1796,4 +1815,41 @@ class Notice extends Memcached_DataObject
|
|||||||
|
|
||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the source of the notice
|
||||||
|
*
|
||||||
|
* @return Notice_source $ns A notice source object. 'code' is the only attribute
|
||||||
|
* guaranteed to be populated.
|
||||||
|
*/
|
||||||
|
function getSource()
|
||||||
|
{
|
||||||
|
$ns = new Notice_source();
|
||||||
|
if (!empty($this->source)) {
|
||||||
|
switch ($this->source) {
|
||||||
|
case 'web':
|
||||||
|
case 'xmpp':
|
||||||
|
case 'mail':
|
||||||
|
case 'omb':
|
||||||
|
case 'system':
|
||||||
|
case 'api':
|
||||||
|
$ns->code = $this->source;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
$ns = Notice_source::staticGet($this->source);
|
||||||
|
if (!$ns) {
|
||||||
|
$ns = new Notice_source();
|
||||||
|
$ns->code = $this->source;
|
||||||
|
$app = Oauth_application::staticGet('name', $this->source);
|
||||||
|
if ($app) {
|
||||||
|
$ns->name = $app->name;
|
||||||
|
$ns->url = $app->source_url;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $ns;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -260,7 +260,23 @@ class ApiAction extends Action
|
|||||||
$twitter_status['created_at'] = $this->dateTwitter($notice->created);
|
$twitter_status['created_at'] = $this->dateTwitter($notice->created);
|
||||||
$twitter_status['in_reply_to_status_id'] = ($notice->reply_to) ?
|
$twitter_status['in_reply_to_status_id'] = ($notice->reply_to) ?
|
||||||
intval($notice->reply_to) : null;
|
intval($notice->reply_to) : null;
|
||||||
$twitter_status['source'] = $this->sourceLink($notice->source);
|
|
||||||
|
$source = null;
|
||||||
|
|
||||||
|
$ns = $notice->getSource();
|
||||||
|
if ($ns) {
|
||||||
|
if (!empty($ns->name) && !empty($ns->url)) {
|
||||||
|
$source = '<a href="'
|
||||||
|
. htmlspecialchars($ns->url)
|
||||||
|
. '" rel="nofollow">'
|
||||||
|
. htmlspecialchars($ns->name)
|
||||||
|
. '</a>';
|
||||||
|
} else {
|
||||||
|
$source = $ns->code;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$twitter_status['source'] = $source;
|
||||||
$twitter_status['id'] = intval($notice->id);
|
$twitter_status['id'] = intval($notice->id);
|
||||||
|
|
||||||
$replier_profile = null;
|
$replier_profile = null;
|
||||||
@ -1298,43 +1314,6 @@ class ApiAction extends Action
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function sourceLink($source)
|
|
||||||
{
|
|
||||||
$source_name = _($source);
|
|
||||||
switch ($source) {
|
|
||||||
case 'web':
|
|
||||||
case 'xmpp':
|
|
||||||
case 'mail':
|
|
||||||
case 'omb':
|
|
||||||
case 'api':
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
|
|
||||||
$name = null;
|
|
||||||
$url = null;
|
|
||||||
|
|
||||||
$ns = Notice_source::staticGet($source);
|
|
||||||
|
|
||||||
if ($ns) {
|
|
||||||
$name = $ns->name;
|
|
||||||
$url = $ns->url;
|
|
||||||
} else {
|
|
||||||
$app = Oauth_application::staticGet('name', $source);
|
|
||||||
if ($app) {
|
|
||||||
$name = $app->name;
|
|
||||||
$url = $app->source_url;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!empty($name) && !empty($url)) {
|
|
||||||
$source_name = '<a href="' . $url . '">' . $name . '</a>';
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return $source_name;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns query argument or default value if not found. Certain
|
* Returns query argument or default value if not found. Certain
|
||||||
* parameters used throughout the API are lightly scrubbed and
|
* parameters used throughout the API are lightly scrubbed and
|
||||||
|
@ -79,6 +79,11 @@ class AtomNoticeFeed extends Atom10Feed
|
|||||||
'ostatus',
|
'ostatus',
|
||||||
'http://ostatus.org/schema/1.0'
|
'http://ostatus.org/schema/1.0'
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$this->addNamespace(
|
||||||
|
'statusnet',
|
||||||
|
'http://status.net/ont/'
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -110,7 +115,9 @@ class AtomNoticeFeed extends Atom10Feed
|
|||||||
$source = $this->showSource();
|
$source = $this->showSource();
|
||||||
$author = $this->showAuthor();
|
$author = $this->showAuthor();
|
||||||
|
|
||||||
$this->addEntryRaw($notice->asAtomEntry(false, $source, $author));
|
$cur = common_current_user();
|
||||||
|
|
||||||
|
$this->addEntryRaw($notice->asAtomEntry(false, $source, $author, $cur));
|
||||||
}
|
}
|
||||||
|
|
||||||
function showSource()
|
function showSource()
|
||||||
|
20
lib/mail.php
20
lib/mail.php
@ -224,9 +224,6 @@ function mail_subscribe_notify_profile($listenee, $other)
|
|||||||
if ($other->hasRight(Right::EMAILONSUBSCRIBE) &&
|
if ($other->hasRight(Right::EMAILONSUBSCRIBE) &&
|
||||||
$listenee->email && $listenee->emailnotifysub) {
|
$listenee->email && $listenee->emailnotifysub) {
|
||||||
|
|
||||||
// use the recipient's localization
|
|
||||||
common_init_locale($listenee->language);
|
|
||||||
|
|
||||||
$profile = $listenee->getProfile();
|
$profile = $listenee->getProfile();
|
||||||
|
|
||||||
$name = $profile->getBestName();
|
$name = $profile->getBestName();
|
||||||
@ -236,6 +233,9 @@ function mail_subscribe_notify_profile($listenee, $other)
|
|||||||
|
|
||||||
$recipients = $listenee->email;
|
$recipients = $listenee->email;
|
||||||
|
|
||||||
|
// use the recipient's localization
|
||||||
|
common_switch_locale($listenee->language);
|
||||||
|
|
||||||
$headers = _mail_prepare_headers('subscribe', $listenee->nickname, $other->nickname);
|
$headers = _mail_prepare_headers('subscribe', $listenee->nickname, $other->nickname);
|
||||||
$headers['From'] = mail_notify_from();
|
$headers['From'] = mail_notify_from();
|
||||||
$headers['To'] = $name . ' <' . $listenee->email . '>';
|
$headers['To'] = $name . ' <' . $listenee->email . '>';
|
||||||
@ -271,7 +271,7 @@ function mail_subscribe_notify_profile($listenee, $other)
|
|||||||
common_local_url('emailsettings'));
|
common_local_url('emailsettings'));
|
||||||
|
|
||||||
// reset localization
|
// reset localization
|
||||||
common_init_locale();
|
common_switch_locale();
|
||||||
mail_send($recipients, $headers, $body);
|
mail_send($recipients, $headers, $body);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -473,7 +473,7 @@ function mail_confirm_sms($code, $nickname, $address)
|
|||||||
|
|
||||||
function mail_notify_nudge($from, $to)
|
function mail_notify_nudge($from, $to)
|
||||||
{
|
{
|
||||||
common_init_locale($to->language);
|
common_switch_locale($to->language);
|
||||||
// TRANS: Subject for 'nudge' notification email
|
// TRANS: Subject for 'nudge' notification email
|
||||||
$subject = sprintf(_('You\'ve been nudged by %s'), $from->nickname);
|
$subject = sprintf(_('You\'ve been nudged by %s'), $from->nickname);
|
||||||
|
|
||||||
@ -491,7 +491,7 @@ function mail_notify_nudge($from, $to)
|
|||||||
$from->nickname,
|
$from->nickname,
|
||||||
common_local_url('all', array('nickname' => $to->nickname)),
|
common_local_url('all', array('nickname' => $to->nickname)),
|
||||||
common_config('site', 'name'));
|
common_config('site', 'name'));
|
||||||
common_init_locale();
|
common_switch_locale();
|
||||||
|
|
||||||
$headers = _mail_prepare_headers('nudge', $to->nickname, $from->nickname);
|
$headers = _mail_prepare_headers('nudge', $to->nickname, $from->nickname);
|
||||||
|
|
||||||
@ -525,7 +525,7 @@ function mail_notify_message($message, $from=null, $to=null)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
common_init_locale($to->language);
|
common_switch_locale($to->language);
|
||||||
// TRANS: Subject for direct-message notification email
|
// TRANS: Subject for direct-message notification email
|
||||||
$subject = sprintf(_('New private message from %s'), $from->nickname);
|
$subject = sprintf(_('New private message from %s'), $from->nickname);
|
||||||
|
|
||||||
@ -549,7 +549,7 @@ function mail_notify_message($message, $from=null, $to=null)
|
|||||||
|
|
||||||
$headers = _mail_prepare_headers('message', $to->nickname, $from->nickname);
|
$headers = _mail_prepare_headers('message', $to->nickname, $from->nickname);
|
||||||
|
|
||||||
common_init_locale();
|
common_switch_locale();
|
||||||
return mail_to_user($to, $subject, $body, $headers);
|
return mail_to_user($to, $subject, $body, $headers);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -577,7 +577,7 @@ function mail_notify_fave($other, $user, $notice)
|
|||||||
|
|
||||||
$bestname = $profile->getBestName();
|
$bestname = $profile->getBestName();
|
||||||
|
|
||||||
common_init_locale($other->language);
|
common_switch_locale($other->language);
|
||||||
|
|
||||||
// TRANS: Subject for favorite notification email
|
// TRANS: Subject for favorite notification email
|
||||||
$subject = sprintf(_('%s (@%s) added your notice as a favorite'), $bestname, $user->nickname);
|
$subject = sprintf(_('%s (@%s) added your notice as a favorite'), $bestname, $user->nickname);
|
||||||
@ -605,7 +605,7 @@ function mail_notify_fave($other, $user, $notice)
|
|||||||
|
|
||||||
$headers = _mail_prepare_headers('fave', $other->nickname, $user->nickname);
|
$headers = _mail_prepare_headers('fave', $other->nickname, $user->nickname);
|
||||||
|
|
||||||
common_init_locale();
|
common_switch_locale();
|
||||||
mail_to_user($other, $subject, $body, $headers);
|
mail_to_user($other, $subject, $body, $headers);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -480,54 +480,46 @@ class NoticeListItem extends Widget
|
|||||||
|
|
||||||
function showNoticeSource()
|
function showNoticeSource()
|
||||||
{
|
{
|
||||||
if ($this->notice->source) {
|
$ns = $this->notice->getSource();
|
||||||
|
|
||||||
|
if ($ns) {
|
||||||
|
$source_name = _($ns->code);
|
||||||
$this->out->text(' ');
|
$this->out->text(' ');
|
||||||
$this->out->elementStart('span', 'source');
|
$this->out->elementStart('span', 'source');
|
||||||
$this->out->text(_('from'));
|
$this->out->text(_('from'));
|
||||||
$source_name = _($this->notice->source);
|
|
||||||
$this->out->text(' ');
|
$this->out->text(' ');
|
||||||
switch ($this->notice->source) {
|
|
||||||
case 'web':
|
|
||||||
case 'xmpp':
|
|
||||||
case 'mail':
|
|
||||||
case 'omb':
|
|
||||||
case 'system':
|
|
||||||
case 'api':
|
|
||||||
$this->out->element('span', 'device', $source_name);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
|
|
||||||
$name = $source_name;
|
$name = $source_name;
|
||||||
$url = null;
|
$url = $ns->url;
|
||||||
|
$title = null;
|
||||||
|
|
||||||
if (Event::handle('StartNoticeSourceLink', array($this->notice, &$name, &$url, &$title))) {
|
if (Event::handle('StartNoticeSourceLink', array($this->notice, &$name, &$url, &$title))) {
|
||||||
$ns = Notice_source::staticGet($this->notice->source);
|
$name = $source_name;
|
||||||
|
|
||||||
if ($ns) {
|
|
||||||
$name = $ns->name;
|
|
||||||
$url = $ns->url;
|
$url = $ns->url;
|
||||||
} else {
|
|
||||||
$app = Oauth_application::staticGet('name', $this->notice->source);
|
|
||||||
if ($app) {
|
|
||||||
$name = $app->name;
|
|
||||||
$url = $app->source_url;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
Event::handle('EndNoticeSourceLink', array($this->notice, &$name, &$url, &$title));
|
Event::handle('EndNoticeSourceLink', array($this->notice, &$name, &$url, &$title));
|
||||||
|
|
||||||
|
// if $ns->name and $ns->url are populated we have
|
||||||
|
// configured a source attr somewhere
|
||||||
if (!empty($name) && !empty($url)) {
|
if (!empty($name) && !empty($url)) {
|
||||||
|
|
||||||
$this->out->elementStart('span', 'device');
|
$this->out->elementStart('span', 'device');
|
||||||
$this->out->element('a', array('href' => $url,
|
|
||||||
'rel' => 'external',
|
$attrs = array(
|
||||||
'title' => $title),
|
'href' => $url,
|
||||||
$name);
|
'rel' => 'external'
|
||||||
|
);
|
||||||
|
|
||||||
|
if (!empty($title)) {
|
||||||
|
$attrs['title'] = $title;
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->out->element('a', $attrs, $name);
|
||||||
$this->out->elementEnd('span');
|
$this->out->elementEnd('span');
|
||||||
} else {
|
} else {
|
||||||
$this->out->element('span', 'device', $name);
|
$this->out->element('span', 'device', $name);
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
}
|
|
||||||
$this->out->elementEnd('span');
|
$this->out->elementEnd('span');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
17
lib/util.php
17
lib/util.php
@ -34,6 +34,14 @@ function common_user_error($msg, $code=400)
|
|||||||
$err->showPage();
|
$err->showPage();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This should only be used at setup; processes switching languages
|
||||||
|
* to send text to other users should use common_switch_locale().
|
||||||
|
*
|
||||||
|
* @param string $language Locale language code (optional; empty uses
|
||||||
|
* current user's preference or site default)
|
||||||
|
* @return mixed success
|
||||||
|
*/
|
||||||
function common_init_locale($language=null)
|
function common_init_locale($language=null)
|
||||||
{
|
{
|
||||||
if(!$language) {
|
if(!$language) {
|
||||||
@ -50,6 +58,15 @@ function common_init_locale($language=null)
|
|||||||
return $ok;
|
return $ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Initialize locale and charset settings and gettext with our message catalog,
|
||||||
|
* using the current user's language preference or the site default.
|
||||||
|
*
|
||||||
|
* This should generally only be run at framework initialization; code switching
|
||||||
|
* languages at runtime should call common_switch_language().
|
||||||
|
*
|
||||||
|
* @access private
|
||||||
|
*/
|
||||||
function common_init_language()
|
function common_init_language()
|
||||||
{
|
{
|
||||||
mb_internal_encoding('UTF-8');
|
mb_internal_encoding('UTF-8');
|
||||||
|
@ -4889,7 +4889,7 @@ msgstr "Primary site navigation"
|
|||||||
#: lib/action.php:432
|
#: lib/action.php:432
|
||||||
msgctxt "TOOLTIP"
|
msgctxt "TOOLTIP"
|
||||||
msgid "Personal profile and friends timeline"
|
msgid "Personal profile and friends timeline"
|
||||||
msgstr "ersonal profile and friends timeline"
|
msgstr "Personal profile and friends timeline"
|
||||||
|
|
||||||
#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
|
#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
|
||||||
#: lib/action.php:435
|
#: lib/action.php:435
|
||||||
|
@ -272,12 +272,12 @@ function remove_facebook_app($flink)
|
|||||||
|
|
||||||
function mail_facebook_app_removed($user)
|
function mail_facebook_app_removed($user)
|
||||||
{
|
{
|
||||||
common_init_locale($user->language);
|
|
||||||
|
|
||||||
$profile = $user->getProfile();
|
$profile = $user->getProfile();
|
||||||
|
|
||||||
$site_name = common_config('site', 'name');
|
$site_name = common_config('site', 'name');
|
||||||
|
|
||||||
|
common_switch_locale($user->language);
|
||||||
|
|
||||||
$subject = sprintf(
|
$subject = sprintf(
|
||||||
_m('Your %1$s Facebook application access has been disabled.',
|
_m('Your %1$s Facebook application access has been disabled.',
|
||||||
$site_name));
|
$site_name));
|
||||||
@ -291,7 +291,7 @@ function mail_facebook_app_removed($user)
|
|||||||
"re-installing the %2\$s Facebook application.\n\nRegards,\n\n%2\$s"),
|
"re-installing the %2\$s Facebook application.\n\nRegards,\n\n%2\$s"),
|
||||||
$user->nickname, $site_name);
|
$user->nickname, $site_name);
|
||||||
|
|
||||||
common_init_locale();
|
common_switch_locale();
|
||||||
return mail_to_user($user, $subject, $body);
|
return mail_to_user($user, $subject, $body);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -452,6 +452,7 @@ class OStatusPlugin extends Plugin
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -335,10 +335,10 @@ function remove_twitter_link($flink)
|
|||||||
|
|
||||||
function mail_twitter_bridge_removed($user)
|
function mail_twitter_bridge_removed($user)
|
||||||
{
|
{
|
||||||
common_init_locale($user->language);
|
|
||||||
|
|
||||||
$profile = $user->getProfile();
|
$profile = $user->getProfile();
|
||||||
|
|
||||||
|
common_switch_locale($user->language);
|
||||||
|
|
||||||
$subject = sprintf(_m('Your Twitter bridge has been disabled.'));
|
$subject = sprintf(_m('Your Twitter bridge has been disabled.'));
|
||||||
|
|
||||||
$site_name = common_config('site', 'name');
|
$site_name = common_config('site', 'name');
|
||||||
@ -354,7 +354,7 @@ function mail_twitter_bridge_removed($user)
|
|||||||
common_local_url('twittersettings'),
|
common_local_url('twittersettings'),
|
||||||
common_config('site', 'name'));
|
common_config('site', 'name'));
|
||||||
|
|
||||||
common_init_locale();
|
common_switch_locale();
|
||||||
return mail_to_user($user, $subject, $body);
|
return mail_to_user($user, $subject, $body);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user