X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=piwik%2Fpiwik.php;h=3e0d718ffaa7c0cdc5330e3d89530bd36efff1cf;hb=1c884b5bdb3e6296307c2e7866e773d5aae1dc6a;hp=890309d4fd5c78f599d025215bc8675726c3fc5c;hpb=056921b1e8d64702535f03e238bc2e451ddca646;p=friendica-addons.git diff --git a/piwik/piwik.php b/piwik/piwik.php old mode 100644 new mode 100755 index 890309d4..3e0d718f --- a/piwik/piwik.php +++ b/piwik/piwik.php @@ -1,27 +1,28 @@ + * Description: Piwik Analytics Plugin for Friendica + * Version: 1.1 + * Author: Tobias Diekershoff + * Author: Klaus Weidenbach */ - -/* Piwik Analytics Plugin for Friendika +/* 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 Friendika + * 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 * about http/https but beware to put the trailing / at the end of your * setting. @@ -32,23 +33,23 @@ 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) { /* * styling of every HTML block added by this plugin is done in the - * associated CSS file. We just have to tell Friendika to get it + * 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. @@ -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 .= "
\r\n \r\n\r\n\r\n
"; + if ($async) { + $a->page['htmlhead'] .= " \r\n\r\n"; + $b .= "
\r\n\r\n
"; + } else { + $b .= "
\r\n \r\n\r\n\r\n
"; + } + /* * 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 .= ""; } - } function piwik_plugin_admin (&$a, &$o) { - $t = file_get_contents( dirname(__file__)."/admin.tpl"); - $o = replace_macros( $t, array( - '$submit' => t('Submit'), - '$baseurl' => array('baseurl', t('Piwik Base URL'), get_config('piwik','baseurl' ), ''), - '$siteid' => array('siteid', t('Site ID'), get_config('piwik','siteid' ), ''), - '$optout' => array('optout', t('Show opt-out cookie link?'), get_config('piwik','optout' ), ''), - )); + $t = file_get_contents( dirname(__file__)."/admin.tpl"); + $o = replace_macros( $t, array( + '$submit' => t('Submit'), + '$baseurl' => array('baseurl', t('Piwik Base URL'), get_config('piwik','baseurl' ), t('Absolute path to your Piwik installation. (without protocol (http/s), with trailing slash)')), + '$siteid' => array('siteid', t('Site ID'), get_config('piwik','siteid' ), ''), + '$optout' => array('optout', t('Show opt-out cookie link?'), get_config('piwik','optout' ), ''), + '$async' => array('async', t('Asynchronous tracking'), get_config('piwik','async' ), ''), + )); } function piwik_plugin_admin_post (&$a) { - $url = ((x($_POST, 'baseurl')) ? notags(trim($_POST['baseurl'])) : ''); - $id = ((x($_POST, 'siteid')) ? trim($_POST['siteid']) : ''); - $optout = ((x($_POST, 'optout')) ? trim($_POST['optout']) : ''); - set_config('piwik', 'baseurl', $url); - set_config('piwik', 'siteid', $id); - set_config('piwik', 'optout', $optout); - info( t('Settings updated.'). EOL); + $url = ((x($_POST, 'baseurl')) ? notags(trim($_POST['baseurl'])) : ''); + $id = ((x($_POST, 'siteid')) ? trim($_POST['siteid']) : ''); + $optout = ((x($_POST, 'optout')) ? trim($_POST['optout']) : ''); + $async = ((x($_POST, 'async')) ? trim($_POST['async']) : ''); + set_config('piwik', 'baseurl', $url); + set_config('piwik', 'siteid', $id); + set_config('piwik', 'optout', $optout); + set_config('piwik', 'async', $async); + info( t('Settings updated.'). EOL); }