[spip-dev] Formulaire de configuration d'un plugin : Enregistrer ?

2020-05-05 Par sujet Stephane Santon

Bonjour,

Je désire faire un formulaire de configuration pour un plugin, par la 
méthode la plus simple, avec le plugin Saisies.


Et je m'y perds dans tous les articles proposés !

J'ai donc suivi entre autres
"Configurer une fonctionnalité de votre site, ou un plugin"
https://www.spip.net/fr_article5414.html

J'ai donc créé
- configurer_bsantonum.html : vide
- configurer_bsantonum.php :
  J'y ai déclaré *l'unique fonction*
function formulaires_configurer_bsantonum_saisies_dist() {
  avec les définitions de champs.

Le formulaire est accessible depuis l'espace privé par les paramètres du 
plugin, et s'affiche bien.
Je peux saisir les valeurs de config et activer le bouton "Enregistrer", 
il me répond

"La nouvelle configuration a été enregistrée"

*MAIS si je rappelle la page de config, les paramètres ne sont pas 
rappelés !*


A la fin de l'article
https://www.spip.net/fr_article5414.html#Personnaliser-les-traitements

on définit
function formulaires_configurer_monplugin_traiter_dist() {
qui enregistre les données *pour personnaliser le traitement*.
Si je ne désire rien personnaliser, dois-je quand même définir _traiter ?

Les paramètres sont-ils vraiment enregistrés dans la config minimale ?

Merci

--
Stéphane
17 Charente-Maritime
___
liste: https://listes.rezo.net/mailman/listinfo/spip-dev
doc: https://www.spip.net/
dev: https://core.spip.net/
irc://irc.freenode.net/spip


Re: [spip-dev] Formulaire de configuration d'un plugin : Enregistrer ?

2020-05-05 Par sujet Maïeul Rouquette

Le 05/05/2020 à 23:13, Stephane Santon a écrit :

Bonjour,

Je désire faire un formulaire de configuration pour un plugin, par la 
méthode la plus simple, avec le plugin Saisies.


Et je m'y perds dans tous les articles proposés !

J'ai donc suivi entre autres
"Configurer une fonctionnalité de votre site, ou un plugin"
https://www.spip.net/fr_article5414.html

J'ai donc créé
- configurer_bsantonum.html : vide
- configurer_bsantonum.php :
   J'y ai déclaré *l'unique fonction*
     function formulaires_configurer_bsantonum_saisies_dist() {
   avec les définitions de champs.

Le formulaire est accessible depuis l'espace privé par les paramètres du 
plugin, et s'affiche bien.
Je peux saisir les valeurs de config et activer le bouton "Enregistrer", 
il me répond

"La nouvelle configuration a été enregistrée"

*MAIS si je rappelle la page de config, les paramètres ne sont pas 
rappelés !*


A la fin de l'article
https://www.spip.net/fr_article5414.html#Personnaliser-les-traitements

on définit
function formulaires_configurer_monplugin_traiter_dist() {
qui enregistre les données *pour personnaliser le traitement*.
Si je ne désire rien personnaliser, dois-je quand même définir _traiter ?

Les paramètres sont-ils vraiment enregistrés dans la config minimale ?

Merci


Voilà ce que j'ai personnelement

/**
 * Un simple formulaire de config,
 * on a juste à declarer les saisies
**/
function formulaires_configurer_plasci_saisies_dist(){
include_spip('inc/config');
$saisies = array(
array(
'saisie' => 'textarea',
'options' => array(
'nom' => 'connaissance_activite',
'label' => 
_T('plasci:connaissance_activite_label'),
'explication' => 
_T('saisies:option_datas_sous_groupe_explication'),
'defaut' => 
lire_config('plasci/connaissance_activite'),
'rows' => 10
)
)
);
return $saisies;
}


ca marche tout seul, et ca me suffit.

Donc franchement je saisi pas où le problème.

Si tu envoyais ton code, on pourrait t'aider.
___
liste: https://listes.rezo.net/mailman/listinfo/spip-dev
doc: https://www.spip.net/
dev: https://core.spip.net/
irc://irc.freenode.net/spip


Re: [spip-dev] Tuto "Créer des champs extras depuis un plugin perso avec l’aide de Saisies"

2020-05-05 Par sujet YannX SPIP(hot)

+10.000

Le 05/05/2020 à 12:52, JLuc a écrit :
Un référentiel complet ne remplace pas un tutoriel simple dans lequel 
on rentre sans effort et dont on fait rapidement le tour.


*Tout est dit !*

Effectivement les référentiels complets sont bien utiles, voir 
indispensables, pour éviter de devoir "plonger" dans le code (je l'ai 
fait sur Saisies a un moment, car la compréhension initiale du 
référentiel etait... difficile !).


Mais rien ne remplace *aussi *un exemple pas-à-pas (voire plusieurs) qui 
apportent une démarche plus progressive, avec des termes parfois moins 
précis, mais bien suffisants pour une première decouverte.


Imaginez-vous de n'apprendre SPIP qu'avec Programmez ?
Pourtant il y a tout dedans.

Manifestement, il a été nécessaire a divers nombreux spipeurs de 
commencer par autre chose, avant de se concentrer sur la lecture des 
seuls référentiels (et du code source).


Donc, avoir dans les rubriques de Contrib (ou d'ailleurs)
- et les référentiels
- et des tutoriels imparfaits (ou moins précis)

 me parait tout-à-fait pertinent.

--
YannX
http://www.spippourlesnuls.fr
675 articles indexés à ce jour

___
liste: https://listes.rezo.net/mailman/listinfo/spip-dev
doc: https://www.spip.net/
dev: https://core.spip.net/
irc://irc.freenode.net/spip

Re: [spip-dev] Formulaire de configuration d'un plugin : Enregistrer ?

2020-05-05 Par sujet tcharlss
Je pense qu'il doit lui manquer les lignes 'defaut' => 
lire_config('monplugin/mavaleur'),


Le 05/05/2020 à 23:28, Maïeul Rouquette a écrit :

Voilà ce que j'ai personnelement

/**
 * Un simple formulaire de config,
 * on a juste à declarer les saisies
**/
function formulaires_configurer_plasci_saisies_dist(){
include_spip('inc/config');
$saisies = array(
    array(
    'saisie' => 'textarea',
    'options' => array(
    'nom' => 'connaissance_activite',
    'label' => _T('plasci:connaissance_activite_label'),
    'explication' => 
_T('saisies:option_datas_sous_groupe_explication'),

    'defaut' => lire_config('plasci/connaissance_activite'),
    'rows' => 10
    )
    )
);
return $saisies;
}


ca marche tout seul, et ca me suffit.

Donc franchement je saisi pas où le problème.

Si tu envoyais ton code, on pourrait t'aider.

___
liste: https://listes.rezo.net/mailman/listinfo/spip-dev
doc: https://www.spip.net/
dev: https://core.spip.net/
irc://irc.freenode.net/spip
___
liste: https://listes.rezo.net/mailman/listinfo/spip-dev
doc: https://www.spip.net/
dev: https://core.spip.net/
irc://irc.freenode.net/spip

Re: [spip-dev] Formulaire de configuration d'un plugin : Enregistrer ?

2020-05-05 Par sujet RastaPopoulos
Le 05/05/2020 à 23:30, tcharlss a écrit :
> Je pense qu'il doit lui manquer les lignes 'defaut' => 
> lire_config('monplugin/mavaleur'),

Oui car le mécanisme des #FORMULAIRE_CONFIGURER_XXX va chercher *dans le 
squelette* les "name" de tous les champs pour savoir quoi charger en mémoire 
(ce qui permet de ne pas avoir de charger() mais seulement le squelette seul).

Or avec saisies en PHP, ya pas de squelettes justement. Donc c'est à toi de 
pré-remplir les champs, avec "defaut". Ou bien de faire la fonction charger() 
hein, mais c'est plus compliqué pour rien.

-- 
RastaPopoulos

___
liste: https://listes.rezo.net/mailman/listinfo/spip-dev
doc: https://www.spip.net/
dev: https://core.spip.net/
irc://irc.freenode.net/spip


Re: [spip-dev] Formulaire de configuration d'un plugin : Enregistrer ?

2020-05-05 Par sujet Stephane Santon

Bonjour,

Le 05/05/2020 à 23:30, tcharlss a écrit :
Je pense qu'il doit lui manquer les lignes 'defaut' => 
lire_config('monplugin/mavaleur'),


GAGNé !!

Ça marche bien mieux comme ça forcément... :-D

Mais sur les 6-7 articles de https://www.spip.net et 
https://contrib.spip.net que j'ai scrupuleusement parcourus, rien ne m'a 
fait penser à ça !


Donc c'était bien enregistré, mais pas rappelé au rechargement du 
formulaire...


Eh bien merci merci merci


Le 05/05/2020 à 23:28, Maïeul Rouquette a écrit :

Voilà ce que j'ai personnelement

/**
 * Un simple formulaire de config,
 * on a juste à declarer les saisies
**/
function formulaires_configurer_plasci_saisies_dist(){
include_spip('inc/config');
$saisies = array(
    array(
    'saisie' => 'textarea',
    'options' => array(
    'nom' => 'connaissance_activite',
    'label' => _T('plasci:connaissance_activite_label'),
    'explication' => 
_T('saisies:option_datas_sous_groupe_explication'),

    'defaut' => lire_config('plasci/connaissance_activite'),
    'rows' => 10
    )
    )
);
return $saisies;
}


ca marche tout seul, et ca me suffit.

Donc franchement je saisi pas où le problème.


--
Stéphane
17 Charente-Maritime
___
liste: https://listes.rezo.net/mailman/listinfo/spip-dev
doc: https://www.spip.net/
dev: https://core.spip.net/
irc://irc.freenode.net/spip


Re: [spip-dev] Tuto "Créer des champs extras depuis un plugin perso avec l’aide de Saisies"

2020-05-05 Par sujet RastaPopoulos
Le 05/05/2020 à 12:52, JLuc a écrit :
> Un référentiel complet ne remplace pas un tutoriel

Tu persistes à parler de choses dont personne ne parle. Depuis le début : le 
morceau pointé CE SONT des tutoriels ! Tu n'arrêtes pas d'argumenter comme s'il 
s'agissait de refuser un tutoriel parce qu'il y aurait un référentiel, alors 
que personne n'a parlé de ça et qu'il n'y a aucun rapport avec ça. On parle de 
tutoriels déjà en place, et d'un ajout de tutoriel supplémentaire, ce qui 
ferait QUATRE tutos pour dire la même chose. Et donc depuis le début je dis que 
si les tutos déjà en place ne sont pas corrects, il faut les corriger, 
améliorer, compléter, ou à l'inverse : simplifier. Ce que jeanmarie a bien 
compris et donc il est parti pour combiner et avoir tout ce qui est nécessaire 
en une fois (du genre un exemple simple + un exemple complexe = 2 et ça 
suffit). Bref depuis le début tu parles de chose qui ne correspondent pas à ce 
dont on parle en face…

La documentation, contrairement à ce que tu disais plutôt, demande encore plus 
de relecture que le code. Le code chez nous ya max 3-4 personnes qui vont le 
voir alors si parfois il est un peu bordélique, c'est un peu embêtant oui mais 
on s'en sort. Mais si la documentation a 15 articles pour dire la même chose, 
là ça touche beaucoup plus de monde. Tout comme le code, il ne s'agit pas du 
tout d'un truc publié qui ne bouge plus ensuite, on peut l'améliorer en 
permanence. Ce qui est le cas ici. Il est bien plus utile d'avoir 2 tutos bien 
faits (un simple, un complexe) en un endroit précis, que d'avoir 15 tutos qui 
disent "un peu pareil mais pas tout à fait", et du coup de pas savoir quoi 
suivre (ce qui était justement un des problèmes de la doc actuelle).

-- 
RastaPopoulos

___
liste: https://listes.rezo.net/mailman/listinfo/spip-dev
doc: https://www.spip.net/
dev: https://core.spip.net/
irc://irc.freenode.net/spip

Re: [spip-dev] Tuto "Créer des champs extras depuis un plugin perso avec l’aide de Saisies"

2020-05-05 Par sujet JLuc

Le 30/04/2020 à 23:12, RastaPopoulos a écrit :

C'est assez simple pourtant :
- ya déjà une doc existante qui contient des *exemples concrets* pas du tout 
abstraits ou que sais-je que tu t'imagines tout seul

Ce que j'écris je l'écris tout seul avec mon clavier, et je l'imagine tout 
seul, comme toi quand tu te sers d'un.


- la doc proposé par Jean-Marie est un simple exemple concret

Je dirai même mieux : c'est un exemple concret et simple.


- donc si on l'intègre c'est en améliorant l'existant, ya pas à lister 40 
exemples à la fois pour dire 40 fois la même chose juste avec d'autres noms de 
champs…
- là ya déjà 3 exemples, perso je trouve ça déjà trop compliqué (des ajouts sur 
des ajouts), donc on peut même simplifier l'article existant, améliorer c'est 
pas que rajouter hein, en mettant moins d'exemples (même revenir à un seul mais 
plus complet ?)


Cette manière très structurée de présenter les choses donne l'impression d'une grande clarté et l'exposé est de ce fait 
assez convaincant.


Mais plus complet ne veut pas dire mieux si ça devient moins accessible.
Il y a plein de manière d'accéder à l'information.
Des articles que tu as rédigé me sont totalement hérmétiques alors qu'ils ont 
l'air très clairs et bien structurés.
Par exemple :

On parle pas de PDF qu'on peut pas modifier là… on parle d'un site en SPIP dans 
lequel on peut continuer d'éditer et améliorer les articles existants. Le but 
c'est pas d'accumuler des couches et des couches similaires, on ajoute un 
article s'il dit vraiment un nouveau truc différent à priori.



___
liste: https://listes.rezo.net/mailman/listinfo/spip-dev
doc: https://www.spip.net/
dev: https://core.spip.net/
irc://irc.freenode.net/spip

Re: [spip-dev] Tuto "Créer des champs extras depuis un plugin perso avec l’aide de Saisies"

2020-05-05 Par sujet jacques

Le 03/05/2020 à 20:14, jeanmarie a écrit :

Ok, si ça va à tout le monde, je prépare l'article d'exemples et on 
avise...


             jeanmarie


J'ai développé un plugin et j'ai bien galéré à intégrer les champs 
extras via le plugin, surtout pour mes mises à jour.

L'exemple de Jean-Marie est clair

---
Jacques
___
liste: https://listes.rezo.net/mailman/listinfo/spip-dev
doc: https://www.spip.net/
dev: https://core.spip.net/
irc://irc.freenode.net/spip


Re: [spip-dev] Tuto "Créer des champs extras depuis un plugin perso avec l’aide de Saisies"

2020-05-05 Par sujet JLuc

Je n'avais pas fini mon mail. Voici :

Le 30/04/2020 à 23:12, RastaPopoulos a écrit :

C'est assez simple pourtant :
- ya déjà une doc existante qui contient des *exemples concrets* pas du tout 
abstraits ou que sais-je que tu t'imagines tout seul
Ce que j'écris je l'écris tout seul avec mon clavier, et je l'imagine tout seul, comme toi quand tu te sers d'un clavier 
aussi.



- la doc proposé par Jean-Marie est un simple exemple concret

Je dirai mieux : c'est un exemple concret et simple.


- donc si on l'intègre c'est en améliorant l'existant, ya pas à lister 40 
exemples à la fois pour dire 40 fois la même chose juste avec d'autres noms de 
champs…
- là ya déjà 3 exemples, perso je trouve ça déjà trop compliqué (des ajouts sur 
des ajouts), donc on peut même simplifier l'article existant, améliorer c'est 
pas que rajouter hein, en mettant moins d'exemples (même revenir à un seul mais 
plus complet ?)


Cette manière très structurée de présenter les choses donne l'impression d'une grande clarté et l'exposé est de ce fait 
assez convaincant.


Mais plus complet ne veut pas dire mieux si ça devient moins accessible.

Il y a plein de manière d'accéder à l'information et de se l'approprier.

Des articles que tu as rédigé me sont totalement hérmétiques alors qu'ils ont 
l'air très clairs et bien structurés.
Je pense par exemple à la doc du plugin "http" sur l'API REST : alors que j'ai déjà codé et utilisé nombre d'APIs, je 
n'arrive pas du tout à rentrer dans ton article http://contrib.spip.net/4466


Un référentiel complet ne remplace pas un tutoriel simple dans lequel on rentre sans effort et dont on fait rapidement 
le tour.



On parle pas de PDF qu'on peut pas modifier là… on parle d'un site en SPIP dans 
lequel on peut continuer d'éditer et améliorer les articles existants. Le but 
c'est pas d'accumuler des couches et des couches similaires, on ajoute un 
article s'il dit vraiment un nouveau truc différent à priori.


On parle pas non plus du mode d'emploi technique d'un moteur de machine à laver 
construit par une multinationale,
ou une super application genre stopcovid codée par la crème des startup (lol) et pour laquelle les critères de qualités 
AFNOR xxx s'appliquent.


Les couches ici ne sont pas similaires,
les articles sont très différents,
de même que les spipeurs ne sont pas similaires.

SPIP c'est aussi une communauté d'utilisateur, et contrib.spip.net, comme son nom l'y invite, est un lieu privilégié 
pour l'expression des talents multiples et variés des spipeurs. Pouvoir intégrer ces divers talents au mieux est une 
grande force pour un logiciel libre, et il faut aussi prendre en compte dans l'évaluation de ce qui est le mieux.


JLuc


___
liste: https://listes.rezo.net/mailman/listinfo/spip-dev
doc: https://www.spip.net/
dev: https://core.spip.net/
irc://irc.freenode.net/spip
___
liste: https://listes.rezo.net/mailman/listinfo/spip-dev
doc: https://www.spip.net/
dev: https://core.spip.net/
irc://irc.freenode.net/spip