[SPIP Zone] CS et jQuery 1.3

Apparemment on ne peut plus configurer le CS avec jQuery 1.3.2.
Les sélecteurs ne sont plus bons.

syntax error : [@href*='cmd=install']

Ça ne doit plus marcher avec jQuery 1.3. Il doit y avoir une autre écriture qui marche sur 1.2 et 1.3...

--
RastaPopoulos

syntax error : [@href*='cmd=install']

Ça ne doit plus marcher avec jQuery 1.3. Il doit y avoir une autre écriture
qui marche sur 1.2 et 1.3...

il faut mettre [href] en lieu et place de [@href] ; c'est compatible 1.2 et 1.3

-- Fil

En principe, ce pb a été corrigé ya un moment...
Es-tu sûr d'avoir mis à jour le CS !?
Pat

RastaPopoulos a écrit :

Apparemment on ne peut plus configurer le CS avec jQuery 1.3.2.
Les sélecteurs ne sont plus bons.

syntax error : [@href*='cmd=install']

Ça ne doit plus marcher avec jQuery 1.3. Il doit y avoir une autre écriture qui marche sur 1.2 et 1.3...

--
RastaPopoulos

Le 23.03.2009 14:14, Pat a écrit :

En principe, ce pb a été corrigé ya un moment...
Es-tu sûr d'avoir mis à jour le CS !?

C'est avec le paquet téléchargé automatiquement depuis le RSS de contrib. Un sabot quelque part ?

--
RastaPopoulos

Humm,
Il n'y a aucun sabot.
La compatibilité est assurée, je n'ai pas reproduit ton erreur, ni sous SPIP 2.0, ni sous SPIP 2.1 : bref, aucun @href.
Sous SPIP 1.92, le @href est bien présent, mais la version de jQuery en privé est 1.1.1.
Tu dois avoir une vieille version du plugin, un peu de mauvaise foi, ou un gros problème de cache...
Pat

RastaPopoulos a écrit :

Le 23.03.2009 14:14, Pat a écrit :

En principe, ce pb a été corrigé ya un moment...
Es-tu sûr d'avoir mis à jour le CS !?

C'est avec le paquet téléchargé automatiquement depuis le RSS de contrib. Un sabot quelque part ?

--
RastaPopoulos

Le 23.03.2009 20:59, Pat a écrit :

Humm,
Il n'y a aucun sabot.

Pas de sabot effectivement puisque la version indiquée est la "1.8.06.08" qui est bien celle du trunk. Donc je n'ai pas une vieille version.

J'ai SPIP 2.0.6, et j'ai installé le couteau suisse par le RSS de spip-contrib.

Et quand je vais dans l'admin du Couteau Suisse, j'ai cette erreur :
"""""""""""""""
[Exception... "'Syntax error, unrecognized expression: [@href*='cmd=install']' when calling method: [nsIDOMEventListener::handleEvent]" nsresult: "0x8057001e (NS_ERROR_XPC_JS_THREW_STRING)" location: "<unknown>" data: no]
"""""""""""""""

Je fais donc un grep sur le plugin et je vois que dans le code, ligne 196 de exec/admin_couteau_suisse.php, il y a :
"""""""""""""""
jQuery(\"div.cs_aide a["._SEL_JQUERY."href*='cmd=install']\").click( function() {
"""""""""""""""

Je refais donc un grep et je vois que ligne 11 de config_outils.php il y a :
"""""""""""""""
config_outils.php:11:@define('_SEL_JQUERY', defined('_SPIP19300')?'':'@');
"""""""""""""""

Ce qui donne *effectivement* un arobase dans le sélecteur au final.

Qui est-ce qui est de mauvaise foi ? Hihi. :slight_smile:

--
RastaPopoulos

P.S. : Il y a aussi un arobase ligne 9 de outils/set_options.php.

RastaPopoulos a écrit :

Je fais donc un grep sur le plugin et je vois que dans le code, ligne 196 de exec/admin_couteau_suisse.php, il y a :
"""""""""""""""
jQuery(\"div.cs_aide a["._SEL_JQUERY."href*='cmd=install']\").click( function() {
"""""""""""""""

Je refais donc un grep et je vois que ligne 11 de config_outils.php il y a :
"""""""""""""""
config_outils.php:11:@define('_SEL_JQUERY', defined('_SPIP19300')?'':'@');

Cette ligne veut exactement dire que si on est sous SPIP > 1.92 alors on ne met pas d'arobase...

Ce qui donne *effectivement* un arobase dans le sélecteur au final.

C'est pas normal, bien sûr : que vaut la constante '_SPIP19300' sous SPIP 2.0.6 ? En principe : 1
Voici le code (config_options.php:19) :
if (version_compare($GLOBALS['spip_version_code'],'1.9300','>=')) {
  @define('_SPIP19300', 1); @define('_SPIP19200', 1);
  (...)
}

Qui est-ce qui est de mauvaise foi ? Hihi. :slight_smile:

Pas la mauvaise fois, allez, je m'emporte :wink: L'inattention peut-être ?
Si bug il y a vraiment, tu vas/on va le trouver :wink:
N'aurais-tu pas un autre @define('_SPIP19300',...) quelque part dans tes plugins ? N'hésite pas à mettre quelques 'echo' ici ou là...

P.S. : Il y a aussi un arobase ligne 9 de outils/set_options.php.

Oui, ça c'est normal, cet outil n'est plus disponible à partir de la version 2.0 de SPIP.

Pat

Pat a écrit :

if (version_compare($GLOBALS['spip_version_code'],'1.9300','>=')) { @define('_SPIP19300', 1); @define('_SPIP19200', 1);

spip_version_code c'est le numéro svn maintenant...

http://trac.rezo.net/trac/spip/changeset/10990/spip/ecrire/inc_version.php

denisb a écrit :

http://trac.rezo.net/trac/spip/changeset/10990/spip/ecrire/inc_version.php

oupsss :
http://trac.rezo.net/trac/spip/changeset/11056/spip/ecrire/inc_version.php

(le lecteur aura rectifié de lui-même)

Salut,

Après certaines précisions sur IRC (notamment un changement de version forcé de jQuery), le bug est a priori fixé.

Après mise à jour du Couteau Suisse, le test sur '[@' se fait désormais en JavaScript, en fonction de la version de jQuery, et non en PHP, en fonction de la version de SPIP.
Ça prend un poil de ressource serveur en moins, un poil de ressource client en plus, et ça contente tout le monde désormais.

Pat

RastaPopoulos a écrit :

Apparemment on ne peut plus configurer le CS avec jQuery 1.3.2.
Les sélecteurs ne sont plus bons.

syntax error : [@href*='cmd=install']

Ça ne doit plus marcher avec jQuery 1.3. Il doit y avoir une autre écriture qui marche sur 1.2 et 1.3...

--
RastaPopoulos

oui oui denisb, je sais, mais tu fais bien de repréciser
Tous les nombres de spip_version_code sont désormais bien supérieurs à 1.9300 lol

Pat

denisb a écrit :

Pat a écrit :

if (version_compare($GLOBALS['spip_version_code'],'1.9300','>=')) { @define('_SPIP19300', 1); @define('_SPIP19200', 1);

spip_version_code c'est le numéro svn maintenant...

http://trac.rezo.net/trac/spip/changeset/10990/spip/ecrire/inc_version.php