Changeset 81292 in spip-zone


Ignore:
Timestamp:
Mar 10, 2014, 6:55:56 PM (5 years ago)
Author:
xdjuj@…
Message:

Conformité CNIL avec les histoires de cookies :

  • un oui/non dans la configuration qui permet d'insérer (ou pas) le petit JS recommandé par la CNIL

Documentation :

Location:
_plugins_/spip_piwik/spip_piwik_2_0
Files:
1 added
6 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/spip_piwik/spip_piwik_2_0/formulaires/configurer_piwik.html

    r62893 r81292  
    3131                                size=50
    3232                        })]
     33
    3334                        [(#CONFIG{piwik/token}|et{#CONFIG{piwik/user}}|oui)
    3435                                [(#SET{defaut,[(#URL_SITE_SPIP)]})]
     
    9394                                                multiple=oui})]
    9495                                ]
     96
     97                                [(#SAISIE{oui_non, conformite_cnil,
     98                                        label=<:piwik:label_conformite_cnil:>,
     99                                        explication=<:piwik:explication_conformite_cnil:>
     100                                })]
     101
    95102                        ]
    96103                </ul>
  • _plugins_/spip_piwik/spip_piwik_2_0/lang/piwik_fr.php

    r76273 r81292  
    1818        // E
    1919        'explication_adresse_serveur' => 'Entrez l’adresse sans "http://" ni "https://" ni slash final',
     20        'explication_conformite_cnil' => 'Insère une <a href="http://www.cnil.fr/fileadmin/documents/approfondir/dossier/internet/Configuration_piwik.pdf">fonction JavaScript</a> qui permet la <a href="http://www.cnil.fr/vos-obligations/sites-web-cookies-et-autres-traceurs/outils-et-codes-sources/la-mesure-daudience/">mise en conformité avec la réglementation Cookie</a> instaurée par la CNIL.',
    2021        'explication_creer_site' => 'Le lien ci-dessous vous permet de créer un site sur le serveur Piwik qui sera disponible ensuite dans la liste. Vérifiez que vous avez bien configuré l’adresse et le nom de votre site SPIP avant de cliquer, ce sont ces informations qui seront utilisées.',
    2122        'explication_exclure_ips' => 'Pour exclure plusieurs adresses, séparez les par des points virgules',
     
    3435        'label_adresse_serveur' => 'Adresse URL du serveur (https:// ou http://)',
    3536        'label_comptabiliser_prive' => 'Comptabiliser les visites de l’espace privé',
     37        'label_conformite_cnil' => 'Conformité CNIL',
    3638        'label_creer_site' => 'Créer un site sur le serveur Piwik',
    3739        'label_exclure_ips' => 'Exclure certaines adresses IP',
  • _plugins_/spip_piwik/spip_piwik_2_0/paquet.xml

    r78307 r81292  
    22        prefix="piwik"
    33        categorie="statistique"
    4         version="0.6.0"
     4        version="0.6.1"
    55        etat="stable"
    66        compatibilite="[2.0.8;3.0.*]"
  • _plugins_/spip_piwik/spip_piwik_2_0/piwik_pipelines.php

    r72440 r81292  
    7676        $id_piwik = $config['idpiwik'];
    7777        $url_piwik = $config['urlpiwik'];
     78        $conformite_cnil = '';
     79        if($config['conformite_cnil']=="on"){
     80                $conformite_cnil = '
     81                '.recuperer_fond("inc/js-cnil");
     82        }
    7883        $afficher_js = true;
    7984
     
    9499                if($afficher_js){
    95100                        $ret .= "
    96                                 <script type='text/javascript'>var _paq = _paq || [];
    97                                         (function(){ var u=(('https:' == document.location.protocol) ? 'https://$url_piwik/' : 'http://$url_piwik/');
    98                                         _paq.push(['setSiteId', $id_piwik]);
    99                                         _paq.push(['setTrackerUrl', u+'piwik.php']);
    100                                         _paq.push(['trackPageView']);
    101                                         _paq.push(['enableLinkTracking']);
    102                                         var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.type='text/javascript'; g.defer=true; g.async=true; g.src=u+'piwik.js';
    103                                         s.parentNode.insertBefore(g,s); })();
    104                                 </script>";
     101<script type='text/javascript'>var _paq = _paq || [];$conformite_cnil
     102        (function(){ var u=(('https:' == document.location.protocol) ? 'https://$url_piwik/' : 'http://$url_piwik/');
     103        _paq.push(['setSiteId', $id_piwik]);
     104        _paq.push(['setTrackerUrl', u+'piwik.php']);
     105        _paq.push(['trackPageView']);
     106        _paq.push(['enableLinkTracking']);
     107        var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.type='text/javascript'; g.defer=true; g.async=true; g.src=u+'piwik.js';
     108        s.parentNode.insertBefore(g,s); })();
     109</script>";
    105110                }
    106111        }
     
    118123 *              Le contexte du pipeline modifié auquel on a ajouté nos erreurs potentielles
    119124 */
    120 function piwik_formulaire_verifier($flux){
    121         if($flux['args']['form'] == 'configurer_piwik'){
    122                 $obligatoires = array('token','user','urlpiwik');
    123                 foreach($obligatoires as $obligatoire){
    124                         if(!_request($obligatoire)){
    125                                 $flux['data'][$obligatoire] = _T('info_obligatoire');
    126                         }
    127                 }
     125// function piwik_formulaire_verifier($flux){
     126//      if($flux['args']['form'] == 'configurer_piwik'){
     127//              $obligatoires = array('token','user','urlpiwik');
     128//              foreach($obligatoires as $obligatoire){
     129//                      if(!_request($obligatoire)){
     130//                              $flux['data'][$obligatoire] = _T('info_obligatoire');
     131//                      }
     132//              }
    128133               
    129                 $piwik_token = _request('token');
    130                 if (!$flux['data']['token'] && !preg_match('/^[a-f0-9]{32}$/i',$piwik_token)) {
    131                         $flux['data']['token'] = _T('piwik:cfg_erreur_token');
    132                         return $flux;
    133                 }
    134                 $piwik_url = 'http://'._request('urlpiwik').'/';
     134//              $piwik_token = _request('token');
     135//              if (!$flux['data']['token'] && !preg_match('/^[a-f0-9]{32}$/i',$piwik_token)) {
     136//                      $flux['data']['token'] = _T('piwik:cfg_erreur_token');
     137//                      return $flux;
     138//              }
     139//              $piwik_url = 'http://'._request('urlpiwik').'/';
    135140               
    136                 $piwik_recuperer_data = charger_fonction('piwik_recuperer_data','inc');
     141//              $piwik_recuperer_data = charger_fonction('piwik_recuperer_data','inc');
    137142               
    138                 /**
    139                  * Vérifier la correspondance nom d'utilisateur/ token
    140                  * Qui nous permettra par la suite de définir d'autres choses
    141                  */
    142                 $method_verif_user = 'UsersManager.getUser';
    143                 $options_user = array('userLogin'=>_request('user'));
    144                 $datas_user = $piwik_recuperer_data($piwik_url,$piwik_token,'',$method_verif_user,'PHP',$options_user);
    145                 if(is_array($datas_user = unserialize($datas_user))){
    146                         if(!$flux['data']['user'] && $flux['data']['result'] == 'error'){
    147                                 $flux['data']['user'] = _T('piwik:cfg_erreur_user_token');
    148                         }
    149                         /**
    150                          * Vérifier que ce token est un token admin
    151                          * Si non : mettre une meta comme quoi il n'est pas admin pour créer des sites
    152                          */
    153                         $method_verif_user_bis = 'UsersManager.getUsers';
    154                         $datas_user_bis = $piwik_recuperer_data($piwik_url,$piwik_token,'',$method_verif_user_bis,'PHP');
    155                         $datas_user_bis = unserialize($datas_user_bis);
    156                         if(is_array($datas_user_bis) && ($datas_user_bis['result'] == 'error')){
    157                                 ecrire_meta('piwik_admin', 'non');
    158                         }else{
    159                                 ecrire_meta('piwik_admin', 'oui');
    160                                 unset($flux['data']['user']);
    161                         }
    162                 }
     143//              /**
     144//               * Vérifier la correspondance nom d'utilisateur/ token
     145//               * Qui nous permettra par la suite de définir d'autres choses
     146//               */
     147//              $method_verif_user = 'UsersManager.getUser';
     148//              $options_user = array('userLogin'=>_request('user'));
     149//              $datas_user = $piwik_recuperer_data($piwik_url,$piwik_token,'',$method_verif_user,'PHP',$options_user);
     150//              if(is_array($datas_user = unserialize($datas_user))){
     151//                      if(!$flux['data']['user'] && $flux['data']['result'] == 'error'){
     152//                              $flux['data']['user'] = _T('piwik:cfg_erreur_user_token');
     153//                      }
     154//                      /**
     155//                       * Vérifier que ce token est un token admin
     156//                       * Si non : mettre une meta comme quoi il n'est pas admin pour créer des sites
     157//                       */
     158//                      $method_verif_user_bis = 'UsersManager.getUsers';
     159//                      $datas_user_bis = $piwik_recuperer_data($piwik_url,$piwik_token,'',$method_verif_user_bis,'PHP');
     160//                      $datas_user_bis = unserialize($datas_user_bis);
     161//                      if(is_array($datas_user_bis) && ($datas_user_bis['result'] == 'error')){
     162//                              ecrire_meta('piwik_admin', 'non');
     163//                      }else{
     164//                              ecrire_meta('piwik_admin', 'oui');
     165//                              unset($flux['data']['user']);
     166//                      }
     167//              }
    163168       
    164                 /**
    165                  * Récupération de la liste des sites où cet utilisateur
    166                  * a les droits d'admin
    167                  */
    168                 $method = 'SitesManager.getSitesWithAdminAccess';
    169                 $datas = $piwik_recuperer_data($piwik_url,$piwik_token,'',$method,'PHP');
    170                 if(!$flux['data']['urlpiwik'] && !is_array(unserialize($datas))){
    171                         $flux['data']['urlpiwik'] = _T('piwik:cfg_erreur_recuperation_data');
    172                 }else{
    173                         ecrire_meta('piwik_sites_dispo', $datas);       
    174                 }
    175         }
    176         return $flux;
    177 }
     169//              /**
     170//               * Récupération de la liste des sites où cet utilisateur
     171//               * a les droits d'admin
     172//               */
     173//              $method = 'SitesManager.getSitesWithAdminAccess';
     174//              $datas = $piwik_recuperer_data($piwik_url,$piwik_token,'',$method,'PHP');
     175//              if(!$flux['data']['urlpiwik'] && !is_array(unserialize($datas))){
     176//                      $flux['data']['urlpiwik'] = _T('piwik:cfg_erreur_recuperation_data');
     177//              }else{
     178//                      ecrire_meta('piwik_sites_dispo', $datas);       
     179//              }
     180//      }
     181//      return $flux;
     182// }
    178183?>
  • _plugins_/spip_piwik/spip_piwik_2_0/plugin.xml

    r78307 r81292  
    33        <slogan>Interfacer Spip et Piwik</slogan>
    44        <auteur>jsb, kent1</auteur>
    5         <version>0.6.0</version>
     5        <version>0.6.1</version>
    66        <licence>GNU/GPL</licence>
    77        <etat>stable</etat>
  • _plugins_/spip_piwik/spip_piwik_2_0/prive/piwik.html

    r72440 r81292  
    11#CACHE{0}
    22<script type="text/javascript">
    3 var _paq = _paq || [];
     3var _paq = _paq || [];[(#CONFIG{piwik/conformite_cnil}|=={on}|oui)
     4<INCLURE{fond=inc/js-cnil} />
     5]
    46(function(){ var u=(("https:" == document.location.protocol) ? "https://#CONFIG{piwik/urlpiwik}/" : "http://#CONFIG{piwik/urlpiwik}/");
    57_paq.push(['setSiteId', #CONFIG{piwik/idpiwik}]);
Note: See TracChangeset for help on using the changeset viewer.