Merge branch 'master' into nightly
This commit is contained in:
commit
0d39337683
@ -444,6 +444,17 @@ class OStatusPlugin extends Plugin
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function onEndProfileSettingsActions($out) {
|
||||||
|
$siteName = common_config('site', 'name');
|
||||||
|
$js = 'navigator.registerContentHandler("application/vnd.mozilla.maybe.feed", "'.addslashes(common_local_url('ostatussub', null, array('profile' => '%s'))).'", "'.addslashes($siteName).'")';
|
||||||
|
$out->elementStart('li');
|
||||||
|
$out->element('a',
|
||||||
|
array('href' => 'javascript:'.$js),
|
||||||
|
// TRANS: Option in profile settings to add this instance to Firefox as a feedreader
|
||||||
|
_('Add to Firefox as feedreader'));
|
||||||
|
$out->elementEnd('li');
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Make sure necessary tables are filled out.
|
* Make sure necessary tables are filled out.
|
||||||
*/
|
*/
|
||||||
|
@ -281,6 +281,10 @@ class OStatusSubAction extends Action
|
|||||||
// TRANS: Error text.
|
// TRANS: Error text.
|
||||||
$this->error = _m("Sorry, we could not reach that feed. Please try that OStatus address again later.");
|
$this->error = _m("Sorry, we could not reach that feed. Please try that OStatus address again later.");
|
||||||
common_debug('Not a recognized feed type.', __FILE__);
|
common_debug('Not a recognized feed type.', __FILE__);
|
||||||
|
} catch (FeedSubNoHubException $e) {
|
||||||
|
// TRANS: Error text.
|
||||||
|
$this->error = _m("Sorry, that feed is not Pubsubhubub enabled.");
|
||||||
|
common_debug('No hub found.', __FILE__);
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
// Any new ones we forgot about
|
// Any new ones we forgot about
|
||||||
// TRANS: Error message in OStatus plugin. Do not translate the domain names example.com
|
// TRANS: Error message in OStatus plugin. Do not translate the domain names example.com
|
||||||
|
@ -635,14 +635,21 @@ class Ostatus_profile extends Managed_DataObject
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Try to get some hCard data
|
if (in_array(
|
||||||
|
preg_replace('/\s*;.*$/', '', $response->getHeader('Content-Type')),
|
||||||
|
array('application/rss+xml', 'application/atom+xml', 'application/xml', 'text/xml'))
|
||||||
|
) {
|
||||||
|
$hints['feedurl'] = $response->getUrl();
|
||||||
|
} else {
|
||||||
|
// Try to get some hCard data
|
||||||
|
|
||||||
$body = $response->getBody();
|
$body = $response->getBody();
|
||||||
|
|
||||||
$hcardHints = DiscoveryHints::hcardHints($body, $finalUrl);
|
$hcardHints = DiscoveryHints::hcardHints($body, $finalUrl);
|
||||||
|
|
||||||
if (!empty($hcardHints)) {
|
if (!empty($hcardHints)) {
|
||||||
$hints = array_merge($hints, $hcardHints);
|
$hints = array_merge($hints, $hcardHints);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check if they've got an LRDD header
|
// Check if they've got an LRDD header
|
||||||
|
@ -527,6 +527,23 @@ class TwitterBridgePlugin extends Plugin
|
|||||||
|
|
||||||
public function onEndShowHeadElements(Action $action)
|
public function onEndShowHeadElements(Action $action)
|
||||||
{
|
{
|
||||||
|
if($action instanceof ShowNoticeAction) { // Showing a notice
|
||||||
|
$notice = Notice::getKV('id', $action->arg('notice'));
|
||||||
|
|
||||||
|
try {
|
||||||
|
$flink = Foreign_link::getByUserID($notice->profile_id, TWITTER_SERVICE);
|
||||||
|
$fuser = Foreign_user::getForeignUser($flink->foreign_id, TWITTER_SERVICE);
|
||||||
|
} catch (NoResultException $e) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
$statusId = twitter_status_id($notice);
|
||||||
|
if($notice instanceof Notice && $notice->isLocal() && $statusId) {
|
||||||
|
$tweetUrl = 'https://twitter.com/' . $fuser->nickname . '/status/' . $statusId;
|
||||||
|
$action->element('link', array('rel' => 'syndication', 'href' => $tweetUrl));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (!($action instanceof AttachmentAction)) {
|
if (!($action instanceof AttachmentAction)) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -221,7 +221,7 @@ class TwitterImport
|
|||||||
*/
|
*/
|
||||||
function makeStatusURI($username, $id)
|
function makeStatusURI($username, $id)
|
||||||
{
|
{
|
||||||
return 'http://twitter.com/#!/'
|
return 'https://twitter.com/'
|
||||||
. $username
|
. $username
|
||||||
. '/status/'
|
. '/status/'
|
||||||
. $id;
|
. $id;
|
||||||
@ -245,7 +245,10 @@ class TwitterImport
|
|||||||
$profile->limit(1);
|
$profile->limit(1);
|
||||||
|
|
||||||
if (!$profile->find(true)) {
|
if (!$profile->find(true)) {
|
||||||
throw new NoResultException($profile);
|
$profile->profileurl = str_replace('https://', 'http://', $profileurl);
|
||||||
|
if (!$profile->find(true)) {
|
||||||
|
throw new NoResultException($profile);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return $profile;
|
return $profile;
|
||||||
}
|
}
|
||||||
@ -253,7 +256,7 @@ class TwitterImport
|
|||||||
protected function ensureProfile($twuser)
|
protected function ensureProfile($twuser)
|
||||||
{
|
{
|
||||||
// check to see if there's already a profile for this user
|
// check to see if there's already a profile for this user
|
||||||
$profileurl = 'http://twitter.com/' . $twuser->screen_name;
|
$profileurl = 'https://twitter.com/' . $twuser->screen_name;
|
||||||
try {
|
try {
|
||||||
$profile = $this->getProfileByUrl($twuser->screen_name, $profileurl);
|
$profile = $this->getProfileByUrl($twuser->screen_name, $profileurl);
|
||||||
$this->updateAvatar($twuser, $profile);
|
$this->updateAvatar($twuser, $profile);
|
||||||
@ -539,9 +542,9 @@ class TwitterImport
|
|||||||
static function atLink($screenName, $fullName, $orig)
|
static function atLink($screenName, $fullName, $orig)
|
||||||
{
|
{
|
||||||
if (!empty($fullName)) {
|
if (!empty($fullName)) {
|
||||||
return "<a href='http://twitter.com/#!/{$screenName}' title='{$fullName}'>{$orig}</a>";
|
return "<a href='https://twitter.com/{$screenName}' title='{$fullName}'>{$orig}</a>";
|
||||||
} else {
|
} else {
|
||||||
return "<a href='http://twitter.com/#!/{$screenName}'>{$orig}</a>";
|
return "<a href='https://twitter.com/{$screenName}'>{$orig}</a>";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -124,8 +124,7 @@ function is_twitter_bound($notice, $flink) {
|
|||||||
// If it's not a Twitter-style reply, or if the user WANTS to send replies,
|
// If it's not a Twitter-style reply, or if the user WANTS to send replies,
|
||||||
// or if it's in reply to a twitter notice
|
// or if it's in reply to a twitter notice
|
||||||
if ( (($flink->noticesync & FOREIGN_NOTICE_SEND_REPLY) == FOREIGN_NOTICE_SEND_REPLY) ||
|
if ( (($flink->noticesync & FOREIGN_NOTICE_SEND_REPLY) == FOREIGN_NOTICE_SEND_REPLY) ||
|
||||||
((is_twitter_notice($notice->reply_to) || is_twitter_notice($notice->repeat_of))
|
is_twitter_notice($notice->reply_to) || is_twitter_notice($notice->repeat_of) ||
|
||||||
&& (($flink->noticesync & FOREIGN_NOTICE_RECV) == FOREIGN_NOTICE_RECV)) ||
|
|
||||||
(empty($notice->reply_to) && !preg_match('/^@[a-zA-Z0-9_]{1,15}\b/u', $notice->content)) ){
|
(empty($notice->reply_to) && !preg_match('/^@[a-zA-Z0-9_]{1,15}\b/u', $notice->content)) ){
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user