Les évolutions de CFG visent actuellement 2 choses : simplifier et réduire au maximum son code, tout en permettant de l’étendre si besoin, et préparer le futur pour SPIP 2.0 et notamment pour les formulaires dynamiques.
Changements de la version 1.8
Les modifications concernent essentiellement une simplification du code pour lire et ecrire les données transmises à CFG (avec dans l’idée de peut être ajouter un jour au core de SPIP les fonctions lire_config(), ecrire_config() et effacer_config() que propose CFG).
Des jeux de tests (dits « tests unitaires ») ont étés créés pour l’occasion afin de vérifier que les modifications ultérieures de CFG ne cassent pas la compatibilité sur les ces fonctions cités. Ils seront à compléter.
Un changement important :
CFG ne supporte plus l’écriture (hack) #CONFIG{expression,'',''}
, à remplacer par #CONFIG{expression,#ARRAY}
Changements de la version 1.9
Uniquement pour SPIP 2.0 dev svn : les modifications concernent les formulaires publics et ajax réalisés en CFG . La syntaxe précédente #FORMULAIRE_CFG{nom}
n’est plus utilisée ni fonctionnelle.
On s’appuie maintenant encore plus sur la nouvelle syntaxe simplifiée des formulaires dynamiques, nommés CVT (pour Charger, Vérifier, Traiter). Ces formulaires sont stockés dans le dossier formulaires/
(et non pas dans le dossier fonds/
).
Les formulaires CVT permettent de réaliser des formulaires utilisables à la fois dans l’interface publique ou privée du site, en ajax (rechargement partiel de la page) ou non (rechargement de toute la page).
Syntaxe :#FORMULAIRE_NOM
#FORMULAIRE_NOM{#ID}
Fonctionnement avec CFG : Lorsqu’un formulaire formulaires/xx.html
ne possède pas de fonction de chargement formulaires_xx_charger()
alors c’est le parseur de CFG qui est utilisé, pour charger, vérifier et traiter le formulaire.
Différences avec un formulaire CFG dans le dossier fonds/
:
- les
fonds/
s’affichent dans ?exec=cfg, pas lesformulaires/
- les
fonds/
ont[(#ENV{_cfg_}|form_hidden)]
, pas lesformulaires/
- en revanche, les
formulaires/
ont#ACTION_FORMULAIRE{#SELF}
, pas lesfonds/
Exemple de formulaire CFG/CVT : Soit le formulaire : formulaires/exemple_configurer_site.html
Il est appelé par : #FORMULAIRE_EXEMPLE_CONFIGURER_SITE
ou pour l’avoir en ajax (en l’encadrant d’une class ’ajax’) par : <div class="ajax">#FORMULAIRE_EXEMPLE_CONFIGURER_SITE</div>
<!-- depot=meta -->
<!-- autoriser=configurer -->
#CACHE{0}
[(#ENV{editable}|oui)
<div class="formulaire_spip formulaire_cfg formulaire_exemple_configurer_site">
[<p class='formulaire_erreur'>(#ENV*{message_erreur})</p>]
[<p class="formulaire_message">(#ENV*{message_ok})</p>]
<form method="post" action="#SELF"><div>
#ACTION_FORMULAIRE{#SELF}
<fieldset>
<legend><:cfg:storage_classic:></legend>
<ul>
<li class="editer_email">
<label>Email webmaster</label>
[<span class='erreur'>(#ENV**{erreurs}|table_valeur{email_webmaster})</span>]
<input type="text" name="email_webmaster" class="text" value="#ENV{email_webmaster}" size="30" />
</li>
<li class="editer_nom_site">
<label>Nom site</label>
[<span class='erreur'>(#ENV**{erreurs}|table_valeur{nom_site})</span>]
<input type="text" name="nom_site" class="text" value="#ENV{nom_site}" size="50" />
</li>
<li class="editer_descriptif_site">
<label>Descriptif site</label>
[<span class='erreur'>(#ENV**{erreurs}|table_valeur{descriptif_site})</span>]
<textarea name="descriptif_site" rows="4" cols="40" style="width:100%;">[(#ENV{descriptif_site})]</textarea>
</li>
</ul>
</fieldset>
<input type="submit" name="_cfg_ok" value="<:cfg:OK:>" />
</div></form>
</div>
]
[(#ENV{editable}|non)
Vous devez être connecté en administrateur pour pouvoir utiliser ce formulaire.
]
Changements de la version 1.10
CFG ne gère plus de téléchargements de librairies, et ne s’occupe plus du selecteur de couleur.
Le plugin palette : Pour mutualiser le code du sélecteur de couleur ajouté a CFG entre plusieurs plugins, celui-ci a déménagé dans un second plugin, « Palette », fonctionnant sous SPIP 1.9.2 et SPIP 2.0 .
En conséquence, les fonds CFG qui utilisaient la classe css « cfg_couleur » pour afficher un sélecteur de couleur nécessitent maintenant le plugin « Palette ». Notez bien que le plugin est optionnel, son absence ne gène pas le fonctionnement normal du formulaire, seulement la palette ne s’affiche pas.
Le plugin palette s’affiche en utilisant la classe css « palette » sur un champ de formulaire. Il est donc conseillé de remplacer la classe css « cfg_couleur » par « palette » dans les formulaires l’utilisant. Cependant, la rétrocompatibilité de la classe css ’cfg_couleur’, devenue obsolète, sera assurée quelques temps.
Changement d’api des tests de validation des champs de formulaire :
Les points d’entrée concernant les champs de formulaires ayant une classe ’type_xxx’, reçoivent maintenant les mêmes arguments que les autres points d’entrées, soit le nom du champ ainsi que l’instance de l’objet cfg. Exemple :
function cfg_verifier_type_pwd($champ, &$cfg) {
if (strlen($cfg->val[$champ]) < 5){
$cfg->ajouter_erreur($champ, _T('cfg:erreur_type_pwd', array('champ'=>$champ)));
}
return true;
}
Permettre des actions pour un formulaire particulier :
Il était possible pour un formulaire d’utiliser une fonction de vérification pour les champs postés (comme avec les formulaires dynamiques de SPIP 2). La syntaxe change légèrement, mais il est maintenant possible de réaliser d’intégrer d’autres points d’entrées de la même manière.
Particulièrement, il est possible d’effectuer des actions post traitements (ou pre traitements). Les actions possibles sont les mêmes que celles des paramètres ou des classes css : pre_charger, charger, pre_verifier, verifier, pre_traiter, post_traiter.
Les fonctions nommées ’cfg_vue_action’ reçoivent en argument l’instance de la classe CFG :
function cfg_toto_post_traiter(&$cfg){
// actions post traitement
}
Un cas particulier est l’action ’verifier’ qui retournait un tableau d’erreur. Ce retour est devenu obselète, il vaut mieux ajouter depuis la fonction les erreurs en utilisant la fonction ajouter_erreurs() :
function cfg_exemple_verifier(&$cfg){
$err = array();
if ($cfg->val['email1'] != $cfg->val['email2']) {
$err['message_erreur'] = "Erreur sur les emails";
$err['email1'] = "Les emails ne sont pas identiques";
}
return $cfg->ajouter_erreurs($err);
// anciennement : return $err;
}
Discussions par date d’activité
9 discussions
Voilà, c’est résolu.
J’ai tout supprimé et réinstallé.
A mon avis cela devait être lié à une base de donnée SQL qui n’avais pas été totalement mise à jour.
Merci en tout cas pour les conseils.
Répondre à ce message
Bonjour à tous,
J’ai créé un nouvel administrateur pour mon site mais lorsque celui-ci veut changer les paramètres de plugins par cfg il n’est pas reconnu comme administrateur avec le message :
« Seuls les webmestres du site sont autorisés à modifier ces paramètres. »
Pourtant j’ai lu dans des forums que les administrateurs pouvaient toucher au plugins...
Sous spip le super-administrateur/webmaster est l’admin en id = 1 je crois ? peut-on avoir plusieurs webmaster ?
Ma config :
- spip 2
- plugins : multiflex 3, pluginFCKeditor 2.6.3, Palette, Autorité (utilisé uniquement pour permettre aux rédacteurs de modifier leurs articles)
Bonjour,
Oui, il peut y avoir plusieurs WebMaster. Pour cela, il faut éditer ou créer le fichier mes_options.php dans le répertoire config à la racine du site. Va voir en fin d’article du squelette-multiflex 3.
Répondre à ce message
Bonjour,
le plugin ACS recommande :
- cfg 1.12.3 : pour configurer les crayons.
Où trouve-t-on ce plugin ?
Merci à tous ces généreux concepteurs, et autres contributeurs.
Répondre à ce message
Quelqu’un sait-il où il est possible de télécharger CFG, quand le message suivant s’affiche :
« Nécessite le plugin CFG en version [1.10.2 ;] minimum. »
En effet, des liens de téléchargement plus nombreux seraient les bienvenus !
Bon courage à tous...
jano
Répondre à ce message
Désolé, mais aucune information particulière est indiqué dans le log.
Je ne comprend pas pourquoi d’un coup tous mes plugins sont désactivés.
Répondre à ce message
CFG 1.10.4 et Palette 1.0.1 fonctionne sous SPIP 1.9.2e
Je viens de faire un test, mais ne fonctionne pas encore sous SPIP 2 RC1.
Je suis sous PHP Version 5.2.6
J’ai la même version de PHP avec SPIP 2.0 et ces plugins... pas de soucis particulier pourtant...
Pas d’autres info qui pourrait aider ? de messages particuliers dans les logs peut être en rapport avec l’activation des plugins ? /tmp/*.log
Ce que tu peux faire :
Répondre à ce message
J’ai installé une nouvelle base de Spip 2 RC1, et je voudrais installer le squelettes multiflex.
J’ai installé tous les plugins nécessaire.
J’active CFG et pas de problème.
Ensuite j’active palette et lorsque la page se rafraichit, plus aucun de mes plugins est activé.
Si j’active palette uniquement, je n’ai pas de problème.
Ensuite, si j’active CFG, à nouveau tous mes plugings sont désactivés.
J’ai le même problème avec d’autres plugins sur une base Spip 1.9.2e ( barre type v2, extension multilingue btv2 )
A voir que les autres n’ont pas ou peu de problème avec l’activation des plugins, je me demande si ce n’est pas lié à mon hebergeur OVH
C’est intéressant...
Juste CFG et Palette, sans autres plugins, ne veulent pas rester ensemble ?
J’ai testé en local : cfg 1.10.4+palette 1.0.1+crayons+multiflex (tous à jour) et je n’ai pas ton soucis.
Peux tu dire quelle version de php tu as ? (ecrire/ ?exec=info)
MM.
Répondre à ce message
Je n’arrive pas à activer en même temps : CFG 1.10.4 et Palette 1.0.1.
J’ai énormément de problème à activer des plugins. Est-ce lié à autres choses ? Je suis chez OVH.
D’avance merci
Ah bah ça par exemple... Ca de vrait fonctionner... Normalement, activer CFG avant palette...
Qu’est-ce qui se passe précisément ?
Répondre à ce message
Bonjour,
J’ai installé cfg et maintenant quand je veux rentré dans la partie privée de mon site j’ai ce message
Installez cfg voyons !
Sur le serveur tout est ok le dossier gfg et les droits corrects
Impossible de rentrer dans l’admin
Merci
Ou trouve t’on la dernière version de ce plugins
La dernière version de CFG est disponible sur la zone :
http://files.spip.org/spip-zone/cfg.zip
++
Bonjour, j’ai installé la 1.10 et j’ai ceci pourtant tout à l’air de fonctionner ?
Warning : in_array() [function.in-array] : Wrong datatype for second argument in /home/monsite/public_html/ecrire/public/composer.php(72) : eval()’d code on line 102
Merci
Cette erreur est due à un « changement important » dans la version 1.8 de CFG... Ce qui veut dire qu’il faut aussi mettre à jour les autres plugins utilisés (peut-être « autorité » ou « inscription2 » ? ou d’autres qui ’utilisaient ces écritures.
J’avais corrigé tous les plugins présents sur la Zone, il suffit donc, en théorie, de les mettre à jour pour que le problème disparaisse. (et vider le cache).
Ca c’est un coup de inscription 2 ou spip_liste ou ne je sais plus quel plugin qui tuait volontairement le chargement si CFG n’était pas chargé.
Pour corriger : renommer le plugin en question en plugins/_nom_du_plugin (tu dois pouvoir te connecter alors) puis le mettre à jour...
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |