diff --git a/piwik/README b/piwik/README
index d5060d0b..eefd1cf9 100755
--- a/piwik/README
+++ b/piwik/README
@@ -3,7 +3,7 @@ by Tobias Diekershoff
tobias.diekershoff(at)gmx.net
This addon allows you to embed the code necessary for the FLOSS webanalytics
-tool piwik into the Friendica pages.
+tool Piwik into the Friendica pages.
Online version of this Document: http://ur1.ca/35m2x
@@ -20,17 +20,18 @@ ___ Configuration ___
Open the .htconfig.php file and add "piwik" to the list of activated addons.
$a->config['system']['addon'] = "piwik, ..."
-You have to add 3 more configuration variables for the addon:
-$a->config['piwik']['baseurl'] = 'example.com/piwik/';
-$a->config['piwik']['sideid'] = '1';
-$a->config['piwik']['optout'] = true;
+You have to add 4 more configuration variables for the addon:
+ $a->config['piwik']['baseurl'] = 'example.com/piwik/';
+ $a->config['piwik']['sideid'] = '1';
+ $a->config['piwik']['optout'] = true;
+ $a->config['piwik']['async'] = false;
-The *baseurl* points to your piwik installation. Use the absolute path,
+The *baseurl* points to your Piwik installation. Use the absolute path,
remember trailing slashes but ignore the protocol (http/s) part of the URL.
Change the *sideid* parameter to whatever ID you want to use for tracking your
Friendica installation. The *optout* parameter (true|false) defines whether or
-not a short notice about the utilization of piwik will be displayed on every
+not a short notice about the utilization of Piwik will be displayed on every
page of your Friendica site (at the bottom of the page with some spacing to the
other content). Part of the note is a link that allows the visitor to set an
_opt-out_ cookie which will prevent visits from that user be tracked by piwik.
@@ -41,3 +42,5 @@ Currently the optional notice states the following:
that your visits are logged this way you can set a cookie to prevent Piwik
from tracking further visits of the site (opt-out).
+The *async* parameter (true|false) defines whether or not to use asynchronous
+tracking so pages load (or appear to load) faster.
diff --git a/piwik/admin.tpl b/piwik/admin.tpl
index 0edd0621..e57758a9 100755
--- a/piwik/admin.tpl
+++ b/piwik/admin.tpl
@@ -1,4 +1,5 @@
{{ inc field_input.tpl with $field=$baseurl }}{{ endinc }}
{{ inc field_input.tpl with $field=$siteid }}{{ endinc }}
{{ inc field_checkbox.tpl with $field=$optout }}{{ endinc }}
+{{ inc field_checkbox.tpl with $field=$async }}{{ endinc }}
diff --git a/piwik/piwik.php b/piwik/piwik.php
index 5a46cdb3..dbb1f45a 100755
--- a/piwik/piwik.php
+++ b/piwik/piwik.php
@@ -2,24 +2,25 @@
/**
* Name: Piwik Analytics
* Description: Piwik Analytics Plugin for Friendica
- * Version: 1.0
+ * Version: 1.1
* Author: Tobias Diekershoff
+ * Author: Klaus Weidenbach
*/
-
/* Piwik Analytics Plugin for Friendica
*
* Author: Tobias Diekershoff
* tobias.diekershoff@gmx.net
*
-* License: 3-clause BSD license
+ * License: 3-clause BSD license
*
* Configuration:
- * Add the following two lines to your .htconfig.php file:
+ * Add the following lines to your .htconfig.php file:
*
* $a->config['piwik']['baseurl'] = 'www.example.com/piwik/';
* $a->config['piwik']['siteid'] = '1';
* $a->config['piwik']['optout'] = true; // set to false to disable
+ * $a->config['piwik']['async'] = false; // set to true to enable
*
* Change the siteid to the ID that the Piwik tracker for your Friendica
* installation has. Alter the baseurl to fit your needs, don't care
@@ -32,13 +33,13 @@
function piwik_install() {
register_hook('page_end', 'addon/piwik/piwik.php', 'piwik_analytics');
- logger("installed piwik plugin");
+ logger("installed piwik plugin");
}
function piwik_uninstall() {
unregister_hook('page_end', 'addon/piwik/piwik.php', 'piwik_analytics');
- logger("uninstalled piwik plugin");
+ logger("uninstalled piwik plugin");
}
function piwik_analytics($a,&$b) {
@@ -56,40 +57,50 @@ function piwik_analytics($a,&$b) {
$baseurl = get_config('piwik','baseurl');
$siteid = get_config('piwik','siteid');
$optout = get_config('piwik','optout');
+ $async = get_config('piwik','async');
/*
- * Add the Piwik code for the site.
+ * Add the Piwik tracking code for the site.
+ * If async is set to true use asynchronous tracking
*/
- $b .= "
";
+ }
+
/*
* If the optout variable is set to true then display the notice
* otherwise just include the above code into the page.
*/
if ($optout) {
- $b .= "
";
- $b .= t("This website is tracked using the Piwik analytics tool.");
- $b .= " ";
- $the_url = "http://".$baseurl ."index.php?module=CoreAdminHome&action=optOut";
- $b .= sprintf(t("If you do not want that your visits are logged this way you can set a cookie to prevent Piwik from tracking further visits of the site (opt-out)."), $the_url);
- $b .= "
";
+ $b .= "
";
+ $b .= t("This website is tracked using the Piwik analytics tool.");
+ $b .= " ";
+ $the_url = "http://".$baseurl ."index.php?module=CoreAdminHome&action=optOut";
+ $b .= sprintf(t("If you do not want that your visits are logged this way you can set a cookie to prevent Piwik from tracking further visits of the site (opt-out)."), $the_url);
+ $b .= "