diff --git a/facebook/README b/facebook/README index 650ae1e3..b68ba3da 100755 --- a/facebook/README +++ b/facebook/README @@ -20,6 +20,18 @@ Installing the Friendica/Facebook connector c) Click save. d) Finally, return to the Facebook settings page, and activate real-time updates. + i. If you for any reason prefer to use a configuration file instead of the admin panels, + Activate the plugin by including it in .htconfig.php, e.g. + + $a->config['system']['addon'] = 'plugin1,plugin2,facebook'; + + and set the following values: + $a->config['facebook']['appid'] = 'xxxxxxxxxxx'; + $a->config['facebook']['appsecret'] = 'xxxxxxxxxxxxxxx'; + + Replace with the settings Facebook gives you. + + 3. To use the Facebook plugin, visit the "connector settings" area of your settings page. Click "Install Facebook Connector". 4. This will ask you to login to Facebook and allow the plugin to do it's stuff. diff --git a/impressum/README b/impressum/README index 457729dc..fcf29aaf 100755 --- a/impressum/README +++ b/impressum/README @@ -1,9 +1,10 @@ Impressum Plugin for Friendica Author: Tobias Diekershoff + http://diekershoff.homeunix.net/friendika/profile/tobias tobias.diekershoff@gmx.net -License: 3-clause BSD license (same as Friendica) +License: 3-clause BSD license About This plugin adds an Impressum block to the /friendica page with informations @@ -15,4 +16,19 @@ Configuration: Simply fill in the fields in the impressium settings page in the plugins area of your admin panel. +If you for any reason prefer to use a configuration file instead, you can set the +following variables in the .htconfig file + * $a->config['impressum']['owner'] this is the Name of the Operator + * $a->config['impressum']['ownerprofile'] this is an optional Friendica account + where the above owner name will link to + * $a->config['impressum']['email'] a contact email address (optional) + will be displayed slightly obfuscated + as name(at)example(dot)com + + * $a->config['impressum']['postal'] should contain a postal address where + you can be reached at (optional) + * $a->config['impressum']['notes'] additional informations that should + be displayed in the Impressum block + * $a->config['impressum']['footer_text'] Text that will be displayed at + the bottom of the pages. diff --git a/impressum/admin.tpl b/impressum/admin.tpl index cfba8df7..849c11f9 100755 --- a/impressum/admin.tpl +++ b/impressum/admin.tpl @@ -3,4 +3,5 @@ {{ inc field_input.tpl with $field=$postal }}{{ endinc }} {{ inc field_input.tpl with $field=$notes }}{{ endinc }} {{ inc field_input.tpl with $field=$email }}{{ endinc }} +{{ inc field_input.tpl with $field=$footer_text }}{{ endinc }}
diff --git a/impressum/impressum.css b/impressum/impressum.css new file mode 100644 index 00000000..ec0b5e57 --- /dev/null +++ b/impressum/impressum.css @@ -0,0 +1,4 @@ +#impressum_footer { + padding-top: 15px; + font-size: 0.8em; +} diff --git a/impressum/impressum.php b/impressum/impressum.php index ce9790bb..76002279 100755 --- a/impressum/impressum.php +++ b/impressum/impressum.php @@ -2,18 +2,20 @@ /** * Name: Impressum * Description: Plugin to add contact information to the about page (/friendica) - * Version: 1.0 - * Author: Tobias Diekershoff + * Version: 1.1 + * Author: Tobias Diekershoff * License: 3-clause BSD license */ function impressum_install() { register_hook('about_hook', 'addon/impressum/impressum.php', 'impressum_show'); + register_hook('page_end', 'addon/impressum/impressum.php', 'impressum_footer'); logger("installed impressum plugin"); } function impressum_uninstall() { unregister_hook('about_hook', 'addon/impressum/impressum.php', 'impressum_show'); + unregister_hook('page_end', 'addon/impressum/impressum.php', 'impressum_footer'); logger("uninstalled impressum plugin"); } function obfuscate_email ($s) { @@ -21,6 +23,13 @@ function obfuscate_email ($s) { $s = str_replace('.','(dot)',$s); return $s; } +function impressum_footer($a, &$b) { + $text = get_config('impressum','footer_text'); + if (! $text == '') { + $a->page['htmlhead'] .= ''; + $b .= ''; + } +} function impressum_show($a,&$b) { $b .= '

'.t('Impressum').'

'; $owner = get_config('impressum', 'owner'); @@ -56,21 +65,24 @@ function impressum_plugin_admin_post (&$a) { $postal = ((x($_POST, 'postal')) ? (trim($_POST['postal'])) : ''); $notes = ((x($_POST, 'notes')) ? (trim($_POST['notes'])) : ''); $email = ((x($_POST, 'email')) ? notags(trim($_POST['email'])) : ''); + $footer_text = ((x($_POST, 'footer_text')) ? (trim($_POST['footer_text'])) : ''); set_config('impressum','owner',$owner); set_config('impressum','ownerprofile',$ownerprofile); set_config('impressum','postal',$postal); set_config('impressum','email',$email); set_config('impressum','notes',$notes); + set_config('impressum','footer_text',$footer_text); info( t('Settings updated.'). EOL ); } function impressum_plugin_admin (&$a, &$o) { $t = file_get_contents( dirname(__file__). "/admin.tpl" ); $o = replace_macros($t, array( '$submit' => t('Submit'), - '$owner' => array('owner', t('Site Owner'), get_config('impressum','owner'), ''), - '$ownerprofile' => array('ownerprofile', t('Site Owners Profile'), get_config('impressum','ownerprofile'), ''), - '$postal' => array('postal', t('Postal Address'), get_config('impressum','postal'), ''), - '$notes' => array('notes', t('Notes'), get_config('impressum','notes'), ''), - '$email' => array('email', t('Email Address'), get_config('impressum','email'), ''), + '$owner' => array('owner', t('Site Owner'), get_config('impressum','owner'), t('The page operators name.')), + '$ownerprofile' => array('ownerprofile', t('Site Owners Profile'), get_config('impressum','ownerprofile'), t('Profile address of the operator.')), + '$postal' => array('postal', t('Postal Address'), get_config('impressum','postal'), t('How to contact the operator via snail mail.')), + '$notes' => array('notes', t('Notes'), get_config('impressum','notes'), t('Additional notes that are displayed beneath the contact information.')), + '$email' => array('email', t('Email Address'), get_config('impressum','email'), t('How to contact the operator via email. (will be displayed obfuscated)')), + '$footer_text' => array('footer_text', t('Footer note'), get_config('impressum','footer_text'), t('Text for the footer.')), )); } diff --git a/openstreetmap/README b/openstreetmap/README index 5c731fac..beac3a21 100644 --- a/openstreetmap/README +++ b/openstreetmap/README @@ -16,6 +16,9 @@ Support the OpenStreetMap community and share the load. ___ Configuration ___ +If you for any reason prefer to use a configuration file instead +of the admin panels, please refer to the Alternative Configuration below. + Activate the plugin from your admin panel. You can now add a Tile Server and default zoom level in the plugin settings @@ -25,3 +28,21 @@ The Time Server URL points to the tile server you want to use. Use the full URL, with protocol (http/s) and trailing slash. You can configure the default zoom level on the map in the Default Zoom box. 1 will show the whole world and 18 is the highest zoom level available. + + +___ Alternative Configuration ___ + +Open the .htconfig.php file and add "openstreetmap" to the list of activated +addons. + + $a->config['system']['addon'] = "openstreetmap, ..." + +You have to add two configuration variables for the addon: + + $a->config['openstreetmap']['tmsserver'] = 'http://www.openstreetmap.org/'; + $a->config['openstreetmap']['zoom'] = '18'; + +The *tmsserver* points to the tile server you want to use. Use the full URL, +with protocol (http/s) and trailing slash. You can configure the default zoom +level on the map with *zoom*. 1 will show the whole world and 18 is the highest +zoom level available. \ No newline at end of file diff --git a/piwik/README b/piwik/README index e276ccd4..c648a4d1 100755 --- a/piwik/README +++ b/piwik/README @@ -1,6 +1,7 @@ ## Piwik Plugin ## by Tobias Diekershoff + http://diekershoff.homeunix.net/friendika/profile/tobias tobias.diekershoff(at)gmx.net This addon allows you to embed the code necessary for the FLOSS webanalytics @@ -19,6 +20,13 @@ styling the opt-out notice. ### Configuration ### +The easiest way to configure this addon is by activating the admin panels of +your ~friendica server and then enter the needed details on the config page +for the addon. + +If you don't want to use the admin panel, you can configure the addon through +the .htconfig file. + Open the .htconfig.php file and add "piwik" to the list of activated addons. $a->config['system']['addon'] = "piwik, ..." diff --git a/piwik/piwik.php b/piwik/piwik.php index dbb1f45a..3e0d718f 100755 --- a/piwik/piwik.php +++ b/piwik/piwik.php @@ -3,7 +3,7 @@ * Name: Piwik Analytics * Description: Piwik Analytics Plugin for Friendica * Version: 1.1 - * Author: Tobias Diekershoff + * Author: Tobias Diekershoff * Author: Klaus Weidenbach */ @@ -49,7 +49,7 @@ function piwik_analytics($a,&$b) { * associated CSS file. We just have to tell Friendica to get it * into the page header. */ - $a->page['htmlhead'] .= '' . "\r\n"; + $a->page['htmlhead'] .= ''; /* * Get the configuration variables from the .htconfig file. diff --git a/statusnet/README b/statusnet/README index 32c11c7e..df0412d0 100755 --- a/statusnet/README +++ b/statusnet/README @@ -1,5 +1,6 @@ ____ StatusNet Plugin ____ by Tobias Diekershoff + http://diekershoff.homeunix.net/friendika/profile/tobias tobias.diekershoff(at)gmx.net !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! @@ -42,12 +43,35 @@ ___ Configuration ___ __ Global Configuration __ -If you enabled an administrator account, please use the admin panel to cofigure -the StatusNet relay. +If you have configured an admin account, you can configure this plugin from +the admin panel. First activate it from the plugin section of the panel. +Afterwards you will have a separate configuration page for the plugin, where +you can provide a set of globally available OAuth credentials for different +StatusNet pages which will be available for all users of your server. -To activate this addon add statusnet to the list of active addons in your -.htconfig.php file - $a->config['system']['addon'] = "statusnet, ...". +If you don't use the admin panel, you can configure the relay using the +.htconfig.php file of your friendica installation. To activate the relay add +it's name to the list of activated addons. + + $a->config['system']['addon'] = "statusnet, ..." + +If you want to provide preconfigured StatusNet instances for your user add the +credentials for them by adding + +$a->config['statusnet']['sites'] = array ( + array ('sitename' => 'identi.ca', 'apiurl' => 'https://identi.ca/api/', + 'consumersecret' => 'OAuth Consumer Secret here', 'consumerkey' => 'OAuth + Consumer Key here'), + array ('sitename' => 'Some other Server', 'apiurl' => + 'http://status.example.com/api/', 'consumersecret' => 'OAuth + Consumer Secret here', 'consumerkey' => 'OAuth Consumer Key here') +); + +to the config file. + +Regardless of providing global OAuth credentials for your users or not, they +can always add their own OAuth-Key and -Secret thus enable the relay for any +StatusNet instance they may have an account at. __ User Configuration __ diff --git a/statusnet/statusnet.php b/statusnet/statusnet.php index 897c5415..c4100e88 100755 --- a/statusnet/statusnet.php +++ b/statusnet/statusnet.php @@ -3,7 +3,7 @@ * Name: StatusNet Connector * Description: Relay public postings to a connected StatusNet account * Version: 1.0.4 - * Author: Tobias Diekershoff + * Author: Tobias Diekershoff */ /* StatusNet Plugin for Friendica @@ -435,9 +435,9 @@ function statusnet_post_hook(&$a,&$b) { // shorten all the links in a 200000 character long essay. if (! $b['title']=='') { $tmp = $b['title'] . ' : '. $b['body']; - $tmp = substr($tmp, 0, 2*$max_char); + $tmp = substr($tmp, 0, 4*$max_char); } else { - $tmp = substr($b['body'], 0, 2*$max_char); + $tmp = substr($b['body'], 0, 3*$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); @@ -480,7 +480,13 @@ function statusnet_post_hook(&$a,&$b) { $shortlink = short_link( $b['plink'] ); // the new message will be shortened such that "... $shortlink" // will fit into the character limit - $msg = substr($msg, 0, $max_char-strlen($shortlink)-4); + $msg = nl2br(substr($msg, 0, $max_char-strlen($shortlink)-4)); + $msg = str_replace(array('
','
'),' ',$msg); + $e = explode(' ', $msg); + // remove the last word from the cut down message to + // avoid sending cut words to the MicroBlog + array_pop($e); + $msg = implode(' ', $e); $msg .= '... ' . $shortlink; } // and now tweet it :-) diff --git a/twitter/README b/twitter/README index ba396d5d..12bb6664 100755 --- a/twitter/README +++ b/twitter/README @@ -1,5 +1,6 @@ ____ Twitter Plugin ____ By Tobias Diekershoff + http://diekershoff.homeunix.net/friendika/profile/tobias tobias.diekershoff(at)gmx.net !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! @@ -47,17 +48,32 @@ ___ Configuration ___ __ Global Configuration __ -If you enabled an administrator account, please use the admin panel to cofigure -the Twitter relay. +If you enabled an administrator account, please use the admin panel to configure +the Twitter relay. If you for any reason prefer to use a configuration file instead +of the admin panels, please refer to the Alternative Configuration below. Activate the plugin from the plugins section of your admin panel. When you have done so, add your consumer key and consumer secret in the settings section of the plugin page. When this is done your user can now configure their Twitter connection at -"Settings -> Plugin Settings" and enable the forwarding of their *public* +"Settings -> Connector Settings" and enable the forwarding of their *public* messages to Twitter. +__ Alternative Configuration __ + +To activate this addon add @twitter@ to the list of active addons in your +.htconfig.php file + +$a->config['system']['addon'] = "twitter, ..." + +Afterwards you need to add your OAuth consumer key / secret pair to it by +adding the following two lines + +$a->config['twitter']['consumerkey'] = 'your consumer KEY here'; +$a->config['twitter']['consumersecret'] = 'your consumer SECRET here'; + + __ User Configuration __ When the OAuth consumer informations are correctly placed into the @@ -73,3 +89,4 @@ on the "Plugin Settings" page displaying two check boxes. One to enable/disable the forwarding of *all public* postings to Twitter and one to clear the personal configuration from the Twitter credentials. + diff --git a/twitter/twitter.php b/twitter/twitter.php index 006c1615..32b4980f 100755 --- a/twitter/twitter.php +++ b/twitter/twitter.php @@ -3,7 +3,7 @@ * Name: Twitter Connector * Description: Relay public postings to a connected Twitter account * Version: 1.0.3 - * Author: Tobias Diekershoff + * Author: Tobias Diekershoff */ @@ -301,9 +301,9 @@ function twitter_post_hook(&$a,&$b) { // shorten all the links in a 200000 character long essay. if (! $b['title']=='') { $tmp = $b['title'] . ' : '. $b['body']; - $tmp = substr($tmp, 0, 2*$max_char); + $tmp = substr($tmp, 0, 4*$max_char); } else { - $tmp = substr($b['body'], 0, 2*$max_char); + $tmp = substr($b['body'], 0, 3*$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); @@ -345,7 +345,13 @@ function twitter_post_hook(&$a,&$b) { $shortlink = short_link( $b['plink'] ); // the new message will be shortened such that "... $shortlink" // will fit into the character limit - $msg = substr($msg, 0, $max_char-strlen($shortlink)-4); + $msg = nl2br(substr($msg, 0, $max_char-strlen($shortlink)-4)); + $msg = str_replace(array('
','
'),' ',$msg); + $e = explode(' ', $msg); + // remove the last word from the cut down message to + // avoid sending cut words to the MicroBlog + array_pop($e); + $msg = implode(' ', $e); $msg .= '... ' . $shortlink; } // and now tweet it :-)