Re: [SPIP Zone] Modification comportement critère mots et mots arbros

2019-07-15 Par sujet Bruno Bergot

Hop,

Le 13/07/2019 à 14:08, RealET a écrit :
Ben justement, l'idée, c'est d'avoir ce comportement sans modifier le 
squelette, juste en activant le plugin mots arborescents.




"Good faith", mais mauvaise idée puisque ça change le comportement des 
utilisations existantes sans prévenir (pas de changement de version 
majeure, etc).


Avec ce que j'ai commité à l'instant, le comportement précédent est 
celui par défaut, et une constante permet d'avoir celui que je souhaitais.




Ferpecto, merci.

++
b_b

spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone


Re: [SPIP Zone] Modification comportement critère mots et mots arbros

2019-07-13 Par sujet RealET

Bruno Bergot a écrit le 12/07/2019 à 18:21 :

Hop,

Le 12/07/2019 à 17:05, RealET a écrit :

OK, je comprends.
Première idée sur laquelle j'aimerais ton avis :
remplacer dans les code de ce commit les
if (function_exists('calcul_branche_mot_in')) {
par
if (function_exists('calcul_branche_mot_in') AND _CRITERE_MOTS_BRANCHE) {



Pourquoi pas, au final peu m'importe la méthode, tant que le 
comportement par défaut ne change pas :p

C'est fait : https://zone.spip.org/trac/spip-zone/changeset/115944



Dans l'idéal tu aurais du coder un critère spécifique pour ça, genre 
{mots_arbos} ou autre, mais bon...
Ben justement, l'idée, c'est d'avoir ce comportement sans modifier le 
squelette, juste en activant le plugin mots arborescents.


Avec ce que j'ai commité à l'instant, le comportement précédent est 
celui par défaut, et une constante permet d'avoir celui que je souhaitais.


--
RealET



spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone


Re: [SPIP Zone] Modification comportement critère mots et mots arbros

2019-07-12 Par sujet Bruno Bergot

Hop,

Le 12/07/2019 à 17:05, RealET a écrit :

OK, je comprends.
Première idée sur laquelle j'aimerais ton avis :
remplacer dans les code de ce commit les
if (function_exists('calcul_branche_mot_in')) {
par
if (function_exists('calcul_branche_mot_in') AND _CRITERE_MOTS_BRANCHE) {



Pourquoi pas, au final peu m'importe la méthode, tant que le 
comportement par défaut ne change pas :p


Dans l'idéal tu aurais du coder un critère spécifique pour ça, genre 
{mots_arbos} ou autre, mais bon...


++
b_b

spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone


Re: [SPIP Zone] Modification comportement critère mots et mots arbros

2019-07-12 Par sujet RealET

Bruno Bergot a écrit le 12/07/2019 à 16:07 :

Salut,

Comme je le disais sur IRC, je viens de comprendre pourquoi une boucle 
d'un site ne renvoie plus ce que je lui demande, la source :


"on *considère* que les objets recherchés pour un mot clef ont le mot 
clef en question ou au moins un des mots clefs de la branche du mot."


https://zone.spip.net/trac/spip-zone/changeset/114363/

En imposant ce comportement, qui ne peut être débrayé, la boucle 
suivante ne peut plus fonctionner :


#ENV{annee}}{0,1}>
titre}{id_groupe=#CONFIG{films/groupe_programmes,5}}>

Prog racine : #TITRE

 #LISTE{#_festival:ID_MOT,#_progs:ID_MOT}}{par ordre_passage}>

 #ID_FILM,
     #TITRE_ORIGINAL,
     #ORDRE_PASSAGE,
     #_progs:TITRE,
     #_progs:TITRE
 
 
 Prog enfant : #TITRE
 #LISTE{#_festival:ID_MOT,#_prog:ID_MOT}}{par ordre_passage}>

     #ID_FILM,
     #TITRE_ORIGINAL,
     #ORDRE_PASSAGE,
     #_progs:TITRE,
     #TITRE
 
 



Le contexte : on a un groupe de mot arbos qu'on parcourt de manière 
récursive pour afficher les films (un objet perso) qui sont liés aux 
programmes. Parfois les mots racines ont des éléments liés, parfois non 
et ceux sont uniquement les mots enfants (profondeur > 0) qui ont des 
éléments liés.


En l'état, la boucle film1 affiche tous les films liés aux mots enfant 
du mot racine, alors qu'on précise bien l'id_mot racine et non ses 
enfants, ce qui fait que les boucles prog & films2 ne sont jamais 
exécutées.


On est donc repassé sur la version 4.1.2 du plugin en prod, en attendant 
que tu proposes un moyen de rendre optionnel ce changement de 
comportement du critère mots.

OK, je comprends.
Première idée sur laquelle j'aimerais ton avis :
remplacer dans les code de ce commit les
if (function_exists('calcul_branche_mot_in')) {
par
if (function_exists('calcul_branche_mot_in') AND _CRITERE_MOTS_BRANCHE) {

Avec le define à false par défaut qui va bien.

Comme ça, on revient au comportement par défaut précédent.
Et il suffit de faire un define de _CRITERE_MOTS_BRANCHE à true pour 
avoir la recherche dans la branche.


Si meilleur idée de nom, je prends ;-)

--
RealET



spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone


[SPIP Zone] Modification comportement critère mots et mots arbros

2019-07-12 Par sujet Bruno Bergot

Salut,

Comme je le disais sur IRC, je viens de comprendre pourquoi une boucle 
d'un site ne renvoie plus ce que je lui demande, la source :


"on *considère* que les objets recherchés pour un mot clef ont le mot 
clef en question ou au moins un des mots clefs de la branche du mot."


https://zone.spip.net/trac/spip-zone/changeset/114363/

En imposant ce comportement, qui ne peut être débrayé, la boucle 
suivante ne peut plus fonctionner :


== #ENV{annee}}{0,1}>
titre}{id_groupe=#CONFIG{films/groupe_programmes,5}}>

Prog racine : #TITRE

	#LISTE{#_festival:ID_MOT,#_progs:ID_MOT}}{par ordre_passage}>

#ID_FILM,
#TITRE_ORIGINAL,
#ORDRE_PASSAGE,
#_progs:TITRE,
#_progs:TITRE


Prog enfant : #TITRE
	#LISTE{#_festival:ID_MOT,#_prog:ID_MOT}}{par ordre_passage}>

#ID_FILM,
#TITRE_ORIGINAL,
#ORDRE_PASSAGE,
#_progs:TITRE,
#TITRE





Le contexte : on a un groupe de mot arbos qu'on parcourt de manière 
récursive pour afficher les films (un objet perso) qui sont liés aux 
programmes. Parfois les mots racines ont des éléments liés, parfois non 
et ceux sont uniquement les mots enfants (profondeur > 0) qui ont des 
éléments liés.


En l'état, la boucle film1 affiche tous les films liés aux mots enfant 
du mot racine, alors qu'on précise bien l'id_mot racine et non ses 
enfants, ce qui fait que les boucles prog & films2 ne sont jamais exécutées.


On est donc repassé sur la version 4.1.2 du plugin en prod, en attendant 
que tu proposes un moyen de rendre optionnel ce changement de 
comportement du critère mots.


++
b_b

spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone