[SPIP Zone] Cookies et consentement : intégration de tarteaucitron

Yop,

dans la continuité de https://contrib.spip.net/Gestion-Mon-Compte, j'ai initié un plugin SPIP qui intègre le scripte JS Tarteaucitron, recommandé par la CNIL.

Il est ici pour le moment : https://github.com/akilia/tarteaucitron

Tout marche bien sauf si j'active la compression des scripts (javascript), auquel cas ça ne marche plus et j'ai une erreur dans la console :

"""Le script à l’adresse « http://localhost/glop/local/cache-js/lang/tarteaucitron.fr.js?v=20181023 » a été chargé alors que son type MIME (« text/html ») n’est pas un type MIME JavaScript valide"""

Je ne vois pas comment résoudre ce problème ?

Muchas

Hop,

Le 08/07/2019 à 19:17, peetdu a écrit :

Yop,

dans la continuité de Gestion Mon Compte, j'ai initié un plugin SPIP qui intègre le scripte JS Tarteaucitron, recommandé par la CNIL.

Il est ici pour le moment : https://github.com/akilia/tarteaucitron

Tout marche bien sauf si j'active la compression des scripts (javascript), auquel cas ça ne marche plus et j'ai une erreur dans la console :

"""Le script à l’adresse « http://localhost/glop/local/cache-js/lang/tarteaucitron.fr.js?v=20181023 » a été chargé alors que son type MIME (« text/html ») n’est pas un type MIME JavaScript valide"""

Je ne vois pas comment résoudre ce problème ?

De ce que je vois, tu génères ton js avec produire_fond_statique() depuis cette ligne :

https://github.com/akilia/tarteaucitron/blob/master/tarteaucitron_pipelines.php#L32

Mais comme tu ne précises pas le format du fichier à générer, tu retombe sur la valeur par défaut, donc du html cf :

Si le format (css ou js) est passe dans contexte['format'], on l'utilise sinon on regarde si le fond finit par .css ou .js, sinon on utilie "html"

https://code.spip.net/autodoc/tree/ecrire/inc/filtres.php.html#function_produire_fond_statique

++
b_b

Hé peetdu ! coucou

J'ai aussi eu ce problème, sans compression, je l'ai résolu en prenant
soin que les JS d'appel et de commandes de tarteaucitron se suivent.

Ne me demandez pas pourquoi mais ça a marché :slight_smile:

++

touti

Le 08/07/2019 à 19:17, peetdu a écrit :

Yop,

dans la continuité de Gestion Mon Compte,
j'ai initié un plugin SPIP qui intègre le scripte JS Tarteaucitron,
recommandé par la CNIL.

Il est ici pour le moment : https://github.com/akilia/tarteaucitron

Tout marche bien sauf si j'active la compression des scripts
(javascript), auquel cas ça ne marche plus et j'ai une erreur dans la
console :

"""Le script à l’adresse «
http://localhost/glop/local/cache-js/lang/tarteaucitron.fr.js?v=20181023
» a été chargé alors que son type MIME (« text/html ») n’est pas un
type MIME JavaScript valide"""

Je ne vois pas comment résoudre ce problème ?

Muchas

----
spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone

Hello everybody,

merci pour vos pistes.

J'ai remis le nez dans le code en suivant vos indications.

Mon impression maintenant est que le script tarteaucitron.js ne supporte pas la compression Spipienne. C'est lui qui à la charge d'ajouter automatiquement en fonction du contexte le bon fichier de langue ( tarteaucitron.fr.js par exemple) et si il est compressé, ça plante, l'ajout ne se fait pas.

Je vais continuer à investiguer et je vous tiens au courant…

++
P

J'ai aussi eu ce problème, sans compression, je l'ai résolu en prenant
soin que les JS d'appel et de commandes de tarteaucitron se suivent.

Ne me demandez pas pourquoi mais ça a marché :slight_smile:

++

touti

Le 08/07/2019 à 19:17, peetdu a écrit :

Yop,

dans la continuité de Gestion Mon Compte,
j'ai initié un plugin SPIP qui intègre le scripte JS Tarteaucitron,
recommandé par la CNIL.

Il est ici pour le moment : https://github.com/akilia/tarteaucitron

Tout marche bien sauf si j'active la compression des scripts
(javascript), auquel cas ça ne marche plus et j'ai une erreur dans la
console :

"""Le script à l’adresse «
http://localhost/glop/local/cache-js/lang/tarteaucitron.fr.js?v=20181023
» a été chargé alors que son type MIME (« text/html ») n’est pas un
type MIME JavaScript valide"""

Je ne vois pas comment résoudre ce problème ?

Muchas

----
spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone

----
spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone

Le 10/07/2019 à 12:01, peetdu a écrit :

Hello everybody,

merci pour vos pistes.

J'ai remis le nez dans le code en suivant vos indications.

Mon impression maintenant est que le script tarteaucitron.js ne supporte pas la compression Spipienne. C'est lui qui à la charge d'ajouter automatiquement en fonction du contexte le bon fichier de langue ( tarteaucitron.fr.js par exemple) et si il est compressé, ça plante, l'ajout ne se fait pas.

Je vais continuer à investiguer et je vous tiens au courant…

Hello

Rien a voir directement avec le script js,
mais J'utilise la même méthode pour insérer des scripts js.html (sur le plugin lazysizes), et je n'utilisais pas l'option qui force le format que signalais b_b,
j'ai testé avec la compression activé je ne rencontre pas de soucis (question de pourquoi ça marche :P).

Pour ton script tu peut mettre un id pour qu'il ne soit pas pris en compte par le compresseur, par contre…

--
Bonne journée
Arnaud B. (Mist. GraphX)

Hello tu peux ajouter id=« tarteaucitron » en attribut de la balise <script pour esquiver le compresseur :slight_smile:

Le mer. 10 juil. 2019 à 13:06, Mist. GraphX <arnaud.berard@mister-graphx.com> a écrit :

Le 10/07/2019 à 12:01, peetdu a écrit :

Hello everybody,

merci pour vos pistes.

J’ai remis le nez dans le code en suivant vos indications.

Mon impression maintenant est que le script tarteaucitron.js ne
supporte pas la compression Spipienne. C’est lui qui à la charge
d’ajouter automatiquement en fonction du contexte le bon fichier de
langue ( tarteaucitron.fr.js par exemple) et si il est compressé, ça
plante, l’ajout ne se fait pas.

Je vais continuer à investiguer et je vous tiens au courant…

Hello

Rien a voir directement avec le script js,
mais J’utilise la même méthode pour insérer des scripts js.html (sur le
plugin lazysizes), et je n’utilisais pas l’option qui force le format
que signalais b_b,
j’ai testé avec la compression activé je ne rencontre pas de soucis
(question de pourquoi ça marche :P).

Pour ton script tu peut mettre un id pour qu’il ne soit pas pris en
compte par le compresseur, par contre…


Bonne journée
Arnaud B. (Mist. GraphX)


spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone

Hop,

j'ai trouvé une solution : j'intègre le JS avec le pipeline recuperer_fond(). Du coup, je suis sûr qu'il ne passera pas par le compresseur SPIP si ce dernier est activé.

Je continue à le tester…

Il restera à lui trouver une place dans les contribs :
1- il me semble que le nom "tarteaucitron" n'était pas un bon choix. Je préférais un qqc comme Cookieqqc. Des suggestions ?
2- il faudrait voir ce qu'on fait des autres plugins
--> CookieBar n'est plus maintenu par son développeur JS (voir jQuery CookieBar, a jQuery solution to the EU cookie laws)
--> CookieChoices je sais pas.
--> cibc : bannière d’avertissement pour les cookies. Je sais pas non plus.
3- finir la doc (je m'en charge of course)

Si vous avez des avis…
Voir https://github.com/akilia/tarteaucitron

++
P

Mon impression maintenant est que le script tarteaucitron.js ne supporte pas la compression Spipienne. C'est lui qui à la charge d'ajouter automatiquement en fonction du contexte le bon fichier de langue ( tarteaucitron.fr.js par exemple) et si il est compressé, ça plante, l'ajout ne se fait pas.

Je vais continuer à investiguer et je vous tiens au courant…

++
P

J'ai aussi eu ce problème, sans compression, je l'ai résolu en prenant
soin que les JS d'appel et de commandes de tarteaucitron se suivent.

Ne me demandez pas pourquoi mais ça a marché :slight_smile:

++

touti

Le 08/07/2019 à 19:17, peetdu a écrit :

Yop,

dans la continuité de Gestion Mon Compte,
j'ai initié un plugin SPIP qui intègre le scripte JS Tarteaucitron,
recommandé par la CNIL.

Il est ici pour le moment : https://github.com/akilia/tarteaucitron

Tout marche bien sauf si j'active la compression des scripts
(javascript), auquel cas ça ne marche plus et j'ai une erreur dans la
console :

"""Le script à l’adresse «
http://localhost/glop/local/cache-js/lang/tarteaucitron.fr.js?v=20181023
» a été chargé alors que son type MIME (« text/html ») n’est pas un
type MIME JavaScript valide"""

Je ne vois pas comment résoudre ce problème ?

Muchas

----
spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone

----
spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone

----
spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone

Vlipa

Hello tu peux ajouter id="tarteaucitron" en attribut de la balise <script pour esquiver le compresseur :slight_smile:

ah ben oui. Merci Mist. GraphX et Pierrox.
Je vais tester ça…

P

Le mer. 10 juil. 2019 à 13:06, Mist. GraphX <arnaud.berard@mister-graphx.com <mailto:arnaud.berard@mister-graphx.com>> a écrit :

    Le 10/07/2019 à 12:01, peetdu a écrit :
     > Hello everybody,
     >
     > merci pour vos pistes.
     >
     > J'ai remis le nez dans le code en suivant vos indications.
     >
     > Mon impression maintenant est que le script tarteaucitron.js ne
     > supporte pas la compression Spipienne. C'est lui qui à la charge
     > d'ajouter automatiquement en fonction du contexte le bon fichier de
     > langue ( tarteaucitron.fr.js par exemple) et si il est compressé, ça
     > plante, l'ajout ne se fait pas.
     >
     > Je vais continuer à investiguer et je vous tiens au courant…

    Hello

    Rien a voir directement avec le script js,
    mais J'utilise la même méthode pour insérer des scripts js.html (sur le
    plugin lazysizes), et je n'utilisais pas l'option qui force le format
    que signalais b_b,
    j'ai testé avec la compression activé je ne rencontre pas de soucis
    (question de pourquoi ça marche :P).

    Pour ton script tu peut mettre un id pour qu'il ne soit pas pris en
    compte par le compresseur, par contre…

    -- Bonne journée
    Arnaud B. (Mist. GraphX)

    ----
    spip-zone@rezo.net <mailto:spip-zone@rezo.net> -
    https://listes.rezo.net/mailman/listinfo/spip-zone

----
spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone

Le 10/07/2019 à 15:27, peetdu a écrit :

j'ai trouvé une solution : j'intègre le JS avec le pipeline recuperer_fond(). Du coup, je suis sûr qu'il ne passera pas par le compresseur SPIP si ce dernier est activé.

ha et du coup tu le inline direct dans le html ça t'économise un appel ?

parceque j'me disait que ça pourrais être une idée aussi d'inclure le script inline, si il est autonome et pas trop volumineux…
et doit être chargé le plus tôt possible.

niveau test et outils de perfs le diagnostique serait mieux, mais est ce que ce serait vraiment mieux dans le concret (? :P)

--
Bonne journée
Arnaud B. (Mist. GraphX)

j'ai trouvé une solution : j'intègre le JS avec le pipeline recuperer_fond(). Du coup, je suis sûr qu'il ne passera pas par le compresseur SPIP si ce dernier est activé.

ha et du coup tu le inline direct dans le html ça t'économise un appel ?

parceque j'me disait que ça pourrais être une idée aussi d'inclure le script inline, si il est autonome et pas trop volumineux…
et doit être chargé le plus tôt possible.

niveau test et outils de perfs le diagnostique serait mieux, mais est ce que ce serait vraiment mieux dans le concret (? :P)

En fait le fil de discussion est trompeur : ce message est parti en même temps que ta suggestion concernant l'ajout du ID dans la déclaration d'inclusion du JS. Je vais tester cette idée de l'ID.

Pour le reste je sais pas…

cheers

Le 10/07/2019 à 15:27, peetdu a écrit :

Il restera à lui trouver une place dans les contribs :
1- il me semble que le nom "tarteaucitron" n'était pas un bon choix. Je préférais un qqc comme Cookieqqc. Des suggestions ?

Ben, même si c'est un peu... abstrait, c'est quand même le nom de ce script, qui est assez connu (recommandé officiellement par la CNIL par exemple).

Du coup, tu peux peut être élargir avec d'autres termes dans la description, pour le moteur de recherche de SVP (si c'est pris en compte), mais ça me semblerait pertinent de garder tarteaucitron dans le nom.

--
nicod_

Hop,

Ben, même si c'est un peu... abstrait, c'est quand même le nom de ce script, qui est assez connu (recommandé officiellement par la CNIL par exemple).

Ok ok.

Le plugin est mieux me semble t-il et la doc remise à jour.

Je m'en sert sur 4 sites et le côté Plug'nPlay est quand même assez agréable (i.e. rapide à mettre en place).

Thx everybody
--
P