Bug #4632

The functions _searchOptionsValues are never launched

Added by orthagh over 6 years ago. Updated about 6 years ago.

Status:ClosedStart date:
Priority:NormalDue date:
Assignee:orthagh% Done:

100%

Category:Search Engine
Target version:0.84.4

Description

in ajax/searchoptionvalues.php l124, break is misplaced.


Related issues

Related to GLPI-PROJECT - Feature #4691: Adapt getValueToSelect / getValueToDisplay to be used by ... Feedback 12/04/2013

Associated revisions

Revision 22161
Added by orthagh over 6 years ago

[0.84]fix _searchOptionsValues hook; fixed #4632

Revision 22162
Added by orthagh over 6 years ago

report previous commit; see #4632

History

#1 Updated by orthagh over 6 years ago

  • Status changed from New to Resolved
  • % Done changed from 0 to 100

Applied in changeset r22161.

#2 Updated by tsmr over 6 years ago

Ne faudrait-il pas remonter tout le bloc concernant les plugins ? avant le if (!$display && isset($searchopt['field'])) { ?

#3 Updated by moyo over 6 years ago

Non je ne pense pas que ce soit une bonne idée.

Il n'y a pas d'intérêt à ne pas utiliser les éléments classiques.

#4 Updated by tsmr over 6 years ago

Je ne suis pas d'accord :
Exemple :
- Je veux utiliser un dropdown qui m'est propre (pour lister des champs spécifiques à mon plugin) dans le moteur de recherche sur les tickets : J'utilise donc le hook _searchOptionsValues

Si tu enlève le hook, je ne pourrais plus montrer mon dropdown dans le moteur de recherche car je serait limité au $item->getValueToSelect. C'est d'ailleurs pour cela que je souhaite le remonter car pour ma part pour l'instant, il n'est pas lancé si on est positionné sur un type du coeur.

#5 Updated by moyo over 6 years ago

Tu n'es pas d'accord avec quoi dans mon commentaire ? la partie que j'ai supprimé après avoir relu ce que j'avais écrit ?

Si ce sont des champs spécifiques à ton plugin tu n'utilises pas de datatype standard et getValueToSelect ne retournera rien donc...
Bref, je ne comprend pas vraiment ta remarque.

#6 Updated by moyo over 6 years ago

En y reréflechissant je pense que ce Hook est effectivement inutile...
Il devrait être remplacer pour avoir quelquechose de standard par des hooks dans les fonctions getValueToSelect / getValueToDisplay...

Mais bon je dis ca je dis rien...

#7 Updated by orthagh over 6 years ago

effectivement, il est en doublon avec le getValueToSelect
Dans mon développement actuel, j'ai d'ailleurs utilisé cette nouvelle fonction.

Mais en regardant rapidement, j'ai constaté que des plugins en version 0.84 utilisaient encore cette fonction (notamment fusioninventory).
Mais peut être faudrait-il complètement la supprimer en 0.85 ?

#8 Updated by tsmr over 6 years ago

Oui mais dans ce cas il faut être moins restrictif car pour l'instant on envoie uniquement $searchoptions['field'] :
$item->getSpecificValueToSelect($searchoptions['field'], $name, $values, $options);

alors que le hook récupère tout le $searchoptions

#9 Updated by orthagh over 6 years ago

attention getValueToSelect et non getSpecificValueToSelect
et cette première reçoit bien la searchoption entière.

#10 Updated by tsmr over 6 years ago

Exemple : un plugin qui ajoute une liste déroulante coté ticket (de type specific)
dans le searchoptionvalue.php -> $item->getValueToSelect donc la classe Ticket.
La classe ticket ne possède pas sa propre fonction getValueToSelect donc hérite de celle de CommonDTBM
Dans le cas ou ton datatype est specific tu va bien dans $item->getSpecificValueToSelect sauf que $searchoptions['field'] est envoyé et plus $searchoption

#11 Updated by moyo over 6 years ago

Faut arrêter de se focaliser sur des détails...
A partir du field tu peux remonter au searchoptions si besoin même si normalement il n'y en a vraiment pas besoin mais bon.

Sachant surtout qu'on dit qu'il faut faire évoluer ses fonctions pour les plugins donc le préambule c'est déjà d'étudier cette adaptation... Si elle est nécessaire.

#12 Updated by moyo about 6 years ago

en 0.84 le problème est résolu ? est-ce qu'on peut fermer le ticket ?

#13 Updated by orthagh about 6 years ago

Oui, je l'avais fait avec mon commit mais il a du être ré-ouvert par les commentaires.
Pour moi c'est OK

#14 Updated by moyo about 6 years ago

  • Category set to Search Engine

#15 Updated by moyo about 6 years ago

  • % Done changed from 0 to 100

#16 Updated by moyo about 6 years ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF