No description
Find a file
2020-03-12 17:20:31 +01:00
css recup des fichiers gamutable de souscriptions 2020-03-10 16:59:10 +01:00
formulaires ajout d'une option de config pour selectionner la version de vue, par defaut vue.min.js 2020-03-10 22:07:22 +01:00
inclure maintenant que l'on a l'option dev / prod, on l'utilise aussi pour notre 2020-03-12 12:29:07 +01:00
js ajout d'un cursor wait sur les boutons action 2020-03-12 17:20:31 +01:00
lang recup des fichiers gamutable de souscriptions 2020-03-10 16:59:10 +01:00
prive sorti de la fabrique 2020-03-10 16:11:01 +01:00
.gitignore recup des fichiers gamutable de souscriptions 2020-03-10 16:59:10 +01:00
gamutable_autorisations.php sorti de la fabrique 2020-03-10 16:11:01 +01:00
gamutable_fonctions.php sorti de la fabrique 2020-03-10 16:11:01 +01:00
gamutable_options.php sorti de la fabrique 2020-03-10 16:11:01 +01:00
gamutable_pipelines.php sorti de la fabrique 2020-03-10 16:11:01 +01:00
gulpfile.js recup des fichiers gamutable de souscriptions 2020-03-10 16:59:10 +01:00
json_gamutable.json.html on ajoute l'ex pour mettre des liens compatible json 2020-03-12 11:06:22 +01:00
package.json recup des fichiers gamutable de souscriptions 2020-03-10 16:59:10 +01:00
paquet.xml sorti de la fabrique 2020-03-10 16:11:01 +01:00
README.md maj de la doc pour fonctionner avec un formulaire cvt en mediabox ou modalbox 2020-03-12 12:06:54 +01:00
yarn.lock recup des fichiers gamutable de souscriptions 2020-03-10 16:59:10 +01:00

gamutable

Configuration

Choisir entre la version minifiée de vuejs (sans le debug) ou la version de dev

Utilisation

  1. Charger l'inclure
<INCLURE{fond=inclure/gamutable,env}>
  1. 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

  1. Pour utliser les actions :

    1. dans json_gamutable.json.html
    "statut" : [(#INCLURE{fond=inclure/statut,id_de_mon_objet}|json_encode)],
    
    1. dans inclure/statut.html, bien ajouter au lien : class="url_action"
    <BOUCLE_a(SOUSCRIPTIONS){id_souscription}{tout}>
    	#SET{args,#ID_SOUSCRIPTION|concat{-}|concat{#STATUT}}
    	<a
    		class="url_action"
    		href="[(#URL_ACTION_AUTEUR{changer_statut_souscription,#GET{args}})]">
    		#STATUT
    	</a>
    </BOUCLE_a>
    
  2. Pour utiliser les crayons, il faut utiliser le pipeline crayons_vue_affichage_final

/**
 * 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'] .= ' <script type="text/javascript"> app.rechargerJson(); </script>';
	}
	return $flux;
}

Attention Pour les crayons, l'invalidation du cache ne se fait que pour les objets publiés

  1. Pour utiliser une mediabox ou modalbox,
    1. Dans le json : ajouter un lien avec la classe mediabox ou modalbox (cf ex de json)
    "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)],
    
    1. Il faut appeler le formulaire en ajax
    2. Dans le traiter du formulaire => supprimer la redirection et ajouter :
    if ($retour === 'gamutable') {
    	$res['redirect'] = "";
    	$res['message_ok'] = "gamutable";
    }
    
    1. Dans le html du formulaire, ajouter :
    [(#ENV**{message_ok}|=={gamutable}|oui)
    	<script type="text/javascript">
    		app.rechargerJson();
    		$.modalboxclose();
    	</script>
    ]
    

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

/**
 * 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;
}