[spip-dev] Proposition de correction

Bonjour

Quand on active le multilinguisme sur les articles, et qu'on se trouve dans la page de presentation d'un article, on a le cadre "LANGUE DE L'ARTICLE" qui affiche toutes traductions de l'article. Avec la puce de statut devant. Dans la colonne de droite de la page on a le cadre "Dans la meme rubrique" qui affiche les meme traductions avec les memes puces...
Et on se retrouve avec 2 puces par article qui ont le meme id (et pareil pour le span parent)... Et donc la div de changement de statut n'apparait pas au bon endroit quand on survole une puce...

Serait-il possible (enfin si utiliser microtime est correct, sinon faudrait generer un aleatoire) de rajouter ce code dans la fonction puce_statut_article_dist de ecrire/inc/puce_statut.php :

Au debut : $mt = preg_replace('/\D/','', microtime());

4 lignes plus bas modifier $ajax_node = " id='imgstatut$mt$type$id'";

Et encore plus bas : $nom = "puce_statut_$mt_";

Serait-il possible (enfin si utiliser microtime est correct, sinon faudrait
generer un aleatoire) de rajouter ce code dans la fonction
puce_statut_article_dist de ecrire/inc/puce_statut.php :

4 lignes plus bas modifier $ajax_node = " id='imgstatut$mt$type$id'";

En effet y a un bug. Mais plutôt qu'un microtime() aléatoire, pourquoi
ne pas plutôt leur donner un id correspondant à leur id_article ?

-- Fil

Le $id present dans la construction de l'id du span ou de l'image est deja l'id de l'article, non ?

En effet y a un bug. Mais plutôt qu'un microtime() aléatoire, pourquoi
ne pas plutôt leur donner un id correspondant à leur id_article ?

Le $id present dans la construction de l'id du span ou de l'image est deja
l'id de l'article, non ?

je parle de l'id_article de la traduction, pas de l'original

-- Fil

Oui, c'est le meme article. L'article de traduction est affiche 2 fois 'une fois dans les articles de la meme rubrique et une fois dans le bloc des articles traduits

Oui, c'est le meme article. L'article de traduction est affiche 2 fois 'une
fois dans les articles de la meme rubrique et une fois dans le bloc des
articles traduits

Ah OK, alors dans ce cas pourquoi ne pas mettre un truc fixe ("-bloc2") ?

-- Fil

Ben parce que c'est la meme fonction qui est appelee depuis chacun des blocs avec les memes parametres. Donc pas de distinction possible sauf qu'elles ne sont pas appelees en meme temps mais normalement l'une apres l'autre, d'ou microtime(). L'autre solution serait de rajouter un parametre effectivement indiquant d'ou on appelle la fonction. Ou de rajouter une variable private (ca existe en php ?) qu'on incremente.

Ben parce que c'est la meme fonction qui est appelee depuis chacun des blocs
avec les memes parametres. Donc pas de distinction possible sauf qu'elles ne
sont pas appelees en meme temps mais normalement l'une apres l'autre, d'ou
microtime(). L'autre solution serait de rajouter un parametre effectivement
indiquant d'ou on appelle la fonction. Ou de rajouter une variable private
(ca existe en php ?) qu'on incremente.

je comprends ; oui, c'est static:

maintenant tu as tout pour faire le patch :slight_smile:

-- Fil

Ouh la... je ne suis pas dev... mais je peux tester chez moi en envoyer le fichier a un dev... genre b_b :wink: