- Statut changé de In progress... à Resolved
- % réalisé changé de 0 à 100
Le problème vient d'un bogue des IE < 9 avec le javascript. Les tableaux dans les IE < 9 ne sont pas conformes au standard ECMA, en l’occurrence, il n'y a pas d'opération indexOf. Pour palier à ce manque, lorsque le navigateur détecté est IE < 9, la méthode indexOf est alors ajoutée au prototype objet des tableaux.
Or, dans certaines circonstances qui nous échappent, lorsque l'on parcours un tableau via le mot-clé in, la méthode ajoutée au prototype peut être considérée comme un élément du tableau (ce mot-clé sert aussi à parcourir les propriétés d'un objet) ! C'est pourquoi, lorsqu'il y a des utilisateurs présélectionnés dans le user panel, on parcours le tableau de leurs identifiant via le mot-clé in en vue de leur affichage et ... à la fin on tombe sur la méthode ajoutée indexOf. Comme on attend un identifiant, avec lequel l'URL d'accès au profil de l'utilisateur est construit, IE (c'est beau) convertit alors la méthode en chaîne de caractères ; c'est-à-dire qu'il sérialise le code de la méthode en string !!!! Et voilà le code de la méthode présent dans une URL !
Un palliatif à ce bogue dans l'interpréteur javascript de IE a été de remplacer le parcours de tableaux dans le user panel avec le mot-clé in par la vieille façon à-la C.