forked from friendica/friendica-addons
Twitter: add option to send #tag links to connected account
This commit is contained in:
parent
b6ab56fd7f
commit
a2ff679d2d
2 changed files with 27 additions and 9 deletions
|
@ -12,7 +12,7 @@
|
||||||
}
|
}
|
||||||
#twitter-disconnect-label {
|
#twitter-disconnect-label {
|
||||||
float: left;
|
float: left;
|
||||||
width: 200px;
|
width: 250px;
|
||||||
margin-bottom: 25px;
|
margin-bottom: 25px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21,16 +21,25 @@
|
||||||
}
|
}
|
||||||
#twitter-enable-label {
|
#twitter-enable-label {
|
||||||
float: left;
|
float: left;
|
||||||
width: 200px;
|
width: 250px;
|
||||||
margin-bottom: 5px;
|
margin-bottom: 5px;
|
||||||
}
|
}
|
||||||
|
#twitter-default-label {
|
||||||
|
float: left;
|
||||||
|
width: 250px;
|
||||||
|
}
|
||||||
|
#twitter-sendtaglinks-label {
|
||||||
|
float: left;
|
||||||
|
width: 250px;
|
||||||
|
margin-bottom: 25px;
|
||||||
|
}
|
||||||
|
|
||||||
#twitter-checkbox {
|
#twitter-checkbox {
|
||||||
float: left;
|
float: left;
|
||||||
}
|
}
|
||||||
#twitter-pin-label {
|
#twitter-pin-label {
|
||||||
float: left;
|
float: left;
|
||||||
width: 200px;
|
width: 250px;
|
||||||
margin-bottom: 25px;
|
margin-bottom: 25px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
/**
|
/**
|
||||||
* Name: Twitter Connector
|
* Name: Twitter Connector
|
||||||
* Description: Relay public postings to a connected Twitter account
|
* Description: Relay public postings to a connected Twitter account
|
||||||
* Version: 1.0.2
|
* Version: 1.0.3
|
||||||
* Author: Tobias Diekershoff <https://diekershoff.homeunix.net/friendika/profile/tobias>
|
* Author: Tobias Diekershoff <https://diekershoff.homeunix.net/friendika/profile/tobias>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -93,6 +93,7 @@ function twitter_settings_post ($a,$post) {
|
||||||
del_pconfig( local_user(), 'twitter', 'oauthsecret' );
|
del_pconfig( local_user(), 'twitter', 'oauthsecret' );
|
||||||
del_pconfig( local_user(), 'twitter', 'post' );
|
del_pconfig( local_user(), 'twitter', 'post' );
|
||||||
del_pconfig( local_user(), 'twitter', 'post_by_default' );
|
del_pconfig( local_user(), 'twitter', 'post_by_default' );
|
||||||
|
del_pconfig( local_user(), 'twitter', 'post_taglinks');
|
||||||
} else {
|
} else {
|
||||||
if (isset($_POST['twitter-pin'])) {
|
if (isset($_POST['twitter-pin'])) {
|
||||||
// if the user supplied us with a PIN from Twitter, let the magic of OAuth happen
|
// if the user supplied us with a PIN from Twitter, let the magic of OAuth happen
|
||||||
|
@ -109,6 +110,7 @@ function twitter_settings_post ($a,$post) {
|
||||||
set_pconfig(local_user(),'twitter', 'oauthtoken', $token['oauth_token']);
|
set_pconfig(local_user(),'twitter', 'oauthtoken', $token['oauth_token']);
|
||||||
set_pconfig(local_user(),'twitter', 'oauthsecret', $token['oauth_token_secret']);
|
set_pconfig(local_user(),'twitter', 'oauthsecret', $token['oauth_token_secret']);
|
||||||
set_pconfig(local_user(),'twitter', 'post', 1);
|
set_pconfig(local_user(),'twitter', 'post', 1);
|
||||||
|
set_pconfig(local_user(),'twitter', 'post_taglinks', 1);
|
||||||
// reload the Addon Settings page, if we don't do it see Bug #42
|
// reload the Addon Settings page, if we don't do it see Bug #42
|
||||||
goaway($a->get_baseurl().'/settings/connectors');
|
goaway($a->get_baseurl().'/settings/connectors');
|
||||||
} else {
|
} else {
|
||||||
|
@ -116,6 +118,7 @@ function twitter_settings_post ($a,$post) {
|
||||||
// to post a tweet for every new __public__ posting to the wall
|
// to post a tweet for every new __public__ posting to the wall
|
||||||
set_pconfig(local_user(),'twitter','post',intval($_POST['twitter-enable']));
|
set_pconfig(local_user(),'twitter','post',intval($_POST['twitter-enable']));
|
||||||
set_pconfig(local_user(),'twitter','post_by_default',intval($_POST['twitter-default']));
|
set_pconfig(local_user(),'twitter','post_by_default',intval($_POST['twitter-default']));
|
||||||
|
set_pconfig(local_user(),'twitter','post_taglinks',intval($_POST['twitter-sendtaglinks']));
|
||||||
info( t('Twitter settings updated.') . EOL);
|
info( t('Twitter settings updated.') . EOL);
|
||||||
}}
|
}}
|
||||||
}
|
}
|
||||||
|
@ -136,6 +139,8 @@ function twitter_settings(&$a,&$s) {
|
||||||
$checked = (($enabled) ? ' checked="checked" ' : '');
|
$checked = (($enabled) ? ' checked="checked" ' : '');
|
||||||
$defenabled = get_pconfig(local_user(),'twitter','post_by_default');
|
$defenabled = get_pconfig(local_user(),'twitter','post_by_default');
|
||||||
$defchecked = (($defenabled) ? ' checked="checked" ' : '');
|
$defchecked = (($defenabled) ? ' checked="checked" ' : '');
|
||||||
|
$linksenabled = get_pconfig(local_user(),'twitter','post_taglinks');
|
||||||
|
$linkschecked = (($linksenabled) ? ' checked="checked" ' : '');
|
||||||
|
|
||||||
$s .= '<div class="settings-block">';
|
$s .= '<div class="settings-block">';
|
||||||
$s .= '<h3>'. t('Twitter Posting Settings') .'</h3>';
|
$s .= '<h3>'. t('Twitter Posting Settings') .'</h3>';
|
||||||
|
@ -192,6 +197,9 @@ function twitter_settings(&$a,&$s) {
|
||||||
$s .= '<div class="clear"></div>';
|
$s .= '<div class="clear"></div>';
|
||||||
$s .= '<label id="twitter-default-label" for="twitter-default">'. t('Send public postings to Twitter by default') .'</label>';
|
$s .= '<label id="twitter-default-label" for="twitter-default">'. t('Send public postings to Twitter by default') .'</label>';
|
||||||
$s .= '<input id="twitter-default" type="checkbox" name="twitter-default" value="1" ' . $defchecked . '/>';
|
$s .= '<input id="twitter-default" type="checkbox" name="twitter-default" value="1" ' . $defchecked . '/>';
|
||||||
|
$s .= '<div class="clear"></div>';
|
||||||
|
$s .= '<label id="twitter-sendtaglinks-label" for="twitter-sendtaglinks">'.t('Send #tag links to Twitter').'</label>';
|
||||||
|
$s .= '<input id="twitter-sendtaglinks" type="checkbox" name="twitter-sendtaglinks" value="1" '. $linkschecked . '/>';
|
||||||
$s .= '</div><div class="clear"></div>';
|
$s .= '</div><div class="clear"></div>';
|
||||||
|
|
||||||
$s .= '<div id="twitter-disconnect-wrapper">';
|
$s .= '<div id="twitter-disconnect-wrapper">';
|
||||||
|
@ -306,12 +314,13 @@ function twitter_post_hook(&$a,&$b) {
|
||||||
$tmp = preg_replace( '/\[\\/?youtube(\\s+.*?\]|\])/i', '', $tmp);
|
$tmp = preg_replace( '/\[\\/?youtube(\\s+.*?\]|\])/i', '', $tmp);
|
||||||
$tmp = preg_replace( '/\[\\/?vimeo(\\s+.*?\]|\])/i', '', $tmp);
|
$tmp = preg_replace( '/\[\\/?vimeo(\\s+.*?\]|\])/i', '', $tmp);
|
||||||
$tmp = preg_replace( '/\[\\/?audio(\\s+.*?\]|\])/i', '', $tmp);
|
$tmp = preg_replace( '/\[\\/?audio(\\s+.*?\]|\])/i', '', $tmp);
|
||||||
|
$linksenabled = get_pconfig($b['uid'],'twitter','post_taglinks');
|
||||||
// if a #tag is linked, don't send the [url] over to SN
|
// if a #tag is linked, don't send the [url] over to SN
|
||||||
// this is commented out by default as it means backlinks
|
// that is, don't send if the option is not set in the
|
||||||
// to friendica, if you don't like this feel free to
|
// connector settings
|
||||||
// uncomment the following line
|
if ($linksenabled=='0') {
|
||||||
// $tmp = preg_replace( '/#\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', '#$2', $tmp);
|
$tmp = preg_replace( '/#\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', '#$2', $tmp);
|
||||||
// preserve links to webpages
|
}
|
||||||
$tmp = preg_replace( '/\[url\=(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)\](\w+.*?)\[\/url\]/i', '$2 $1', $tmp);
|
$tmp = preg_replace( '/\[url\=(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)\](\w+.*?)\[\/url\]/i', '$2 $1', $tmp);
|
||||||
$tmp = preg_replace( '/\[bookmark\=(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)\](\w+.*?)\[\/bookmark\]/i', '$2 $1', $tmp);
|
$tmp = preg_replace( '/\[bookmark\=(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)\](\w+.*?)\[\/bookmark\]/i', '$2 $1', $tmp);
|
||||||
// find all http or https links in the body of the entry and
|
// find all http or https links in the body of the entry and
|
||||||
|
|
Loading…
Reference in a new issue