CFG 1.2

Una seconda rivoluzione è in arrivo !

La version 1.2 de CFG (pour spip 1.9.3) introduit une balise #FORMLAIRE_CFG et des fonctions ecrire_config() et effacer_config().

Nota di versione: queste informazioni sono diventate obsolete

Generalità su CFG

Il plugin CFG permette di creare facilmente un form per gestire parametri di un plugin o di un modello. Le informazioni generali sono esposte nei dettagli qui:
cfg : références; CFG è scaricabile in zip o per svn (svn://zone.spip.org/spip-zone/_plugins_/_stable_/cfg/). Quest’articolo espone nei dettagli i cambiamenti/contributi dalla versione 1 di CFG.

Novità della versione 1.2

Con qualche rimaneggiamento del codice, della documentazione, delle funzioni e della perseveranza si è ottenuta una versione che:

-  omogeneizza il passaggio di parametri a CFG da un fond.
-  fornisce un segnaposto #FORMULAIRE_CFG per la visualizzazione d’un form CFG in un modello (richiede SPIP 1.9.3)
-  fornisce delle funzioni per scrivere e modificare il contenuto dell’albero generato da CFG (salvataggio di meta ed extra soltanto): ecrire_config() ed effacer_config() (richiede SPIP 1.9.3).
-  tutte le stringhe di lingua sono ora raccolte nel’file lang/cfg_fr.php ed attendono traduzioni/traduttori.

I parametri CFG

Era possibile passare a CFG i parametri utilizzando #REM o <!--

Si verificavano alcuni problemi con il segnaposto #FORMULAIRE_CFG e l’utilizzo di <!-- per trasmettere parametri. L’insieme è stato rivisto.

-  E’ stato conservato solo <!-- : per passare i parametri
-  <:plugin: campo:> per i campi di lingua
-  i segnaposti di SPIP
funzionano indipendentemente nel segnaposto #FORMULAIRE_CFG o nel tradizionale ?exec=cfg.

L’utilizzo di ((#REM) param=valeur) continua a essere riconosciuto, ma è considerato obsoleto.

Esempio di passaggio di parametri:

<!-- titre=Exemple stockage dans fond 'cfg_exemple_meta' -->
<!-- autoriser=voir -->
<!-- nom=nom_de_stockage -->
<!-- casier=dossier_de_stockage -->

Un segnaposto #FORMULAIRE_CFG

Permette di pubblicare un form CFG in un modello.

nota: Questo segnaposto è sperimentale. I parametri ed il loro ordine sono suscettibili d’evolvere, come il segnaposto, in funzione del feedback degli utenti.

#FORMULAIRE_CFG{$fond, $id?, $form?, $ajax?, $afficher_messages_cfg?}

$fond

Se esiste un form CFG in fond/cfg_mon_formulaire.html, è possibile chiamarlo con: #FORMULAIRE_CFG{mon_formulaire}

$id

Quando il form richiede un identificatore per essere pubblicato (id_auteur, id_rubrique o altro), è necessario un secondo parametro:
#FORMULAIRE_CFG{test_auteur,#SESSION{id_auteur}} o #FORMULAIRE_CFG{test_rubrique, #ID_RUBRIQUE}

$form

Permette di creare un form personalizzato per pubblicare qualcosa prima e/o dopo il form CFG. L’insieme sarà ricalcolato in occasione della convalida del form: #FORMULAIRE_CFG{exemple,'',formulaires/mon_form}

Esempio di form personalizzato:

<div class="cfg_exemples_perso">
Una circuito sui campi della tabella spip_cfg_exemples
<B_a>
<table class='spip' border='1' width='90%'>
<tr><th>id</th><th>description</th><th>texte</th></tr>
<BOUCLE_a(CFG_EXEMPLES)>
<tr><td>#ID_CFG_EXEMPLE</td><td>#DESCRIPTION*</td><td>#TEXTE*</td></tr>
</BOUCLE_a>
</table>
</B_a>
<INCLURE{fond=formulaires/formulaire_cfg_vue}{env}>
</div>

Qui, il form personalizzato fa un circuito sui campi d’una tabella che il fond CFG permette di modificare. Il form CFG è chiamato con <INCLURE{fond=formulaires/formulaire_cfg_vue}{env}>.

$ajax

Per default, solo il quadro che contiene il form è ricaricato quando lo si convalida. Impostando a ’non’ tutta la pagina sarà ricaricata #FORMULAIRE_CFG{exemple_meta,'','',non}

Occorre tuttavia, perché il calcolo sia realizzato, che un segnaposto, #CFG_TRAITER sia presente nella pagina.

#CFG_TRAITER{#ENV{cfg_vue}}
...
#FORMULAIRE_CFG{exemple_meta,'','',non}

$afficher_messages_cfg

Per default, tutte le azioni di registrazione/soppressione nei form, riuscite o meno pubblicano un messaggio. Mettere ’non’ per non pubblicare nessun messaggio#FORMULAIRE_CFG{exemple_meta,'','','oui','non'}

funzioni per script php

La versione 1.2 introduce due funzioni che permettono di scrivere configurazioni come lo farebbe un form CFG. Tutto ciò che può essere letto dalla funzione lire_config() di CFG può ora essere scritta o eliminata.

ecrire_config ()
-  ecrire_config($chemin, $valeur, $serialize = true);
-  $chemin : il cammino come quello della funzione lire_config(),
-  $valeur : il valore da scrivere. Può essere una tabella di valori,
-  $serialize: i valori sono sérializzati per default, ma si può, ad esempio per modificare i metas di configurazione di spip, mettere a false.

effacer_config ()
-  effacer_config($chemin);
-  $chemin : il cammino come quello della funzione lire_config() o ecrire_config().

Exemples:

// 1) lettura
// rien ne change pour lire_config()
lire_config('descriptif_site');
lire_config('prefixe/mon/repertoire/mon_champ');
// extra d'un autore
lire_config('~un_login/dossier/champ');
lire_config('auteur:8/dossier/champ'); // équivalent 
// extra d'una tabella
lire_config('article:2/dossier/champ');
lire_config('spip_articles:2/dossier/champ'); // équivalent
 
// 2) scrittura
// change le descriptif du site !
ecrire_config('descriptif_site', 'mon descriptif', false);
// des configurations diverses
ecrire_config('prefixe/champ', 'valeur');
ecrire_config('prefixe/dossier/champ', 'valeur');
ecrire_config('prefixe/dossier', array(...) ); // pleins de valeurs d'un coup
// un extra d'auteur
ecrire_config('~login/champ', 'valeur');
// un extra de rubrique
ecrire_config('rubrique:4/dossier/champ', 'valeur'); 
 
// 3) cancellazione
effacer_config('prefixe/dossier');
effacer_config('~login/champ'); 
// ...

Un plugin d’esempio: cfg_exemples

Esiste il plugin cfg_exemples (cartella _plugins_/_test_/cfg_exemples/di spip_zone), un plugin per mostrare alcune funzionalità avanzate di CFG, in particolare vedere il segnaposto #FORMULAIRE_CFG.

Nota in calce: La versione svn contiene sviluppi la cui stabilità API non è garantita; le loro descrizioni saranno incorporate appena definitivamente adottate.

Discussion

Aucune discussion

Rispondere all’articolo

Chi sei?

Per mostrare qui il tuo avatar, registralo prima su gravatar.com (gratis e indolore). Non dimenticare di fornire il tuo indirizzo email.

Inserisci qui il tuo commento

Questo form accetta scorciatoie SPIP [->url] {{gras}} {italique} <quote> <code> et le code HTML <q> <del> <ins>. Per creare i paragrafi, lascia delle linee vuote.

Aggiungi un documento

Suivre les commentaires : RSS 2.0 | Atom

Dernière modification de cette page le 2 giugno 2008