Recherche : les mots n'apparaissent pas en surbrillance #3869

Closed
opened 6 years ago by marcimat · 6 comments
marcimat commented 6 years ago
Owner

Donc, Dimitry M disait, avant que le ticket soit supprimé par inadvertance !

  1. j'effectue une recherche depuis le formulaire de recherche
  2. le squelette "recherche" montre les résultats. Les mots recherchés apparaissent en surbrillance, c'est ok
  3. je clique sur un lien qui renvoie vers un article, une rubrique... depuis le squelette "recherche"
  4. l'affichage ne montre pas les mots en surbrillance

Après recherche, je remarque que _request('recherche') est vide dès que l'on quitte le squelette "recherche". Autrement dit, la recherche n'est pas mémorisée en session

Pour l'instant, et dans mon projet, je contourne le problème en ajoutant aux urls générées dans le squelette "recherche" le code suivant :

?var_recherche=#RECHERCHE

(cela fonctionne avec les URLs libres. "?" peut devoir être remplacé par "&" le cas échéant. C'est du bricolage, mais ça marche, en attendant un patch.).

J'ai voulu essayer de résoudre le problème, mais alors, quand on connaît pas Spip, bonjour !

à quand une réécriture de Spip en objets et en MVC ?</mode troll>

Donc, Dimitry M disait, avant que le ticket soit supprimé par inadvertance ! > 1. j'effectue une recherche depuis le formulaire de recherche > 2. le squelette "recherche" montre les résultats. Les mots recherchés apparaissent en surbrillance, c'est ok > 3. je clique sur un lien qui renvoie vers un article, une rubrique... depuis le squelette "recherche" > 4. l'affichage ne montre pas les mots en surbrillance > > Après recherche, je remarque que _request('recherche') est vide dès que l'on quitte le squelette "recherche". Autrement dit, la recherche n'est pas mémorisée en session > > Pour l'instant, et dans mon projet, je contourne le problème en ajoutant aux urls générées dans le squelette "recherche" le code suivant : > > ?var_recherche=#RECHERCHE > > (cela fonctionne avec les URLs libres. "?" peut devoir être remplacé par "&" le cas échéant. C'est du bricolage, mais ça marche, en attendant un patch.). > > J'ai voulu essayer de résoudre le problème, mais alors, quand on connaît pas Spip, bonjour ! > > <mode troll>à quand une réécriture de Spip en objets et en MVC ?</mode troll>
Poster
Owner

Suite des commentaires, Dimitry M disait :

marcimat ☺☮☯♫ a écrit :

Il n'a jamais été prévu de surbrillance après avoir cliqué un lien de recherche. Donc jusque là ce n'est pas un bug.

Je ne suis pas d'accord, ou alors c'est nouveau sur la branche 3 ?!

Sur un Spip 2, je passe de la page recherche aux autres pages en conservant la surbrillance des termes recherchés et ce, sans passer aucun paramètres en GET.
D'autre part, dans la doc, ici : http://www.spip.net/fr_article903.html il me semble que c'est clairement indiqué ! Et d'ailleurs, à quoi servirait un système de surlignage s'il doit apparaître uniquement sur la page "recherche" ? Pourquoi ne pas supprimer ce système et procéder, également pour cette page, à l'utilisation d'un paramètre dans l'URL ?

Bref, je veux bien davantage de précisions :-)

Suite des commentaires, Dimitry M disait : >> marcimat ☺☮☯♫ a écrit : >> >> Il n'a jamais été prévu de surbrillance après avoir cliqué un lien de recherche. Donc jusque là ce n'est pas un bug. > > Je ne suis pas d'accord, ou alors c'est nouveau sur la branche 3 ?! > > Sur un Spip 2, je passe de la page recherche aux autres pages en conservant la surbrillance des termes recherchés et ce, sans passer aucun paramètres en GET. > D'autre part, dans la doc, ici : http://www.spip.net/fr_article903.html il me semble que c'est clairement indiqué ! Et d'ailleurs, à quoi servirait un système de surlignage s'il doit apparaître uniquement sur la page "recherche" ? Pourquoi ne pas supprimer ce système et procéder, également pour cette page, à l'utilisation d'un paramètre dans l'URL ? > > Bref, je veux bien davantage de précisions :-)
Poster
Owner

Bon donc…

Effectivement il y a eu un changement, après longue étude, venant de https://core.spip.net/projects/spip/repository/revisions/23194

Avant, le surlignage (si la constante _SURLIGNE_RECHERCHE_REFERERS est définie à true), se faisait à partir du referer depuis la page de recherche.
On cherche un terme XXX, ça amène à la page de recherche, on clique un lien, le referer de la nouvelle page est 'http://notresite.tld/spip.php?page=recherche&recherche=XXX', cette URL est identifiée comme un referer de moteur de recherche (par surligner_mots()) et un JS est inséré pour que SearchHighlight.js soit appelé).

Depuis le commit, le JS n'est plus inséré car le réferer a certains caractères remplacé par des espaces (notamment le ':', devenant 'http //'), ce qui fait que les expressions régulières testant les moteurs de recherche ne fonctionnent plus.

Bon donc… Effectivement il y a eu un changement, après longue étude, venant de https://core.spip.net/projects/spip/repository/revisions/23194 Avant, le surlignage (si la constante `_SURLIGNE_RECHERCHE_REFERERS` est définie à true), se faisait à partir du referer depuis la page de recherche. On cherche un terme XXX, ça amène à la page de recherche, on clique un lien, le referer de la nouvelle page est 'http://notresite.tld/spip.php?page=recherche&recherche=XXX', cette URL est identifiée comme un referer de moteur de recherche (par surligner_mots()) et un JS est inséré pour que SearchHighlight.js soit appelé). Depuis le commit, le JS n'est plus inséré car le réferer a certains caractères remplacé par des espaces (notamment le ':', devenant 'http //'), ce qui fait que les expressions régulières testant les moteurs de recherche ne fonctionnent plus.
b_b commented 6 years ago
Owner

Version cible mise à 3.1
Statut changé à En cours

**Version cible mise à 3.1** **Statut changé à En cours**
Owner

dans le doute on va dire que c'est corrigé par e2f3047b0f
Statut changé à Fermé

dans le doute on va dire que c'est corrigé par https://git.spip.net/spip/spip/commit/e2f3047b0ffc4040166520a1d6ca8f83d523eec5 **Statut changé à Fermé**
b_b commented 2 years ago
Owner

Pas de report en 3.2 & 3.1 ? Sinon on change la version cible et zou hein ;p

Pas de report en 3.2 & 3.1 ? Sinon on change la version cible et zou hein ;p
b_b commented 2 years ago
Owner

Reporté par 7246f19662 & 9009d48346

Reporté par https://git.spip.net/spip/spip/commit/7246f196621b79e0bc7511881239964b041d4f24 & https://git.spip.net/spip/spip/commit/9009d483467d81fd50996a110f4d7d895178e639
Sign in to join this conversation.
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
There is no content yet.