Browse Source

Ne nécessite plus Zcore

+ petits corrections dans chaînes de langues
pull/4/head
Akilia 2 years ago
parent
commit
372cc18b76
  1. 16
      inc/tarteaucitron.php
  2. 4
      lang/tarteaucitron_fr.php
  3. 10
      paquet.xml
  4. 55
      tarteaucitron_pipelines.php

16
inc/tarteaucitron.php

@ -22,4 +22,20 @@ function tarteaucitron_actif() {
}
}
return $actif;
}
/**
* Récupérer les js correspondants aux services activés
*
* @return boolean | string
*/
function tarteaucitron_liste_services_actifs() {
$services_actifs = array_filter(lire_config('tarteaucitron/services', array()));
foreach ($services_actifs as $service => $value) {
$ajouter_services .= recuperer_fond('services/'.$service);
}
return $ajouter_services;
}

4
lang/tarteaucitron_fr.php

@ -20,9 +20,9 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
'cfg_placement_bandeau' => 'Placement vertical du bandeau',
'cfg_readmorelink' => 'Lien vers votre page d’explication sur le consentement des cookies.',
'cfg_readmorelink_explication' => 'Exemple : spip.php ?article1, rgpd, etc.',
'cfg_titre_ajouter_services' => 'Liste des services I',
'cfg_titre_ajouter_services' => 'Liste des services',
'cfg_titre_bandeau' => 'Gestion des demandes de consentement',
'cfg_iconposition' => 'Positionner le bouton…',
'cfg_iconposition' => 'Positionner le cookie…',
// L
'legend_bandeau_principal' => 'Le bandeau principal',

10
paquet.xml

@ -1,16 +1,13 @@
<paquet
prefix="tarteaucitron"
categorie="communication"
version="1.1.2"
version="1.2.0"
etat="stable"
compatibilite="[3.1.0;3.3.*]"
logo="prive/themes/spip/images/tarteaucitron-64.png"
documentation="https://contrib.spip.net/Tarteaucitron-5292"
schema="1.0.0"
>
<!--
Paquet généré le 2019-04-03 17:03:42
-->
<nom>Tarteaucitron</nom>
<!-- Gestionnaire conforme de cookies -->
@ -19,9 +16,10 @@
<licence>GNU/GPL</licence>
<credit lien="https://tarteaucitron.io/">Tarteaucitron, by Amauri Champeaux, GPL v3 license</credit>
<credit lien="https://31mille.net">Logo au format SVG par Philippe Guillot</credit>
<pipeline nom="autoriser" inclure="tarteaucitron_autorisations.php" />
<pipeline nom="insert_head" inclure="tarteaucitron_autorisations.php" />
<pipeline nom="recuperer_fond" inclure="tarteaucitron_pipelines.php" />
<pipeline nom="insert_head" inclure="tarteaucitron_pipelines.php" />
<pipeline nom="affichage_final" inclure="tarteaucitron_pipelines.php" />
</paquet>

55
tarteaucitron_pipelines.php

@ -13,6 +13,8 @@ if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
include_spip('inc/tarteaucitron');
/**
* Inserer tarteaucitron.js + le javascript contenant les paramètres venant de la config du plugin
*
@ -24,51 +26,44 @@ if (!defined('_ECRIRE_INC_VERSION')) {
* @return mixed
*/
function tarteaucitron_insert_head($flux) {
include_spip('inc/tarteaucitron');
$tarteaucitron = find_in_path('lib/tarteaucitron/tarteaucitron.js');
$tarteaucitron_config = recuperer_fond('javascript/tarteaucitron_config');
// Note importante : ici on ajoute un id à la déclaration du script pour que celui-ci ne soit pas compressé par le Compresseur de SPIP si ce dernier est activé.
debug('lililili');
debug('lililili');
debug('lililili');
debug('lililili');
debug('lililili');
if (tarteaucitron_actif()) {
$flux .= "<script type='text/javascript' src='$tarteaucitron' id='tauc'></script>\n"
$tarteaucitron = find_in_path('lib/tarteaucitron/tarteaucitron.js');
$tarteaucitron_config = recuperer_fond('javascript/tarteaucitron_config');
debug('lililili');
debug('lililili');
debug('lililili');
debug('lililili');
debug('lililili');
// Note importante : ici on ajoute un id à la déclaration du script pour que celui-ci ne soit pas compressé par le Compresseur de SPIP si ce dernier est activé.
$flux .= "<script type='text/javascript' src='$tarteaucitron' id='tauc'></script>\n"
."$tarteaucitron_config\n";
}
return $flux;
}
/**
* Inserer les JS correspondants aux services activés dans la configuration du plugin
*
* @pipeline recuperer_fond
* @pipeline affichage_final
*
* @param string $flux
* @return mixed
*/
function tarteaucitron_recuperer_fond($flux) {
if (test_plugin_actif('zcore') and $flux['args']['fond'] == 'structure') {
$ajouter_services = null;
// rechercher les skel du type /services/truc.html
$match = '.+[.]html$';
$services = find_all_in_path('services/', $match);
if (count($services)) {
foreach ($services as $squelette => $chemin) {
$type = preg_replace(',[.]html$,i', '', $squelette);
if (lire_config('tarteaucitron/services/'.$type)) {
$ajouter_services .= recuperer_fond('services/'.$type);
}
}
}
function tarteaucitron_affichage_final($page) {
if (!test_espace_prive() and tarteaucitron_actif()) {
$ajouter_services = tarteaucitron_liste_services_actifs();
if ($ajouter_services) {
$flux['data']['texte'] = str_replace('</body>', $ajouter_services. '</body>', $flux['data']['texte']);
$page = str_replace('</body>', $ajouter_services. '</body>', $page);
}
}
return $flux;
}
return $page;
}
Loading…
Cancel
Save