data-search="toto" n'est pas jouable, gros pb de performance sur un gros tableau. les regex OUI mais si pas beaucoup ;-) Il semble indispensable de pouvoir gerer finemement les elements que l'on veut rechercher, dans etre polué par les balises html. Notre json, pour la partie corps du tableau, on ajoute un subdivision : "html" : { mes champs}, comme cela, on peut ajouter une nouvelle cle : "search" : {la valeur des champs qui seront recherchés et filtrés}. Cela alourdit un peu le html, et seulement son poids. La partie html/js est toujours aussi rapide, et meme plus si on utilise cette nouvelle cle. ATTENTION : cela casse la compatibilité
76 lines
2.9 KiB
HTML
76 lines
2.9 KiB
HTML
#HTTP_HEADER{Content-Type: application/json; charset=#CHARSET}
|
|
[(#ENV{id}|setenv{id_souscription})]
|
|
[{
|
|
"header":{
|
|
"id": "_",
|
|
"titre": "titre",
|
|
"date": "date",
|
|
"statut": "statut",
|
|
"genre": "genre",
|
|
"nom_souscripteur": "nom du souscripteur",
|
|
"prenom": "prénom",
|
|
"date_naissance": "ddn",
|
|
"lieu_naissance": "Lieu",
|
|
"representant_legal": "R.Légal",
|
|
"type": "type",
|
|
"email": "email",
|
|
"telephone": "téléphone",
|
|
"adresse": "Adresse"
|
|
},
|
|
"crayons":{
|
|
"titre" : "souscription",
|
|
"prenom" : "souscription"
|
|
}
|
|
},
|
|
<BOUCLE_souscriptions(SOUSCRIPTIONS){id_souscription?}{!par id_souscription}{tout}{','}>
|
|
[(#SET{statut,
|
|
#SET{args,#ID_SOUSCRIPTION|concat{-}|concat{#STATUT}}
|
|
<a class="url_action" data-id="#ID_SOUSCRIPTION" href="[(#URL_ACTION_AUTEUR{changer_statut_souscription,#GET{args}})]">
|
|
[(#STATUT|!={publie}|oui)
|
|
<i title="Souscription en attente" class="fa fa-check fa-2x orange" aria-hidden="true"></i>
|
|
]
|
|
[(#STATUT|=={publie}|oui)
|
|
<i title="Souscription validée" class="fa fa-check fa-2x verte" aria-hidden="true"></i>
|
|
]
|
|
</a>
|
|
})]
|
|
{
|
|
"html": {
|
|
id": #ID_SOUSCRIPTION,
|
|
"modif" : [(#VAL{<a class="modalbox" href="[(#URL_PAGE{souscrire}|parametre_url{id_souscription,#ID_SOUSCRIPTION}|parametre_url{redirect,gamutable})]"><i class="fa fa-pencil"></i></a>}|json_encode)],
|
|
"date" : [(#DATE|affdate{d/m/Y}|json_encode)],
|
|
"statut" : [(#GET{statut}|json_encode)],
|
|
"genre" : [(#GENRE|json_encode)],
|
|
"nom_souscripteur" : [(#NOM_SOUSCRIPTEUR|json_encode)],
|
|
"prenom" : [(#PRENOM|json_encode)],
|
|
"qui": [(#VAL{<a class="mediabox" title="Détail du souscripteur" href="[(#URL_PAGE{detail_souscription}|parametre_url{id_souscription,#ID_SOUSCRIPTION}|parametre_url{detail,qui})]"><i class="fa fa-address-book"></i></a>}|json_encode)],
|
|
"nbr" : [(#NOMBRE)],
|
|
"montant_part" : [(#MONTANT_PART)],
|
|
"montant" : [(#MONTANT)],
|
|
"prix": [(#VAL{<a class="mediabox" title="Détail de la souscription" href="[(#URL_PAGE{detail_souscription}|parametre_url{id_souscription,#ID_SOUSCRIPTION}|parametre_url{detail,prix})]"><i class="fa fa-shopping-cart"></i></a>}|json_encode)],
|
|
"type" : [(#TYPE|json_encode)],
|
|
"email" : [(#VAL{<a href="mailto:#EMAIL" target="_blank">#EMAIL</a>}|json_encode)],
|
|
"telephone" : [(#TELEPHONE|json_encode)],
|
|
"ou": [(#VAL{<a class="mediabox" title="Détail des coordonnées" href="[(#URL_PAGE{detail_souscription}|parametre_url{id_souscription,#ID_SOUSCRIPTION}|parametre_url{detail,adresse})]"><i class="fa fa-address-card"></i></a>}|json_encode)]
|
|
},
|
|
search: {
|
|
id": #ID_SOUSCRIPTION,
|
|
"modif" : "",
|
|
"date" : [(#DATE|affdate{d/m/Y}|json_encode)],
|
|
"statut" : [(#GET{statut}|json_encode)],
|
|
"genre" : [(#GENRE|json_encode)],
|
|
"nom_souscripteur" : [(#NOM_SOUSCRIPTEUR|json_encode)],
|
|
"prenom" : [(#PRENOM|json_encode)],
|
|
"qui": "",
|
|
"nbr" : [(#NOMBRE)],
|
|
"montant_part" : [(#MONTANT_PART)],
|
|
"montant" : [(#MONTANT)],
|
|
"prix": "",
|
|
"type" : [(#TYPE|json_encode)],
|
|
"email" : [(#EMAIL|json_encode)],
|
|
"telephone" : [(#TELEPHONE|json_encode)],
|
|
"ou": ""
|
|
}
|
|
}
|
|
</BOUCLE_souscriptions>
|
|
]
|