[SPIP Zone] [GIS2] et compression js dans SPIP 2.1.10

Bonjour,

Dans GIS2 dernière version, il y a un appel js avec une syntaxe qui me surprend :
<script type="text/javascript" src="http://dev.pyrat.net/lib/h8e7f8b9b-mxn-2.0.17/mxn.js?(googlev3,[geocoder])"></script>

Manifestement, cette syntaxe surprend aussi SPIP 2.1.10 parce que lorsque la compression des js est activée, il semblerait bien que le paramètre ne soit pas conservé : ?(googlev3,[geocoder])

Et du coup, la carto n'est pas affichée.
Il y a une erreur js :
mxn.Mapstraction is not a constructor
http://domaine.tld/mapage.html?var_mode=recalcul
Line 541
La ligne 541 :
map1 = new mxn.Mapstraction(map_container,'googlev3');

==> Est-ce qu'il y a un moyen de dire à SPIP de ne pas compacter un script avec les autres ?

--
RealET

Salut

Le ven. 29 juil. 2011 01:27:43 CEST, RealET a écrit :

Bonjour,

Dans GIS2 dernière version, il y a un appel js avec une syntaxe qui me surprend :
<script type="text/javascript" ...

Manifestement, cette syntaxe surprend aussi SPIP 2.1.10 parce que lorsque la compression des js est activée, il semblerait bien que le paramètre ne soit pas conservé : ?(googlev3,[geocoder])

Oui je sais, j'ai introduit cette modification pour corriger un bug sous ie <9 et safari.

==> Est-ce qu'il y a un moyen de dire à SPIP de ne pas compacter un script avec les autres ?

Oui, l'ancienne syntaxe de l'appel, cf :

Deux solutions sont a envisager : corriger le compacteur ou trouver une autre astuce pour que le script ne soit pas compacté.

++
b_b

* Bruno Bergot tapuscrivait, le 29/07/2011 09:50:

Salut

Le ven. 29 juil. 2011 01:27:43 CEST, RealET a écrit :

Bonjour,

Dans GIS2 dernière version, il y a un appel js avec une syntaxe qui me
surprend :
<script type="text/javascript" ...

Manifestement, cette syntaxe surprend aussi SPIP 2.1.10 parce que
lorsque la compression des js est activée, il semblerait bien que le
paramètre ne soit pas conservé : ?(googlev3,[geocoder])

Oui je sais, j'ai introduit cette modification pour corriger un bug sous
ie <9 et safari.

Connexion · GitLab

==> Est-ce qu'il y a un moyen de dire à SPIP de ne pas compacter un
script avec les autres ?

Oui, l'ancienne syntaxe de l'appel, cf :

Comment empêcher SPIP de compresser automatiquement un script ? - Le labo

Deux solutions sont a envisager : corriger le compacteur ou trouver une
autre astuce pour que le script ne soit pas compacté.

Rah zut alors, je viens de commiter après avoir trouvé Comment empêcher SPIP de compresser automatiquement un script ? - Le labo tout seul.

Que faire ?

--
RealET

Il suffit de poser un id sur la balise script en principe (ça marche pour les css, mais je ne suis pas sur pour les js)

Cédric

Le 29 juil. 2011 à 09:53, RealET <real3t@gmail.com> a écrit :

* Bruno Bergot tapuscrivait, le 29/07/2011 09:50:

Salut

Le ven. 29 juil. 2011 01:27:43 CEST, RealET a écrit :

Bonjour,

Dans GIS2 dernière version, il y a un appel js avec une syntaxe qui me
surprend :
<script type="text/javascript" ...

Manifestement, cette syntaxe surprend aussi SPIP 2.1.10 parce que
lorsque la compression des js est activée, il semblerait bien que le
paramètre ne soit pas conservé : ?(googlev3,[geocoder])

Oui je sais, j'ai introduit cette modification pour corriger un bug sous
ie <9 et safari.

Connexion · GitLab

==> Est-ce qu'il y a un moyen de dire à SPIP de ne pas compacter un
script avec les autres ?

Oui, l'ancienne syntaxe de l'appel, cf :

Comment empêcher SPIP de compresser automatiquement un script ? - Le labo

Deux solutions sont a envisager : corriger le compacteur ou trouver une
autre astuce pour que le script ne soit pas compacté.

Rah zut alors, je viens de commiter après avoir trouvé Comment empêcher SPIP de compresser automatiquement un script ? - Le labo tout seul.

Que faire ?

--
RealET

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

* cedric.morin@yterium.com tapuscrivait, le 29/07/2011 11:09:

Il suffit de poser un id sur la balise script en principe (ça marche pour les css, mais je ne suis pas sur pour les js)

Je viens d'essayer avec :
<script id="js_mxn_pas_compresseur" type="text/javascript" src= ...
Et c'est toujours compressé.
En plus, d'après ce que j'ai lu, id n'est pas un attribut autorisé pour être valide...

--
RealET

Cédric

Le 29 juil. 2011 à 09:53, RealET<real3t@gmail.com> a écrit :

* Bruno Bergot tapuscrivait, le 29/07/2011 09:50:

Salut

Le ven. 29 juil. 2011 01:27:43 CEST, RealET a écrit :

Bonjour,

Dans GIS2 dernière version, il y a un appel js avec une syntaxe qui me
surprend :
<script type="text/javascript" ...

Manifestement, cette syntaxe surprend aussi SPIP 2.1.10 parce que
lorsque la compression des js est activée, il semblerait bien que le
paramètre ne soit pas conservé : ?(googlev3,[geocoder])

Oui je sais, j'ai introduit cette modification pour corriger un bug sous
ie<9 et safari.

Connexion · GitLab

==> Est-ce qu'il y a un moyen de dire à SPIP de ne pas compacter un
script avec les autres ?

Oui, l'ancienne syntaxe de l'appel, cf :

Comment empêcher SPIP de compresser automatiquement un script ? - Le labo

Deux solutions sont a envisager : corriger le compacteur ou trouver une
autre astuce pour que le script ne soit pas compacté.

Rah zut alors, je viens de commiter après avoir trouvé Comment empêcher SPIP de compresser automatiquement un script ? - Le labo tout seul.

Que faire ?

--
RealET

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

--
RealET

Re,

Le ven. 29 juil. 2011 11:16:11 CEST, RealET a écrit :

* cedric.morin@yterium.com tapuscrivait, le 29/07/2011 11:09:

Il suffit de poser un id sur la balise script en principe (ça marche pour les css, mais je ne suis pas sur pour les js)

Je viens d'essayer avec :
<script id="js_mxn_pas_compresseur" type="text/javascript" src= ...
Et c'est toujours compressé.

Le compacteur n'échappe pas les scripts avec un attribut id. Pour ce faire il suffit d'ajouter le test suivant :

AND is_null(extraire_attribut($s, 'name')) # script avec un id : pas touche

ici pour SPIP 3 :

et ici pour SPIP 2.1 :

Avec cette modif en 2.1 les scripts de GIS sont bien échappés du compacteur avec la compression active.

En plus, d'après ce que j'ai lu, id n'est pas un attribut autorisé pour être valide...

Après quelques recherches, un attribut id sur une balise script n'est pas indiqué comme valide dans les specs mais ne provoque pas d'erreur lors de l'analyse par un validateur xhmtl. Et cela ne poserait problème que sur netscape 4...

++
b_b

Le 29 juil. 2011 à 13:59, Bruno Bergot a écrit :

Re,

Le ven. 29 juil. 2011 11:16:11 CEST, RealET a écrit :

* cedric.morin@yterium.com tapuscrivait, le 29/07/2011 11:09:

Il suffit de poser un id sur la balise script en principe (ça marche pour les css, mais je ne suis pas sur pour les js)

Je viens d'essayer avec :
<script id="js_mxn_pas_compresseur" type="text/javascript" src= ...
Et c'est toujours compressé.

Le compacteur n'échappe pas les scripts avec un attribut id. Pour ce faire il suffit d'ajouter le test suivant :

AND is_null(extraire_attribut($s, 'name')) # script avec un id : pas touche

avec 'id' au lieu de 'name' alors :stuck_out_tongue:

ici pour SPIP 3 :

Connexion · GitLab

et ici pour SPIP 2.1 :

Connexion · GitLab

gogogo

Cédric

Re,

Le ven. 29 juil. 2011 15:54:43 CEST, cedric.morin@yterium.com a écrit :

AND is_null(extraire_attribut($s, 'name')) # script avec un id : pas touche

avec 'id' au lieu de 'name' alors :stuck_out_tongue:

Oui bien sûr ^^

gogogo

Cédric

Et voilà pour SPIP 3 :

Pour SPIP 2 :

Et pour GIS2 :

++
b_b