[SPIP Zone] question un peu pointue sur l'apparence des formulaires de l'espace privé.

J’ai eu besoin dans mon site de personnaliser les labels pour les rubriques des différentes objets que je gère dans mon site SPIP.

J’ai donc des noms différents selon que j’édite un objet de type 1 ou 2.

J’ai voulu également modifier l’ordre de certains de ces champs ainsi que leur caractéristique (pas toujours besoin d’une textarea de 15 lignes par exemple).

Du coup j’ai créé des formulaires editer_article-nn nn étant le numéro de la rubrique. Ca marche « à peu près ». Cad que si j’édite un article déjà enregistré c’est bien ce formulaire qui est utilisé (et j’ai mes champs dans l’ordre que je voulais avec le type que je veux). Par contre pour un nouvel objet même si je le crée depuis la rubrique à laquelle va appartenir l’objet, c’est le formulaire standard edirer_article.html qui est utilisé (les intitulés eux dépendant bien de ma rubrique en fonction des libellés globals défini dans le fichier lang: local_prive_fr.php. (dans squelettes/lang).

Je sais bien que ce n’est pas super grave comme problème, mais ça m’énerve, donc si ça « parle » à quelqu’un le pourquoi du comment des chargement des squelettes de l’espace privé, je serais ravie.

Merci d’avance.

Catherine Ossakowsky

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Catherine Ossakowsky a écrit :

J'ai eu besoin dans mon site de personnaliser les labels pour les
rubriques des différentes objets que je gère dans mon site SPIP.

J'ai donc des noms différents selon que j'édite un objet de type 1 ou 2.

J'ai voulu également modifier l'ordre de certains de ces champs ainsi
que leur caractéristique (pas toujours besoin d'une textarea de 15
lignes par exemple).

Du coup j'ai créé des formulaires editer_article-nn nn étant le numéro
de la rubrique. Ca marche "à peu près". Cad que si j'édite un article
déjà enregistré c'est bien ce formulaire qui est utilisé (et j'ai mes
champs dans l'ordre que je voulais avec le type que je veux). Par contre
pour un nouvel objet même si je le crée depuis la rubrique à laquelle va
appartenir l'objet, c'est le formulaire standard edirer_article.html qui
est utilisé (les intitulés eux dépendant bien de ma rubrique en fonction
des libellés globals défini dans le fichier lang: local_prive_fr.php.
(dans squelettes/lang).

Je sais bien que ce n'est pas super grave comme problème, mais ça
m'énerve, donc si ça "parle" à quelqu'un le pourquoi du comment des
chargement des squelettes de l'espace privé, je serais ravie.

Autant que je le sache, lorsque l'on crée un nouvel objet de type
article, spip ignore dans quelle rubrique il sera rangé. Il ne l'apprend
qu'au moment où l'on clique pour la première fois sur le bouton
enregistrer du formulaire.
Y compris lorsque l'on s'est positionné dans une rubrique particulière
pour y créer ledit article. A ce moment là, le numéro de rubrique est
une variable qui ne sera exploitée qu'au moment de l'enregistrement,
c'est à dire bien après que le formulaire ait été choisi.
En revanche, lorsqu'on édite un article déjà existant, spip connait la
rubrique dans laquelle se trouve l'article avant d'appeler le formulaire
correspondant.

- --
Yanic Gornet - 0 608 604 681
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAko1/r0ACgkQOaMaLeePBwkveACgzPFB++f5fCZba6TmHJktsHpW
zHQAoI7hk+TT0Tw7a3lAJEl5BFJElwTL
=hpfI
-----END PGP SIGNATURE-----

Salut,

En regardant le code du fichier formulaires/editer_article.php on peut
voir que ses fonctions acceptent des arguments :

formulaires_editer_article_charger_dist($id_article='new',
$id_rubrique=0, $retour='', $lier_trad=0,
$config_fonc='articles_edit_config', $row=array(), $hidden=''){

On peut donc passer un id_rubrique au formulaire en l'appelant de
cette manière :

#FORMULAIRE_EDITER_ARTICLE{nouveau, #ID_RUBRIQUE, 0}

++
b_b

Le 15 juin 2009 09:56, Yanic Gornet<gornety@no-log.org> a écrit :

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Catherine Ossakowsky a écrit :

J'ai eu besoin dans mon site de personnaliser les labels pour les
rubriques des différentes objets que je gère dans mon site SPIP.

J'ai donc des noms différents selon que j'édite un objet de type 1 ou 2.

J'ai voulu également modifier l'ordre de certains de ces champs ainsi
que leur caractéristique (pas toujours besoin d'une textarea de 15
lignes par exemple).

Du coup j'ai créé des formulaires editer_article-nn nn étant le numéro
de la rubrique. Ca marche "à peu près". Cad que si j'édite un article
déjà enregistré c'est bien ce formulaire qui est utilisé (et j'ai mes
champs dans l'ordre que je voulais avec le type que je veux). Par contre
pour un nouvel objet même si je le crée depuis la rubrique à laquelle va
appartenir l'objet, c'est le formulaire standard edirer_article.html qui
est utilisé (les intitulés eux dépendant bien de ma rubrique en fonction
des libellés globals défini dans le fichier lang: local_prive_fr.php.
(dans squelettes/lang).

Je sais bien que ce n'est pas super grave comme problème, mais ça
m'énerve, donc si ça "parle" à quelqu'un le pourquoi du comment des
chargement des squelettes de l'espace privé, je serais ravie.

Autant que je le sache, lorsque l'on crée un nouvel objet de type
article, spip ignore dans quelle rubrique il sera rangé. Il ne l'apprend
qu'au moment où l'on clique pour la première fois sur le bouton
enregistrer du formulaire.
Y compris lorsque l'on s'est positionné dans une rubrique particulière
pour y créer ledit article. A ce moment là, le numéro de rubrique est
une variable qui ne sera exploitée qu'au moment de l'enregistrement,
c'est à dire bien après que le formulaire ait été choisi.
En revanche, lorsqu'on édite un article déjà existant, spip connait la
rubrique dans laquelle se trouve l'article avant d'appeler le formulaire
correspondant.

- --
Yanic Gornet - 0 608 604 681
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAko1/r0ACgkQOaMaLeePBwkveACgzPFB++f5fCZba6TmHJktsHpW
zHQAoI7hk+TT0Tw7a3lAJEl5BFJElwTL
=hpfI
-----END PGP SIGNATURE-----
_______________________________________________
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

Je pense effectivement que c'est la bonne piste.

Mais à vrai dire je ne vois pas où il faut que mette cet appel.

Le seul appel qui existe dans spip pour ce formulaire est utilisé dans
prive/editer/article.html et n'est appelé apparemment que pour l'édition
d'un article déjà existant.

En fait j'ai réussi en supprimant unset($valeurs['id_rubrique']); de la
fonction formulaires_editer_article_charger_dist dans editer_article.html.

Ca résout mon problème (j'espère que ça n'en créera pas d'autres) le
formulaire chargé tient compte de ma rubrique qu'on soit en création ou
modification.

Merci pour votre aide

Catherine Ossakowsky
___________________
GSM : 06 98 80 66 00

-----Message d'origine-----
De : bruno bergot [mailto:brunobergot@gmail.com]
Envoyé : lundi 15 juin 2009 10:17
À : Yanic Gornet
Cc : Catherine Ossakowsky; spip-zone@rezo.net
Objet : Re: [SPIP Zone] question un peu pointue sur l'apparence des
formulaires de l'espace privé.

Salut,

En regardant le code du fichier formulaires/editer_article.php on peut
voir que ses fonctions acceptent des arguments :

formulaires_editer_article_charger_dist($id_article='new',
$id_rubrique=0, $retour='', $lier_trad=0,
$config_fonc='articles_edit_config', $row=array(), $hidden=''){

On peut donc passer un id_rubrique au formulaire en l'appelant de
cette manière :

#FORMULAIRE_EDITER_ARTICLE{nouveau, #ID_RUBRIQUE, 0}

++
b_b

Le 15 juin 2009 09:56, Yanic Gornet<gornety@no-log.org> a écrit :

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Catherine Ossakowsky a écrit :

J'ai eu besoin dans mon site de personnaliser les labels pour les
rubriques des différentes objets que je gère dans mon site SPIP.

J'ai donc des noms différents selon que j'édite un objet de type 1 ou 2.

J'ai voulu également modifier l'ordre de certains de ces champs ainsi
que leur caractéristique (pas toujours besoin d'une textarea de 15
lignes par exemple).

Du coup j'ai créé des formulaires editer_article-nn nn étant le numéro
de la rubrique. Ca marche "à peu près". Cad que si j'édite un article
déjà enregistré c'est bien ce formulaire qui est utilisé (et j'ai mes
champs dans l'ordre que je voulais avec le type que je veux). Par contre
pour un nouvel objet même si je le crée depuis la rubrique à laquelle va
appartenir l'objet, c'est le formulaire standard edirer_article.html qui
est utilisé (les intitulés eux dépendant bien de ma rubrique en fonction
des libellés globals défini dans le fichier lang: local_prive_fr.php.
(dans squelettes/lang).

Je sais bien que ce n'est pas super grave comme problème, mais ça
m'énerve, donc si ça "parle" à quelqu'un le pourquoi du comment des
chargement des squelettes de l'espace privé, je serais ravie.

Autant que je le sache, lorsque l'on crée un nouvel objet de type
article, spip ignore dans quelle rubrique il sera rangé. Il ne l'apprend
qu'au moment où l'on clique pour la première fois sur le bouton
enregistrer du formulaire.
Y compris lorsque l'on s'est positionné dans une rubrique particulière
pour y créer ledit article. A ce moment là, le numéro de rubrique est
une variable qui ne sera exploitée qu'au moment de l'enregistrement,
c'est à dire bien après que le formulaire ait été choisi.
En revanche, lorsqu'on édite un article déjà existant, spip connait la
rubrique dans laquelle se trouve l'article avant d'appeler le formulaire
correspondant.

- --
Yanic Gornet - 0 608 604 681
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAko1/r0ACgkQOaMaLeePBwkveACgzPFB++f5fCZba6TmHJktsHpW
zHQAoI7hk+TT0Tw7a3lAJEl5BFJElwTL
=hpfI
-----END PGP SIGNATURE-----
_______________________________________________
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

Le 15 juin 2009 10:52, Catherine Ossakowsky <caossak@gmail.com> a écrit :

Je pense effectivement que c’est la bonne piste.

Mais à vrai dire je ne vois pas où il faut que mette cet appel.

Le seul appel qui existe dans spip pour ce formulaire est utilisé dans
prive/editer/article.html et n’est appelé apparemment que pour l’édition
d’un article déjà existant.

En fait j’ai réussi en supprimant unset($valeurs[‹ id_rubrique ›]); de la
fonction formulaires_editer_article_charger_dist dans editer_article.html.

Ca résout mon problème (j’espère que ça n’en créera pas d’autres)

Tu vas vite voir que si … :slight_smile:
Tu as raison, le problème vient de là, mais sa résolution n’est pas si triviale…

Cédric

Le 15 juin 2009 12:30, Catherine Ossakowsky <caossak@gmail.com> a écrit :

Effectivement j’aurai du valider la création avant d’envoyer mon post. Spip génère une erreur et me dit que le ficher editer_4 est introuvable. (j’aime son laconisme :wink: ). (l’article créé appartient à la rubrique 4)

Je l’ai créé en copiant le fichier editer.php ð editer_4. php.

Ma bidouille d’apprentie sorcière n’a point marché.

Pourtant ça doit pas être si compliqué…

Comme je disais :
« Tu as raison, le problème vient de là, mais sa résolution n’est pas si triviale… »

Cédric tu as l’air de savoir ? non ?

Comme je disais :
« sa résolution n’est pas si triviale… »

Le 15 juin 2009 13:49, Catherine Ossakowsky <caossak@gmail.com> a écrit :

Re-bonjour,

Pourquoi ne pas m’aider ? A vrai dire je ne comprends pas ta réponse.

si j’avais la solution, je te la donnerai. Malheureusement je ne l’ai pas.
Et connaissant particulièrement bien le code sous jacent, je sais que ça n’est pas trivial.
Le problème, en apparence simple nécessite de trouver une solution propre pour ne pas avoir à modifier plein de code.

C’est bien parce que ce n’est pas trivial que je demande de l’aide sur SPIP zone non ?

Ce n’est pas possible ? A moi de me démerder ?

Pour le moment, personne d’autre n’aura de solution, à ma connaissance. Donc oui, on peut dire qu’on compte sur toi pour trouver la solution ! :stuck_out_tongue:

Comment faites vous pour personnaliser correctement vos formulaire privés ?

Il y a encore peu ça n’était pas possible sauf à tout forker le core.
La 2.0 a introduit la possibilité théorique de personnaliser les formulaires de saisie avec -XX comme tous les squelettes de l’espace public.
Cette fonctionnalité n’avait pas encore été utilisée et tu essuies donc les plâtres.
Il faut qu’on trouve une solution, mais elle ne viendra pas forcément très vite.

Il y a un conflit entre

  • le besoin de contextualiser avec id_rubrique le nouvel article pour que le bon squelette soit selectionné,
  • la nécessité de ne pas laisser l’id_rubrique dans les arguments du formulaires pour tourner sur l’url qui peut contenir le dit id_rubrique.

La communauté des spipeurs experts doit faire des choses bien plus complexes que ça, j’imagine.

Le problème n’est pas vraiment la complexité, mais de savoir si c’est prévu pour ça ou pas (auquel cas il faut tout casser in fine).

C’est assez bizarre, de voir la quantité de contributions que provoque une question sur les droits d’image de la mascotte de SPIP (de la plus haute importance certes :wink: ), alors qu’une question sur l’utilisation de SPIP qui est la vocation première de laliste SPIP zone semble provoquer une sorte de méfiance, et me vaut une réponse qui clôt le débat sans toutefois me permettre d’avancer…

Pas de paranoïa. Personne ne garde la réponse pour soi histoire de te freiner.
Il n’y a juste pas de réponse simple à l’heure actuelle. Et ma réponse visait juste à souligner cela, alors que tu semblais ne pas l’avoir compris en suggérant que ça ne devait pas être compliqué.

Cédric