Preparations for a more visible reshare when exporting to twitter, statusnet or facebook.
The oauth-parts are some experimental stuff for the statusnet API - but they don't hurt.
This commit is contained in:
parent
4dcd00cf4b
commit
7770317f1e
|
@ -262,9 +262,9 @@ function bb_ShareAttributes($match) {
|
||||||
preg_match('/posted="(.*?)"/ism', $attributes, $matches);
|
preg_match('/posted="(.*?)"/ism', $attributes, $matches);
|
||||||
if ($matches[1] != "")
|
if ($matches[1] != "")
|
||||||
$posted = $matches[1];
|
$posted = $matches[1];
|
||||||
$reldate = (($posted) ? " " . relative_date($posted) : '');
|
$reldate = (($posted) ? " " . relative_date($posted) : '');
|
||||||
|
|
||||||
$headline = '<div class="shared_header">';
|
$headline = '<br /><div class="shared_header">';
|
||||||
|
|
||||||
if ($avatar != "")
|
if ($avatar != "")
|
||||||
$headline .= '<img src="'.$avatar.'" height="32" width="32" >';
|
$headline .= '<img src="'.$avatar.'" height="32" width="32" >';
|
||||||
|
@ -300,10 +300,63 @@ function bb_ShareAttributesSimple($match) {
|
||||||
if ($matches[1] != "")
|
if ($matches[1] != "")
|
||||||
$profile = $matches[1];
|
$profile = $matches[1];
|
||||||
|
|
||||||
$text = "<br />".html_entity_decode("♲ ", ENT_QUOTES, 'UTF-8').' <a href="'.$profile.'">'.$author."</a>: <br />»".$match[2]."«";
|
$userid = GetProfileUsername($profile,$author);
|
||||||
|
|
||||||
|
$text = "<br />".html_entity_decode("♲ ", ENT_QUOTES, 'UTF-8').' <a href="'.$profile.'">'.$userid."</a>: <br />»".$match[2]."«";
|
||||||
|
|
||||||
return($text);
|
return($text);
|
||||||
}
|
}
|
||||||
|
function bb_ShareAttributesSimple2($match) {
|
||||||
|
|
||||||
|
$attributes = $match[1];
|
||||||
|
|
||||||
|
$author = "";
|
||||||
|
preg_match("/author='(.*?)'/ism", $attributes, $matches);
|
||||||
|
if ($matches[1] != "")
|
||||||
|
$author = html_entity_decode($matches[1],ENT_QUOTES,'UTF-8');
|
||||||
|
|
||||||
|
preg_match('/author="(.*?)"/ism', $attributes, $matches);
|
||||||
|
if ($matches[1] != "")
|
||||||
|
$author = $matches[1];
|
||||||
|
|
||||||
|
$profile = "";
|
||||||
|
preg_match("/profile='(.*?)'/ism", $attributes, $matches);
|
||||||
|
if ($matches[1] != "")
|
||||||
|
$profile = $matches[1];
|
||||||
|
|
||||||
|
preg_match('/profile="(.*?)"/ism', $attributes, $matches);
|
||||||
|
if ($matches[1] != "")
|
||||||
|
$profile = $matches[1];
|
||||||
|
|
||||||
|
$userid = GetProfileUsername($profile,$author);
|
||||||
|
|
||||||
|
$text = "<br />".html_entity_decode("♲ ", ENT_QUOTES, 'UTF-8').' <a href="'.$profile.'">'.$userid."</a>: <br />".$match[2];
|
||||||
|
|
||||||
|
return($text);
|
||||||
|
}
|
||||||
|
|
||||||
|
function GetProfileUsername($profile, $username) {
|
||||||
|
$friendica = preg_replace("=https?://(.*)/profile/(.*)=ism", "$2@$1", $profile);
|
||||||
|
if ($friendica != $profile)
|
||||||
|
return($friendica);
|
||||||
|
|
||||||
|
$diaspora = preg_replace("=https?://(.*)/u/(.*)=ism", "$2@$1", $profile);
|
||||||
|
if ($diaspora != $profile)
|
||||||
|
return($diaspora);
|
||||||
|
|
||||||
|
$StatusnetHost = preg_replace("=https?://(.*)/user/(.*)=ism", "$1", $profile);
|
||||||
|
if ($StatusnetHost != $profile) {
|
||||||
|
$StatusnetUser = preg_replace("=https?://(.*)/user/(.*)=ism", "$2", $profile);
|
||||||
|
if ($StatusnetUser != $profile) {
|
||||||
|
$UserData = fetch_url("http://".$StatusnetHost."/api/users/show.json?user_id=".$StatusnetUser);
|
||||||
|
$user = json_decode($UserData);
|
||||||
|
if ($user)
|
||||||
|
return($user->screen_name."@".$StatusnetHost);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return($username);
|
||||||
|
}
|
||||||
|
|
||||||
// BBcode 2 HTML was written by WAY2WEB.net
|
// BBcode 2 HTML was written by WAY2WEB.net
|
||||||
// extended to work with Mistpark/Friendica - Mike Macgirvin
|
// extended to work with Mistpark/Friendica - Mike Macgirvin
|
||||||
|
@ -553,8 +606,10 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true, $simplehtml = fal
|
||||||
// Shared content
|
// Shared content
|
||||||
if (!$simplehtml)
|
if (!$simplehtml)
|
||||||
$Text = preg_replace_callback("/\[share(.*?)\](.*?)\[\/share\]/ism","bb_ShareAttributes",$Text);
|
$Text = preg_replace_callback("/\[share(.*?)\](.*?)\[\/share\]/ism","bb_ShareAttributes",$Text);
|
||||||
else
|
elseif ($simplehtml == 1)
|
||||||
$Text = preg_replace_callback("/\[share(.*?)\](.*?)\[\/share\]/ism","bb_ShareAttributesSimple",$Text);
|
$Text = preg_replace_callback("/\[share(.*?)\](.*?)\[\/share\]/ism","bb_ShareAttributesSimple",$Text);
|
||||||
|
elseif ($simplehtml == 2)
|
||||||
|
$Text = preg_replace_callback("/\[share(.*?)\](.*?)\[\/share\]/ism","bb_ShareAttributesSimple2",$Text);
|
||||||
|
|
||||||
$Text = preg_replace("/\[crypt\](.*?)\[\/crypt\]/ism",'<br/><img src="' .$a->get_baseurl() . '/images/lock_icon.gif" alt="' . t('Encrypted content') . '" title="' . t('Encrypted content') . '" /><br />', $Text);
|
$Text = preg_replace("/\[crypt\](.*?)\[\/crypt\]/ism",'<br/><img src="' .$a->get_baseurl() . '/images/lock_icon.gif" alt="' . t('Encrypted content') . '" title="' . t('Encrypted content') . '" /><br />', $Text);
|
||||||
$Text = preg_replace("/\[crypt=(.*?)\](.*?)\[\/crypt\]/ism",'<br/><img src="' .$a->get_baseurl() . '/images/lock_icon.gif" alt="' . t('Encrypted content') . '" title="' . '$1' . ' ' . t('Encrypted content') . '" /><br />', $Text);
|
$Text = preg_replace("/\[crypt=(.*?)\](.*?)\[\/crypt\]/ism",'<br/><img src="' .$a->get_baseurl() . '/images/lock_icon.gif" alt="' . t('Encrypted content') . '" title="' . '$1' . ' ' . t('Encrypted content') . '" /><br />', $Text);
|
||||||
|
|
|
@ -220,6 +220,9 @@ function html2plain($html, $wraplength = 75, $compact = false)
|
||||||
//$message .= "\n[".($counter++)."] ".$url;
|
//$message .= "\n[".($counter++)."] ".$url;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$message = str_replace("\n«", "«\n", $message);
|
||||||
|
$message = str_replace("»\n", "\n»", $message);
|
||||||
|
|
||||||
do {
|
do {
|
||||||
$oldmessage = $message;
|
$oldmessage = $message;
|
||||||
$message = str_replace("\n\n\n", "\n\n", $message);
|
$message = str_replace("\n\n\n", "\n\n", $message);
|
||||||
|
|
|
@ -423,8 +423,11 @@ class OAuthRequest {
|
||||||
/**
|
/**
|
||||||
* builds the data one would send in a POST request
|
* builds the data one would send in a POST request
|
||||||
*/
|
*/
|
||||||
public function to_postdata() {
|
public function to_postdata($raw = false) {
|
||||||
return OAuthUtil::build_http_query($this->parameters);
|
if ($raw)
|
||||||
|
return($this->parameters);
|
||||||
|
else
|
||||||
|
return OAuthUtil::build_http_query($this->parameters);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -184,6 +184,8 @@ class TwitterOAuth {
|
||||||
switch ($method) {
|
switch ($method) {
|
||||||
case 'GET':
|
case 'GET':
|
||||||
return $this->http($request->to_url(), 'GET');
|
return $this->http($request->to_url(), 'GET');
|
||||||
|
case 'UPLOAD':
|
||||||
|
return $this->http($request->get_normalized_http_url(), 'POST', $request->to_postdata(true));
|
||||||
default:
|
default:
|
||||||
return $this->http($request->get_normalized_http_url(), $method, $request->to_postdata());
|
return $this->http($request->get_normalized_http_url(), $method, $request->to_postdata());
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue