Action filter et csv-info
il y a 2 mois 2 semaines #2699
par micmor
Action filter et csv-info a été créé par micmor
Bonjour
L'action filter permet-elle de comparer une valeur trouvée par csv-info..... |col=8 avec une chaine déterminée ?
Le but étant que si la colonne 8 contient A-ASBL l'action replace suivante mais l'URL animation/xxxxx
Le but étant que si la colonne 8 contient R-ASBL l'action replace suivante mais l'URL reunion/xxxxx
J'ai essayé le code suivant{up filter={up csv-info=dataperso/data-csv/liste_des_animations.csv | col=8}:A-ASBL}{up replace=#[td class="Remarque"]([a-zA-Z0-9].*)[/td]#U : [td] <a href="/animation/$1">Plus d'info</a>[/td] | regex | tags=td}{up filter={up csv-info=dataperso/data-csv/liste_des_animations.csv | col=8}:R-ASBL}{up replace=#[td class="Remarque"]([a-zA-Z0-9].*)[/td]#U : [td] <a href="/reunion/$1">Plus d'info</a>[/td] | regex | tags=td}{up replace=R-ASBL:[b class="t-orange"]réunion ASBL[/b], A-ASBL:[b class="t-bleuClair"]animation ASBL[/b], A-UNITE:[b class="t-roueFonce"]animation UNITE[/b]} {up table-par-lignes | breakpoint=600px | style=width:100%}{up table-sort | col-type=a-d-d-d-d-a-a-a-a | pagination=15 | searchable=1 | sortable=0 | col-init=3,desc | css-head=#id th[text-align:center;vertical-align:middle] #id tr:hover [background: lightblue;]}{up data2table=dataperso/data-csv/liste_des_animations.csv | datatype=csv | encoding=ISO-8859-15 | csv-header = 1 | col-label=titre:Titre,date_d:Date de début,heure_d:Heure de début,date_f:Date de fin,heure_f:Heure de fin,lieu:Lieu,contact:Contact,cat:Catégorie,remarque:Remarque | col-type=date_d:date,date_f:date | date-format = %e %b %y | col-class=date_d:w1 tc, heure_d:w1 tc, date_f:w1 tc, heure_f:w1 tc, cat:w1 | col-class=remarque:Remarque}{/up table-sort} {/up table-par-lignes}{/up replace}{/up replace}{/up filter}{/up replace}{/up filter}
Mais, le tableau ne s'affiche pas.
Si j'essaye le code en tout premier
{up csv-info=dataperso/data-csv/liste_des_animations.csv | col=8} il m'affiche A-ASBL, mais, le tableau ne s'affiche pas.
Le tableau sans le code supplémentaire {up filter} : www.asbl-des-locaux.be/agenda
Merci
L'action filter permet-elle de comparer une valeur trouvée par csv-info..... |col=8 avec une chaine déterminée ?
Le but étant que si la colonne 8 contient A-ASBL l'action replace suivante mais l'URL animation/xxxxx
Le but étant que si la colonne 8 contient R-ASBL l'action replace suivante mais l'URL reunion/xxxxx
J'ai essayé le code suivant{up filter={up csv-info=dataperso/data-csv/liste_des_animations.csv | col=8}:A-ASBL}{up replace=#[td class="Remarque"]([a-zA-Z0-9].*)[/td]#U : [td] <a href="/animation/$1">Plus d'info</a>[/td] | regex | tags=td}{up filter={up csv-info=dataperso/data-csv/liste_des_animations.csv | col=8}:R-ASBL}{up replace=#[td class="Remarque"]([a-zA-Z0-9].*)[/td]#U : [td] <a href="/reunion/$1">Plus d'info</a>[/td] | regex | tags=td}{up replace=R-ASBL:[b class="t-orange"]réunion ASBL[/b], A-ASBL:[b class="t-bleuClair"]animation ASBL[/b], A-UNITE:[b class="t-roueFonce"]animation UNITE[/b]} {up table-par-lignes | breakpoint=600px | style=width:100%}{up table-sort | col-type=a-d-d-d-d-a-a-a-a | pagination=15 | searchable=1 | sortable=0 | col-init=3,desc | css-head=#id th[text-align:center;vertical-align:middle] #id tr:hover [background: lightblue;]}{up data2table=dataperso/data-csv/liste_des_animations.csv | datatype=csv | encoding=ISO-8859-15 | csv-header = 1 | col-label=titre:Titre,date_d:Date de début,heure_d:Heure de début,date_f:Date de fin,heure_f:Heure de fin,lieu:Lieu,contact:Contact,cat:Catégorie,remarque:Remarque | col-type=date_d:date,date_f:date | date-format = %e %b %y | col-class=date_d:w1 tc, heure_d:w1 tc, date_f:w1 tc, heure_f:w1 tc, cat:w1 | col-class=remarque:Remarque}{/up table-sort} {/up table-par-lignes}{/up replace}{/up replace}{/up filter}{/up replace}{/up filter}
Mais, le tableau ne s'affiche pas.
Si j'essaye le code en tout premier
{up csv-info=dataperso/data-csv/liste_des_animations.csv | col=8} il m'affiche A-ASBL, mais, le tableau ne s'affiche pas.
Le tableau sans le code supplémentaire {up filter} : www.asbl-des-locaux.be/agenda
Merci
Connexion ou Créer un compte pour participer à la conversation.
- lomart
- Hors Ligne
- Administrateur
il y a 2 mois 2 semaines #2700
par lomart
Réponse de lomart sur le sujet Action filter et csv-info
Non, ce n'est pas possible
Connexion ou Créer un compte pour participer à la conversation.
il y a 2 mois 2 semaines - il y a 2 mois 2 semaines #2701
par micmor
Réponse de micmor sur le sujet Action filter et csv-info
OK, problème impossible à résoudre avec l'action filter. Avec une autre action, c'est possible, ou pas du tout ?
Une future action qui comparerait le résultat de deux autres actions (la série des actions csv par exemple), tel qu'un "si alors sinon" du php serait-elle envisageable ?
Merci
Une future action qui comparerait le résultat de deux autres actions (la série des actions csv par exemple), tel qu'un "si alors sinon" du php serait-elle envisageable ?
Merci
Dernière édition: il y a 2 mois 2 semaines par micmor.
Connexion ou Créer un compte pour participer à la conversation.
- lomart
- Hors Ligne
- Administrateur
il y a 2 mois 2 semaines #2703
par lomart
Réponse de lomart sur le sujet Action filter et csv-info
En PHP, on peut tenter ceci
Attention, il faut maitriser la syntaxe PHP sous peine d'erreur fatale et bien comprendre l'ordre de résolution des shortcodes
Sinon, pour l'action filter, il faudrait ajouter des conditions du style {filter=equal:val1,val2}si vrai{===}si faux{/up filter} ou sup et sub
Cela compliquerait l'action sans servir à beaucoup de personnes !
Code:
{up php=echo ('{up csv val 1}'=='{up csv val 1}' ? '{up csv resultat 1}' : '{up csv resultat 1}';})
Sinon, pour l'action filter, il faudrait ajouter des conditions du style {filter=equal:val1,val2}si vrai{===}si faux{/up filter} ou sup et sub
Cela compliquerait l'action sans servir à beaucoup de personnes !
Connexion ou Créer un compte pour participer à la conversation.
il y a 2 mois 2 semaines #2705
par micmor
Réponse de micmor sur le sujet Action filter et csv-info
Merci pour les idées, je vais analyser tout cela.
Connexion ou Créer un compte pour participer à la conversation.