gamutable/json_gamutable.json.html
tofulm 1172a71ff4 feat: ajout footer avec possibilite d'afficher la somme d'une colonne
- soit pour la page  affiche, soit pour le total du tableau
- 2 fonctions présentes : somme et somme_monnaie
- possibilite d'ajouter une legende dans une colonne

cf le fichier json de demo
2024-12-19 00:03:04 +01:00

97 lines
2.7 KiB
HTML

#HTTP_HEADER{Content-Type: application/json; charset=#CHARSET}
[(#ENV{id}|setenv{id_article})]
[{
"header_top":{
"Mais c'est qui ?": {"class":"descriptif text-center", "colspan" :5},
"Choix": {"class":"choix text-center", "colspan" :2}
},
"header":{
"id": "_",
"titre": "titre",
"nom": "Auteur",
"date": "date",
"texte": "texte",
"checkbox_a_valider": "a valider",
"statut": "statut"
},
"footer": [
{"source": "affiche", "champs" : [
{"nom": "type_mission", "legende" : "Somme Affiché"},
{"nom": "nom_champ_ttc", "fonction": "somme_monnaie"},
{"nom": "nom_champ_ht", "fonction": "somme_monnaie"}
]},
{"source": "total", "champs" : [
{"nom": "type_mission", "legende" : "Somme totale"},
{"nom": "nom_champ_ttc", "fonction": "somme_monnaie"},
{"nom": "nom_champ_ht", "fonction": "somme_monnaie"}
]}
],
"crayons":{
"titre" : "article",
"nom": "auteur"
},
"ordreCol" : {
"titre" : "desc",
}
"filtreCol" : {
"statut" : "select",
"titre": "input"
},
"filtreColValeurs" : {
"domaines" : [(#LISTE{valeur1, valeur2}|json_encode)]
},
"classes":{
"titre": "toto",
"email":"toto"
},
"checkbox": {
[(#REM)
"realise": [(#URL_ACTION_AUTEUR{titi,0}|json_encode)]
]
"realise": [(#URL_PAGE{toto}|json_encode)]
},
"maj": [(#CONFIG{derniere_modif_article}|tsToDate|json_encode)],
"a_supprimer" : [ <BOUCLE_articlesAsup(ARTICLES){si #ENV{maj}}{staut = poubelle}{','}{maj > #ENV{maj}}> #ID_ARTICLE </BOUCLE_articlesAsup> ]
},
<BOUCLE_articles(ARTICLES){id_article?}{staut != poubelle}{','}{maj > #ENV{maj,0}}>
[(#SET{statut,
#SET{args,#ID_ARTICLE|concat{-}|concat{#STATUT}}
<a class="url_action" data-id="#ID_ARTICLE" href="[(#URL_ACTION_AUTEUR{changer_statut_article,#GET{args}})]">
[(#STATUT|!={publie}|oui)
<i title="Article en attente" class="fa fa-check fa-2x orange" aria-hidden="true"></i>
]
[(#STATUT|=={publie}|oui)
<i title="Article validé" class="fa fa-check fa-2x verte" aria-hidden="true"></i>
]
</a>
})]
[(#SET{valider, dataid-#ID_PATATE})]
{
"html": {
"id": #ID_ARTICLE,
"titre" : [(#TITRE|json_encode)],
"nom" : [(#NOM|json_encode)],
"date" : [(#DATE|affdate{d/m/Y}|json_encode)],
"texte": [(#VAL{<a class="modalbox" title="Détail" href="[(#URL_PAGE{gamutable_texte}|parametre_url{id_article,#ID_ARTICLE})]">[(#TEXTE|couper{10})]</a>}|json_encode)],
"checkbox_a_valider": [(#DATE_REALISE|dateHumaine|sinon{#GET{valider}}json_encode)],
"statut" : [(#GET{statut}|json_encode)]
},
"classes": {
"texte": [(#STATUT|concat{-}|concat{#ID_ARTICLE}|json_encode)]
},
"crayons": {
"nom": #ID_AUTEUR
},
"search": {
"id": #ID_ARTICLE,
"titre" : [(#TITRE|json_encode)],
"nom" : [(#NOM|json_encode)],
"date" : [(#DATE|affdate{U}|json_encode)],
"texte": [(#TEXTE|couper{10}|json_encode)],
"statut" : [(#STATUT|json_encode)]
}
}
</BOUCLE_articles>
]