# gamutable ## Configuration Choisir entre la version minifiée de vuejs (sans le debug) ou la version de dev ## Utilisation 1. Charger l'inclure ```html ``` 2. Surcharcher `json_gamutable.json.html` en suivant son modele > * pour le header c'est de la forme : "champ":"label" > > * **IMPORTANT** pour le content du json, il que le cle de la KEY de la table soit "id" et non pas "id_souscription" > > * pour les champs date, pour avoir l'ordre de la col, il faut le format : dd/mm/yyyy ou dd/mm/yy 3. Pour utliser **les actions** : 1. dans `json_gamutable.json.html` ```html [(#SET{statut, #SET{args,#ID_SOUSCRIPTION|concat{-}|concat{#STATUT}} [(#STATUT|!={publie}|oui) ] [(#STATUT|=={publie}|oui) ] })] "statut" : [(#GET{statut}|json_encode)], ``` > il faut ajouter data-id="" si on veut recharger que cette ligne 4. Pour utiliser **les crayons**, il faut utiliser le pipeline `crayons_vue_affichage_final` ```php /** * injection du reload de vuejs pour les crayons de l'objet souscription * */ function prefixPlugin_crayons_vue_affichage_final($flux){ if ($flux['args']['type'] === 'souscription') { $flux['data'] .= ' '; } return $flux; } ``` > **Attention** Pour les crayons, l'invalidation du cache ne se fait que pour les objets publiés 5. Pour utiliser une **mediabox** ou **modalbox**, 1. Dans le json : ajouter un lien avec la classe mediabox ou modalbox (cf ex de json) ```html "modif" : [(#VAL{}|json_encode)], ``` 2. Il faut appeler le formulaire en ajax 3. Dans le traiter du formulaire => supprimer la redirection et ajouter : ```php if ($retour === 'gamutable') { $res['redirect'] = ""; $res['message_ok'] = "gamutable"; } ``` 4. Dans le html du formulaire, ajouter : ```html [(#ENV**{message_ok}|=={gamutable}|oui) ] ``` ## Attention > les Crayons utilise l'api modifier_objet de SPIP qui invalide le cache que si objet est publie, > il faut donc forcer l'invalidation du cache en passant pour le pipeline post_edition ```php /** * invalider le cache pour l'objet souscription * */ function prefixPlugin_post_edition($flux){ if ($flux['args']['table'] === "spip_souscriptions") { include_spip('inc/invalideur'); suivre_invalideur("id='id_souscription/1'"); } return $flux; } ```