]> git.mxchange.org Git - friendica-addons.git/commitdiff
SN: added option to not send #tag links to the SN account
authorTobias Diekershoff <tobias.diekershoff@gmx.net>
Sat, 31 Mar 2012 07:59:27 +0000 (09:59 +0200)
committerTobias Diekershoff <tobias.diekershoff@gmx.net>
Sat, 31 Mar 2012 07:59:27 +0000 (09:59 +0200)
statusnet/statusnet.css
statusnet/statusnet.php

index 6c1347fc7af97cb8e2e3971d3baa880453f8d252..a5594cb70249ae183b2de56eafea233de1caf546 100755 (executable)
 #statusnet-default-label {
        float: left;
        width: 250px;
-       margin-bottom: 25px;
 }
-
+#statusnet-sendtaglinks-label {
+        float: left;
+        width: 250px;
+        margin-bottom: 25px;
+}
 #statusnet-disconnect {
        float: left;
 }
index 9830c881b4564813ae4d84527ecaa24f35df9add..897c54152c158ea7bb4c6f46a1a0d0ca79a8d08a 100755 (executable)
@@ -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 <https://diekershoff.homeunix.net/friendika/profile/tobias>
  */
  
@@ -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 .= '<div class="settings-block">';
        $s .= '<h3>'. t('StatusNet Posting Settings').'</h3>';
 
@@ -336,6 +341,9 @@ function statusnet_settings(&$a,&$s) {
                        $s .= '<div class="clear"></div>';
                        $s .= '<label id="statusnet-default-label" for="statusnet-default">'. t('Send public postings to StatusNet by default') .'</label>';
                        $s .= '<input id="statusnet-default" type="checkbox" name="statusnet-default" value="1" ' . $defchecked . '/>';
+                       $s .= '<div class="clear"></div>';
+                        $s .= '<label id="statusnet-sendtaglinks-label" for="statusnet-sendtaglinks">'.t('Send #tag links to StatusNet').'</label>';
+                        $s .= '<input id="statusnet-sendtaglinks" type="checkbox" name="statusnet-sendtaglinks" value="1" '. $linkschecked . '/>';
                        $s .= '</div><div class="clear"></div>';
 
                        $s .= '<div id="statusnet-disconnect-wrapper">';
@@ -440,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);