diff --git a/statusnet/README b/statusnet/README index 48f620ab..32c11c7e 100755 --- a/statusnet/README +++ b/statusnet/README @@ -42,6 +42,9 @@ ___ Configuration ___ __ Global Configuration __ +If you enabled an administrator account, please use the admin panel to cofigure +the StatusNet relay. + To activate this addon add statusnet to the list of active addons in your .htconfig.php file $a->config['system']['addon'] = "statusnet, ...". diff --git a/statusnet/statusnet.css b/statusnet/statusnet.css index 6c1347fc..a5594cb7 100755 --- a/statusnet/statusnet.css +++ b/statusnet/statusnet.css @@ -18,9 +18,12 @@ #statusnet-default-label { float: left; width: 250px; - margin-bottom: 25px; } - +#statusnet-sendtaglinks-label { + float: left; + width: 250px; + margin-bottom: 25px; +} #statusnet-disconnect { float: left; } diff --git a/statusnet/statusnet.php b/statusnet/statusnet.php index 8f2fbf81..897c5415 100755 --- a/statusnet/statusnet.php +++ b/statusnet/statusnet.php @@ -2,7 +2,7 @@ /** * Name: StatusNet Connector * Description: Relay public postings to a connected StatusNet account - * Version: 1.0.3 + * Version: 1.0.4 * Author: Tobias Diekershoff */ @@ -155,6 +155,7 @@ function statusnet_settings_post ($a,$post) { del_pconfig( local_user(), 'statusnet', 'oauthtoken' ); del_pconfig( local_user(), 'statusnet', 'oauthsecret' ); del_pconfig( local_user(), 'statusnet', 'baseapi' ); + del_pconfig( local_user(), 'statusnet', 'post_taglinks'); } else { if (isset($_POST['statusnet-preconf-apiurl'])) { /*** @@ -218,14 +219,16 @@ function statusnet_settings_post ($a,$post) { // ok, now that we have the Access Token, save them in the user config set_pconfig(local_user(),'statusnet', 'oauthtoken', $token['oauth_token']); set_pconfig(local_user(),'statusnet', 'oauthsecret', $token['oauth_token_secret']); - set_pconfig(local_user(),'statusnet', 'post', 1); + set_pconfig(local_user(),'statusnet', 'post', 1); + set_pconfig(local_user(),'statusnet', 'post_taglinks', 1); // reload the Addon Settings page, if we don't do it see Bug #42 goaway($a->get_baseurl().'/settings/connectors'); } else { // if no PIN is supplied in the POST variables, the user has changed the setting - // to post a tweet for every new __public__ posting to the wall + // to post a dent for every new __public__ posting to the wall set_pconfig(local_user(),'statusnet','post',intval($_POST['statusnet-enable'])); - set_pconfig(local_user(),'statusnet','post_by_default',intval($_POST['statusnet-default'])); + set_pconfig(local_user(),'statusnet','post_by_default',intval($_POST['statusnet-default'])); + set_pconfig(local_user(),'statusnet','post_taglinks',intval($_POST['statusnet-sendtaglinks'])); info( t('StatusNet settings updated.') . EOL); }}}} } @@ -247,7 +250,9 @@ function statusnet_settings(&$a,&$s) { $enabled = get_pconfig(local_user(), 'statusnet', 'post'); $checked = (($enabled) ? ' checked="checked" ' : ''); $defenabled = get_pconfig(local_user(),'statusnet','post_by_default'); - $defchecked = (($defenabled) ? ' checked="checked" ' : ''); + $defchecked = (($defenabled) ? ' checked="checked" ' : ''); + $linksenabled = get_pconfig(local_user(),'statusnet','post_taglinks'); + $linkschecked = (($linksenabled) ? ' checked="checked" ' : ''); $s .= '
'; $s .= '

'. t('StatusNet Posting Settings').'

'; @@ -336,6 +341,9 @@ function statusnet_settings(&$a,&$s) { $s .= '
'; $s .= ''; $s .= ''; + $s .= '
'; + $s .= ''; + $s .= ''; $s .= '
'; $s .= '
'; @@ -425,7 +433,12 @@ function statusnet_post_hook(&$a,&$b) { // we can later send to StatusNet. This way we can "gain" some // information during shortening of potential links but do not // shorten all the links in a 200000 character long essay. - $tmp = substr($b['body'], 0, 2*$max_char); + if (! $b['title']=='') { + $tmp = $b['title'] . ' : '. $b['body']; + $tmp = substr($tmp, 0, 2*$max_char); + } else { + $tmp = substr($b['body'], 0, 2*$max_char); + } // if [url=bla][img]blub.png[/img][/url] get blub.png $tmp = preg_replace( '/\[url\=(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)\]\[img\](\\w+.*?)\\[\\/img\]\\[\\/url\]/i', '$2', $tmp); // preserve links to images, videos and audios @@ -435,11 +448,13 @@ function statusnet_post_hook(&$a,&$b) { $tmp = preg_replace( '/\[\\/?youtube(\\s+.*?\]|\])/i', '', $tmp); $tmp = preg_replace( '/\[\\/?vimeo(\\s+.*?\]|\])/i', '', $tmp); $tmp = preg_replace( '/\[\\/?audio(\\s+.*?\]|\])/i', '', $tmp); + $linksenabled = get_pconfig($b['uid'],'statusnet','post_taglinks'); // if a #tag is linked, don't send the [url] over to SN - // this is commented out by default as it means backlinks - // to friendica, if you don't like this feel free to - // uncomment the following line -// $tmp = preg_replace( '/#\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', '#$2', $tmp); + // that is, don't send if the option is not set in the + // connector settings + if ($linksenabled=='0') { + $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( '/\[bookmark\=(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)\](\w+.*?)\[\/bookmark\]/i', '$2 $1', $tmp); diff --git a/twitter/README b/twitter/README index 99edf0d3..a5511fec 100755 --- a/twitter/README +++ b/twitter/README @@ -47,6 +47,9 @@ ___ Configuration ___ __ Global Configuration __ +If you enabled an administrator account, please use the admin panel to cofigure +the Twitter relay. + To activate this addon add @twitter@ to the list of active addons in your .htconfig.php file $a->config['system']['addon'] = "twitter, ..." diff --git a/twitter/twitter.css b/twitter/twitter.css index 899cfd17..75747979 100755 --- a/twitter/twitter.css +++ b/twitter/twitter.css @@ -12,7 +12,7 @@ } #twitter-disconnect-label { float: left; - width: 200px; + width: 250px; margin-bottom: 25px; } @@ -21,16 +21,25 @@ } #twitter-enable-label { float: left; - width: 200px; + width: 250px; margin-bottom: 5px; } +#twitter-default-label { + float: left; + width: 250px; +} +#twitter-sendtaglinks-label { + float: left; + width: 250px; + margin-bottom: 25px; +} #twitter-checkbox { float: left; } #twitter-pin-label { float: left; - width: 200px; + width: 250px; margin-bottom: 25px; } diff --git a/twitter/twitter.php b/twitter/twitter.php index 4f4d7280..006c1615 100755 --- a/twitter/twitter.php +++ b/twitter/twitter.php @@ -2,7 +2,7 @@ /** * Name: Twitter Connector * Description: Relay public postings to a connected Twitter account - * Version: 1.0.2 + * Version: 1.0.3 * Author: Tobias Diekershoff */ @@ -93,6 +93,7 @@ function twitter_settings_post ($a,$post) { del_pconfig( local_user(), 'twitter', 'oauthsecret' ); del_pconfig( local_user(), 'twitter', 'post' ); del_pconfig( local_user(), 'twitter', 'post_by_default' ); + del_pconfig( local_user(), 'twitter', 'post_taglinks'); } else { if (isset($_POST['twitter-pin'])) { // 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', 'oauthsecret', $token['oauth_token_secret']); 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 goaway($a->get_baseurl().'/settings/connectors'); } else { @@ -116,6 +118,7 @@ function twitter_settings_post ($a,$post) { // 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_by_default',intval($_POST['twitter-default'])); + set_pconfig(local_user(),'twitter','post_taglinks',intval($_POST['twitter-sendtaglinks'])); info( t('Twitter settings updated.') . EOL); }} } @@ -136,6 +139,8 @@ function twitter_settings(&$a,&$s) { $checked = (($enabled) ? ' checked="checked" ' : ''); $defenabled = get_pconfig(local_user(),'twitter','post_by_default'); $defchecked = (($defenabled) ? ' checked="checked" ' : ''); + $linksenabled = get_pconfig(local_user(),'twitter','post_taglinks'); + $linkschecked = (($linksenabled) ? ' checked="checked" ' : ''); $s .= '
'; $s .= '

'. t('Twitter Posting Settings') .'

'; @@ -192,6 +197,9 @@ function twitter_settings(&$a,&$s) { $s .= '
'; $s .= ''; $s .= ''; + $s .= '
'; + $s .= ''; + $s .= ''; $s .= '
'; $s .= '
'; @@ -291,7 +299,12 @@ function twitter_post_hook(&$a,&$b) { // we can later send to Twitter. This way we can "gain" some // information during shortening of potential links but do not // shorten all the links in a 200000 character long essay. - $tmp = substr($b['body'], 0, 2*$max_char); + if (! $b['title']=='') { + $tmp = $b['title'] . ' : '. $b['body']; + $tmp = substr($tmp, 0, 2*$max_char); + } else { + $tmp = substr($b['body'], 0, 2*$max_char); + } // if [url=bla][img]blub.png[/img][/url] get blub.png $tmp = preg_replace( '/\[url\=(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\;\.\=\_\~\#\%\$\!\+\,]+)\]\[img\](\\w+.*?)\\[\\/img\]\\[\\/url\]/i', '$2', $tmp); // preserve links to images, videos and audios @@ -301,12 +314,13 @@ function twitter_post_hook(&$a,&$b) { $tmp = preg_replace( '/\[\\/?youtube(\\s+.*?\]|\])/i', '', $tmp); $tmp = preg_replace( '/\[\\/?vimeo(\\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 - // this is commented out by default as it means backlinks - // to friendica, if you don't like this feel free to - // uncomment the following line -// $tmp = preg_replace( '/#\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', '#$2', $tmp); - // preserve links to webpages + // that is, don't send if the option is not set in the + // connector settings + if ($linksenabled=='0') { + $tmp = preg_replace( '/#\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', '#$2', $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); // find all http or https links in the body of the entry and