SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 252 visiteurs en ce moment

Accueil > Outils pour plugins > Config (CFG) > Archives Config (cfg) > CFG 1.2

CFG 1.2

Une seconde revolution

1er décembre 2007 – par Matthieu Marcillaud – 13 commentaires

Toutes les versions de cet article : [français] [italiano]

2 votes

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

Note de version : Ces informations sont devenues désuettes.
Reportez-vous à la page Config (CFG) pour une documentation à jour.

Généralités sur CFG

Le plugin CFG permet de créer facilement un formulaire pour gérer des paramètres d’un plugin ou d’un squelette. Les informations générales sont détaillées ici : cfg : références ; CFG est téléchargeable en zip ou par svn (svn ://zone.spip.org/spip-zone/_plugins_/_stable_/cfg/). Cet article détaille les changements/apports depuis la version 1 de CFG.

Apports de la version 1.2

Quelques remaniement internes du code, de la documentation des fonctions et de la persévérence plus tard et l’on obtient une version qui :
-  homogénéise le passage de paramètres à CFG depuis un fond.
-  fourni une balise #FORMULAIRE_CFG pour l’affichage d’un formulaire CFG dans un squelette (nécessite SPIP 1.9.3)
-  fourni des fonctions pour écrire et modifier les contenus arborescents générés par CFG (storage meta et extra uniquement) : ecrire_config() et effacer_config().
-  toutes les chaînes de langues sont maintenant regroupées dans le fichier lang/cfg_fr.php et attendent des traductions/traducteurs.

Des paramètres pour CFG

Il était possible de donner à CFG des paramètres en utilisant #REM ou <!--. Quelques problèmes survenaient avec la balise #FORMULAIRE_CFG et l’utilisation de <!-- pour transmettre des paramètres. L’ensemble à été revu.

Seul <!-- est conservé : il permet de passer et des champs de langue <:plugin:champs:> et des balises SPIP, et fonctionne indépendamment dans la balise #FORMULAIRE_CFG ou dans le traditionnel ?exec=cfg.

L’utilisation de [(#REM) param=valeur] continue à être reconnu, mais est considéré comme obsolète.

Exemple de passage de paramètres :

Une balise #FORMULAIRE_CFG

Elle permet d’afficher un formulaire CFG dans un squelette.

Nota : Cette balise est expérimentale. Les paramètres et leur ordre sont susceptibles d’évoluer, comme la balise, en fonction des retours d’utilisateurs.

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

$fond

Si un formulaire CFG est stocké dans fonds/cfg_mon_formulaire.html, il est possible de l’appeler par : #FORMULAIRE_CFG{mon_formulaire}

$id

Lorsque le formulaire nécessite un identifiant pour s’afficher (id_auteur, id_rubrique ou autre), il est à donner en second paramètre : #FORMULAIRE_CFG{test_auteur,#SESSION{id_auteur}} ou #FORMULAIRE_CFG{test_rubrique, #ID_RUBRIQUE}

$form

Permet de donner un formulaire personnalisé pour afficher quelque chose avant et/ou après le formulaire CFG. L’ensemble sera recalculé lors de la validation du formulaire : #FORMULAIRE_CFG{exemple,'',formulaires/mon_form}

Exemple de formulaire personnalisé :

Ici, le formulaire personnalisé fait une boucle sur les champs d’une table que le fond CFG permet de modifier. Le formulaire CFG est appelé grace à <INCLURE{fond=formulaires/formulaire_cfg_vue}{env}>.

$ajax

Par défaut, seul le cadre contenant le formulaire est rechargé lorsqu’on le valide. En mettant ’non’ toute la page sera rechargée #FORMULAIRE_CFG{exemple_meta,'','',non}

Il faut cependant, pour que le calcul se fasse, qu’une balise , #CFG_TRAITER soit présente dans la page.

$afficher_messages_cfg

Par défaut, toutes les actions d’enregistrement/suppressions dans les formulaires, réussies ou non affichent un message.

Mettre ’non’ pour qu’aucun message ne soit affiché : #FORMULAIRE_CFG{exemple_meta,'','','oui','non'}

Des fonctions pour les scripts php

La version 1.2 introduit aussi deux fonctions qui permettent d’écrire des configurations comme le ferait un formulaire CFG. Tout ce qui peut être lu par la fonction lire_config() de CFG peut maintenant être écrit ou supprimé.

ecrire_config()
-  ecrire_config($chemin, $valeur, $serialize = true);
-  $chemin : le chemin comme celui de la fonction lire_config(),
-  $valeur : la valeur à écrire. Peut être un tableau de valeurs,
-  $serialize : les valeurs sont sérialisées par défaut, mais on peut, par exemple pour modifier les metas de configuration de spip, mettre a false.

effacer_config()
-  effacer_config($chemin);
-  $chemin : le chemin comme celui de la fonction lire_config() ou ecrire_config().

Exemples :

  1. // 1) lecture
  2. // rien ne change pour lire_config()
  3. lire_config('descriptif_site');
  4. lire_config('prefixe/mon/repertoire/mon_champ');
  5. // extra d'un auteur
  6. lire_config('~un_login/dossier/champ');
  7. lire_config('auteur:8/dossier/champ'); // équivalent
  8. // extra d'une table
  9. lire_config('article:2/dossier/champ');
  10. lire_config('spip_articles:2/dossier/champ'); // équivalent
  11.  
  12. // 2) ecriture
  13. // change le descriptif du site !
  14. ecrire_config('descriptif_site', 'mon descriptif', false);
  15. // des configurations diverses
  16. ecrire_config('prefixe/champ', 'valeur');
  17. ecrire_config('prefixe/dossier/champ', 'valeur');
  18. ecrire_config('prefixe/dossier', array(...) ); // pleins de valeurs d'un coup
  19. // un extra d'auteur
  20. ecrire_config('~login/champ', 'valeur');
  21. // un extra de rubrique
  22. ecrire_config('rubrique:4/dossier/champ', 'valeur');
  23.  
  24. // 3) effacement
  25. effacer_config('prefixe/dossier');
  26. effacer_config('~login/champ');
  27. // ...

Télécharger

Une plugin d’exemples : cfg_exemples

Il existe un plugin pour montrer quelques fonctionnalités avancées de CFG, particulièrement cette balise #FORMULAIRE_CFG, le plugin cfg_exemples (repertoire _plugins_/_test_/cfg_exemples/ de spip_zone)

P.-S.

Nota : La version svn contient des développements dont la stabilité coté API n’est pas forcément assurée ; leurs descriptions seront incorporées dès que définitivement adoptées.

Dernière modification de cette page le 13 mai 2009

Retour en haut de la page

Vos commentaires

  • Le 16 juillet 2008 à 11:27, par rcaron En réponse à : CFG 1.2

    Version spip : SPIP 2.0.0 dev [12075]

    Version cfg : Revision : 21489

    Dans la page « gestion des plugins », 4 fois le message d’erreur suivant :

    Warning: in_array() [function.in-array]: Wrong datatype for second argument in /.../web/grenier/ecrire/public/composer.php(42) : eval()'d code on line 106

    Que faire ?

    Merci

    • Le 16 juillet 2008 à 11:37, par marcimat En réponse à : CFG 1.2

      mettre à jour les plugins...

      Depuis cfg 1.8 (j’ai un poil de retard dans la doc), le hack #CONFIG{xx,'',''}|in_array... n’est plus possible, et doit être remplacé par #CONFIG{xx,#ARRAY}|in_array dans les foncs cfg qui l’utilisaient.

      J’ai mis à jour tous les plugins de la zone qui l’utilisaient normalement. Ces plugins doivent maintenant avoir une version mini de CFG >= 1.5 pour que ça fonctionne.

    Répondre à ce message

  • Le 26 mars 2008 à 19:20, par ? En réponse à : Compatible SPIP 1.9.2d ???

    Cette version est-elle compatible avec SPIP 1.9.2d ?
    Sinon où puis trouver une verson compatible avec SPIP 1.9.2d ?
    Merci.

    • Le 26 mars 2008 à 19:29, par marcimat En réponse à : Compatible SPIP 1.9.2d ???

      La version de CFG, la dernière stable fournie en zip à ce jour est la 1.3.8 , elle fonctionne en 1.9.2d. http://files.spip.org/spip-zone/cfg.zip

      Le #FORMULAIRE_CFG par contre ne fonctionne qu’en 1.9.3 dev, et son API et a complètement été revu, ce qui fait que cette partie de la documentation est caduque.

      MM.

    • Le 26 mars 2008 à 19:46, par ? En réponse à : Compatible SPIP 1.9.2d ???

      Merci pour cette répo,se rapide.

      J’ai un souci avec ce plugin.
      Suite à une mise à jour je ne peux plus voir l’espace public ni l’espace privé.
      J’obtiens le message suivant : Installez cfg voyons !

      Remarque : J’avait installé la version récupéré sur le SVN et j’ai remis la version du ZIP que tu m’a envoyer. Avant de faire la première mise à jour j’ai désactiver le plugin mais je ne peux plus le réactivé car impossible d’aller dans l’espace privée.
      le site en question est : http://rapin.gregory.free.fr

      Merci de vote aide.

    • Le 26 mars 2008 à 19:57, par marcimat En réponse à : Compatible SPIP 1.9.2d ???

      Comme je disais, j’ai bloqué les zips car je fais de gros changements en ce moment dans le code du plugin CFG... En svn, la 1.4.6 devrait être exempte de bug (revision [19563]), vous pouvez l’essayer.

      Le message ne vient pas de CFG, mais du plugin spip-liste qui n’a pas du être content à un moment donné. Vous pouvez tenter :
      -  déplacement de plugins/spip_liste dans plugins/_spip_liste,
      -  vider les fichiers de /tmp et le dossier /tmp/cache
      -  aller dans l’interface privée
      -  si c’est ok : remettre spip liste à son ancien nom et réactiver le plugin.

      MM.

    • Le 26 mars 2008 à 20:26, par marcimat En réponse à : Compatible SPIP 1.9.2d ???

      ou « Inscription 2 » plutot que spip_liste me souffle-t-on à l’oreillette...

      MM.

    Répondre à ce message

  • Le 27 décembre 2007 à 21:29, par tetard2004 En réponse à : CFG 1.2

    Bonjour,
    voilà j’ai essayé de mettre le plugin « migre static » et pour celà, j’avais besoin de mettre cfg.
    Donc, j’ai installé cfg, mais quand je lance la configuration du plugin, il me met ceci : « 
    Fatal error : Call to undefined function interprete_argument_balise() in /home/www.ecuries-ramillies.evoconcept.net/www/plugins/cfg/cfg_options.php on line 49 ».
    Je suis allez voir dans le fichier, et sur cette ligne là, j’obtient ceci : « if (!$arg = interprete_argument_balise(1,$p))  ».
    Est ce que quelqu’un pourrais m’aider ?
    Ce serait gentil.

    Merci d’avance.

    • Le 27 décembre 2007 à 21:51, par Matthieu Marcillaud En réponse à : CFG 1.2

      Cette fonction est apparue en SPIP 1.9.2
      CFG n’est pas prévu pour fonctionner avant cette version et votre site est en SPIP 1.9.1 (du moins http://ecuries-ramillies.evoconcept.net/).

      Si vous commencez un site, utilisez de préférence la dernière version stable (1.9.2c actuellement).

      MM.

    • Le 27 décembre 2007 à 22:55, par tetard2004 En réponse à : CFG 1.2

      Merci, je vais suivre votre conseille.
      Merci

    Répondre à ce message

  • Le 27 décembre 2007 à 21:47, par tetard2004 En réponse à : CFG 1.2

    Bonsoir,
    Voilà, je viends de poster un message et ca parle de plus ou moins la même chose.
    Sauf ue maintenant en allant sur configurer dans spip, j’obtients ceci : « Fatal error : Call to undefined function autoriser() in /home/www.ecuries-ramillies.evoconcept.net/www/plugins/cfg/cfg_pipeline.php on line 15 »
    Je suis donc allez voir dans le fichier, et j’ai ceci : « if (!defined( »_ECRIRE_INC_VERSION")) return ;

    // Ajoute le bouton d’amin aux webmestres
    function cfg_ajouter_onglets($flux)
    if ($flux[’args’] == ’configuration’
    AND autoriser(’configurer’))
    // on voit le bouton dans la barre « configurer »
    $flux[’data’][’cfg’] =
    new Bouton(
    _DIR_PLUGIN_CFG.« cfg-22.png », // icone
    _T(’cfg:CFG’), // titre
    generer_url_ecrire(’cfg’),
    NULL,
    ’cfg’
    ) ;

    "
    Est ce que quelqu’un pourrait m’aider à m’en sortir ?
    Merci
    Bonne soirée

    Répondre à ce message

  • Le 18 décembre 2007 à 00:23, par ? En réponse à : CFG 1.2

    Bonjour,
    Je dois être un peu nul :-), mais ça fait 1/2 heure que je cherche où télécharger ce plugin... Et je ne trouve pas !

    Merci d’avance,
    Patrick

    • Le 18 décembre 2007 à 11:19, par Matthieu Marcillaud En réponse à : CFG 1.2

      Merci pour ce retour.

      J’ai intégré dans le descriptif un petit mot sur CFG, avec entre autre, où le trouver ;)

      MM.

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?
  • [Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Le plugin FreeRadio 1.0

    25 mai 2011 – 29 commentaires

    Le plugin SPIP FreeRadio est un lecteur de flux audio gratuit à intégrer dans le corps des articles. Il permet de se mettre « à l’écoute » de WebRadios ou de sons à partir de leurs URL. FreeRadio est écrit en actionscript. Facile à intégrer, il est (...)

  • Mailsubscribers

    16 janvier 2013 – 274 commentaires

    Ce plugin permet de gérer les inscriptions (ou abonnements) à la diffusion de contenu par email. Mailsubscribers permet de gérer les inscriptions par Opt-in simple ou double et la désinscription par URL. Ce plugin gère également plusieurs listes (...)

  • noiZetier v2

    9 novembre 2012 – 36 commentaires

    Le noiZetier offre une interface d’administration permettant d’insérer au choix des éléments modulaires de squelettes (noisettes) et de les ajouter ainsi à ses squelettes. Compatibilité La version 2 du noizetier fonctionne sous SPIP 3. Elle est (...)

  • cirr : plugin « rédacteur restreint »

    29 octobre 2010 – 60 commentaires

    Ce plugin « cirr : rédacteur restreint » permet d’affecter des rubriques aux rédacteurs et modifie les droits afin qu’un rédacteur restreint (ou un administrateur restreint) voit dans l’espace privé uniquement les rubriques qui lui sont affectées (et leur (...)

  • Un retour d’expérience d’utilisation de Formidable

    26 octobre – commentaires

    Il s’agissait de créer un formulaire d’inscription à un évènement modérer les inscriptions dans le privé publier les inscriptions dans le public Nous avons discuté de cette présentation lors de l’apéro SPIP du 15 février 2016 à la Cantine (...)

Ça spipe par là