Référence des saisies

Cette documentation a été générée à partir de la v5.4.1 du plugin Saisies.

Sauter à : Toutes les saisies, Toutes les options de base, Toutes les options de dev.

Utilisation des options de base


Champ libreChoix restreintStructureContenu éditorialDivers
Options \ Saisiestextareainputemaildateradiocasecheckboxselectiondestinataireschoix_grillefieldsetexplicationconteneur_inlineselecteur_articleselecteur_rubrique_articleauteursselecteur_documentmotselecteur_rubriquehidden
afficher_art_dans_langue_interface-------------XX-----
afficher_langue-------------XX---X-
afficher_rub_dans_langue_interface--------------X---X-
afficher_siXXXXXXXXXXXX-XXXXXXX
afficher_si_avec_postXXXXXXXXXXXX-XXXXXXX
afficher_si_remplissage_uniquementXXXXXXXXXXXX-XXXXXXX
attentionXXXXXXXXXXX--XXXXXX-
attribut_title------X-------------
autocomplete-XX-----------------
cacher_option_intro-------X-------X-X--
choix_alternatif----X-XX------------
choix_alternatif_explication----X-XX------------
choix_alternatif_label----X-XX------------
choix_destinataires--------X-----------
classXXXXXXXX-X--X----X-X
colonnes------------X-------
colsX-------------------
conteneur_classXXXXXXXX-XXX-------X
data----X-XX------------
data_cols---------X----------
data_rows---------X----------
defautXXXXXXXX-------X-X-X
defaut_session-XX-----------------
depublie_choix----X-XX------------
disableXXXXXXXX-----XXX-XX-
disable_avec_postXXXXXXXX-----XXX-XX-
disable_choix----X-XX------------
erreur_obligatoireXXXXXXXXXX---XXXXXX-
explicationXXXXXXXXXXX--XXXXXX-
explication_apresXXXXXXXXXXX--XXXXXX-
forcer_select-----------------X--
heure_pas---X----------------
horaire---X----------------
id_groupe-----------------X--
info_obligatoireXXXXXXXXXX---XXXXXX-
inserer_barreX-------------------
labelXXXXXXXXXXX--XXXXXXX
label_case-----X--------------
label_non-----X--------------
label_oui-----X--------------
liens_meme_fenetre-----------X--------
limite_branche-------------X----X-
longueur_maxX-------------------
masquer-----------X--------
maximum_choix------X-------------
maxlength-XX-----------------
minlength-X------------------
multiple-------X-X---XXX-XX-
obligatoireXXXXXXXXXX---XXXXXX-
onglet----------X---------
onglet_vertical----------X---------
option_intro-------XX------X-X--
option_statut---------------X----
placeholderXXX-----------------
pliable----------X---------
plie----------X---------
previsualisationX-------------------
readonlyXXXX-X-------XX---X-
rowsX-------------------
size-XX----X-------X-X--
statut---------------X----
texte-----------X--------
titre-----------X--------
type-XX-----------------
type_choix--------X-----------
valeur_non-----X--------------
valeur_oui-----X--------------
vue_masquer_sous_groupe----X-XX------------

Utilisation des options de dev

Options disponibles uniquement pour le dévellopement PHP/Squelette.


Champ libreChoix restreintStructureContenu éditorialDivers
Options \ Saisiestextareainputemaildateradiocasecheckboxselectiondestinataireschoix_grillefieldsetexplicationconteneur_inlineselecteur_articleselecteur_rubrique_articleauteursselecteur_documentmotselecteur_rubriquehidden
alerte_role-----------X--------
alerte_type-----------X--------
attributsXXXXXXXXXXXX-XXXXXXX
idXXXXXXXXXXXX-XXXXXXX
inserer_debutXXXXXXXXXXXX-XXXXXXX
inserer_finXXXXXXXXXXXX-XXXXXXX

Toutes les saisies, par catégories

Champ libre

Bloc de texte (textarea)

Description : Un champ de texte sur plusieurs lignes.

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, class, cols, conteneur_class, defaut, disable, disable_avec_post, erreur_obligatoire, explication, explication_apres, info_obligatoire, inserer_barre, label, longueur_max, obligatoire, placeholder, previsualisation, readonly, rows

Options de dev :
attributs, id, inserer_debut, inserer_fin

Ligne de texte (input)

Description : Une simple ligne de texte, pouvant être visible ou masquée (mot de passe).

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, autocomplete, class, conteneur_class, defaut, defaut_session, disable, disable_avec_post, erreur_obligatoire, explication, explication_apres, info_obligatoire, label, maxlength, minlength, obligatoire, placeholder, readonly, size, type

Options de dev :
attributs, id, inserer_debut, inserer_fin

Adresse email (email)

Description : Permet d’avoir un champ de type email en HTML5.

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, autocomplete, class, conteneur_class, defaut, defaut_session, disable, disable_avec_post, erreur_obligatoire, explication, explication_apres, info_obligatoire, label, maxlength, obligatoire, placeholder, readonly, size, type

Options de dev :
attributs, id, inserer_debut, inserer_fin

Date (date)

Description : Permet de saisir une date à l’aide d’un calendrier

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, class, conteneur_class, defaut, disable, disable_avec_post, erreur_obligatoire, explication, explication_apres, heure_pas, horaire, info_obligatoire, label, obligatoire, readonly

Options de dev :
attributs, id, inserer_debut, inserer_fin

Choix restreint

Boutons radios (radio)

Description : Permet de choisir une option parmi plusieurs disponibles.

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, choix_alternatif, choix_alternatif_explication, choix_alternatif_label, class, conteneur_class, data, defaut, depublie_choix, disable, disable_avec_post, disable_choix, erreur_obligatoire, explication, explication_apres, info_obligatoire, label, obligatoire, vue_masquer_sous_groupe

Options de dev :
attributs, id, inserer_debut, inserer_fin

Case unique (case)

Description : Permet d’activer ou de désactiver quelque chose.

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, class, conteneur_class, defaut, disable, disable_avec_post, erreur_obligatoire, explication, explication_apres, info_obligatoire, label, label_case, label_non, label_oui, obligatoire, readonly, valeur_non, valeur_oui

Options de dev :
attributs, id, inserer_debut, inserer_fin

Cases à cocher (checkbox)

Description : Permet de choisir plusieurs options avec des cases.

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, attribut_title, choix_alternatif, choix_alternatif_explication, choix_alternatif_label, class, conteneur_class, data, defaut, depublie_choix, disable, disable_avec_post, disable_choix, erreur_obligatoire, explication, explication_apres, info_obligatoire, label, maximum_choix, obligatoire, vue_masquer_sous_groupe

Options de dev :
attributs, id, inserer_debut, inserer_fin

Liste déroulante / sélection (selection)

Description : Choisir une option dans une liste déroulante.

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, cacher_option_intro, choix_alternatif, choix_alternatif_explication, choix_alternatif_label, class, conteneur_class, data, defaut, depublie_choix, disable, disable_avec_post, disable_choix, erreur_obligatoire, explication, explication_apres, info_obligatoire, label, multiple, obligatoire, option_intro, size, vue_masquer_sous_groupe

Options de dev :
attributs, id, inserer_debut, inserer_fin

Destinataires (destinataires)

Description : Permet de choisir des destinataires parmi des comptes pré-sélectionnés.

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, choix_destinataires, erreur_obligatoire, explication, explication_apres, info_obligatoire, label, obligatoire, option_intro, type_choix

Options de dev :
attributs, id, inserer_debut, inserer_fin

Grille de questions (choix_grille)

Description : Permet de poser une série de questions à choix multiple d’une manière uniformisé et sous forme de grille

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, class, conteneur_class, data_cols, data_rows, erreur_obligatoire, explication, explication_apres, info_obligatoire, label, multiple, obligatoire

Options de dev :
attributs, id, inserer_debut, inserer_fin

Structure

Groupe de champs (fieldset)

Description : Un cadre qui pourra englober plusieurs champs.

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, conteneur_class, explication, explication_apres, label, onglet, onglet_vertical, pliable, plie

Options de dev :
attributs, id, inserer_debut, inserer_fin

Explication (explication)

Description : Un texte explicatif général.

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, conteneur_class, liens_meme_fenetre, masquer, texte, titre

Options de dev :
alerte_role, alerte_type, attributs, id, inserer_debut, inserer_fin

Affichage en ligne (conteneur_inline)

Description : Pour regrouper visuellement des champs en ligne.

Options de base :
class, colonnes

Options de dev :
alerte_role, alerte_type, attributs, id, inserer_debut, inserer_fin

Contenu éditorial

Article (selecteur_article)

Description : Affiche un navigateur de sélection d’article

Options de base :
afficher_art_dans_langue_interface, afficher_langue, afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, disable, disable_avec_post, erreur_obligatoire, explication, explication_apres, info_obligatoire, label, limite_branche, multiple, obligatoire, readonly

Options de dev :
attributs, id, inserer_debut, inserer_fin

Article ou rubrique (selecteur_rubrique_article)

Description : Affiche un navigateur de sélection d’article ou de rubrique

Options de base :
afficher_art_dans_langue_interface, afficher_langue, afficher_rub_dans_langue_interface, afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, disable, disable_avec_post, erreur_obligatoire, explication, explication_apres, info_obligatoire, label, multiple, obligatoire, readonly

Options de dev :
attributs, id, inserer_debut, inserer_fin

Autrices et auteurs (auteurs)

Description : Permet de sélectionner un auteur, une autrice, ou plusieurs

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, cacher_option_intro, defaut, disable, disable_avec_post, erreur_obligatoire, explication, explication_apres, info_obligatoire, label, multiple, obligatoire, option_intro, option_statut, size, statut

Options de dev :
attributs, id, inserer_debut, inserer_fin

Document (selecteur_document)

Description : Affiche un sélecteur de document

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, erreur_obligatoire, explication, explication_apres, info_obligatoire, label, obligatoire

Options de dev :
attributs, id, inserer_debut, inserer_fin

Mot-clé (mot)

Description : Des mots-clés d’un groupe de mot

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, cacher_option_intro, class, defaut, disable, disable_avec_post, erreur_obligatoire, explication, explication_apres, forcer_select, id_groupe, info_obligatoire, label, multiple, obligatoire, option_intro, size

Options de dev :
attributs, id, inserer_debut, inserer_fin

Rubrique (selecteur_rubrique)

Description : Affiche un navigateur de sélection de rubrique

Options de base :
afficher_langue, afficher_rub_dans_langue_interface, afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, attention, disable, disable_avec_post, erreur_obligatoire, explication, explication_apres, info_obligatoire, label, limite_branche, multiple, obligatoire, readonly

Options de dev :
attributs, id, inserer_debut, inserer_fin

Divers

Champ caché (hidden)

Description : Un champ pré-rempli que l’internaute ne pourra pas voir.

Options de base :
afficher_si, afficher_si_avec_post, afficher_si_remplissage_uniquement, class, conteneur_class, defaut, label

Options de dev :
attributs, id, inserer_debut, inserer_fin

Toutes les options de base

Affichage multilingue (afficher_art_dans_langue_interface)

Description : Afficher uniquement les articles de la langue de l’internaute

Utilisée par :
selecteur_article, selecteur_rubrique_article

Afficher la langue (afficher_langue)

Description : Affiche la langue de l’article ou rubrique sélectionné devant le titre

Utilisée par :
selecteur_article, selecteur_rubrique, selecteur_rubrique_article

Affichage multilingue (afficher_rub_dans_langue_interface)

Description : Afficher uniquement les rubriques de la langue de l’internaute

Utilisée par :
selecteur_rubrique, selecteur_rubrique_article

Affichage conditionnel (afficher_si)

Description : Indiquez les conditions pour afficher le champ en fonction de la valeur des autres champs. L’identifiant des autres champs doit être mis entre @.
Exemple @selection_1@=="Toto" conditionne l’affichage du champ à ce que le champ selection_1 ait pour valeur la clé Toto.
Il est possible d’utiliser les opérateurs booléens || (ou) et && (et).
Vous trouverez la documentation complète de la syntaxe sur SPIP-contrib.

Utilisée par :
auteurs, case, checkbox, choix_grille, date, destinataires, email, explication, fieldset, hidden, input, mot, radio, selecteur_article, selecteur_document, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Poster tout de même -Poster la valeur en cas de masquage de saisie (afficher_si_avec_post)

Description : Par défaut les valeurs des saisies masquées par l’affichage conditionnel ne sont pas postées, donc pas enregistrées. Cochez cette case pour changer ce comportement.

Utilisée par :
auteurs, case, checkbox, choix_grille, date, destinataires, email, explication, fieldset, hidden, input, mot, radio, selecteur_article, selecteur_document, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Uniquement lors du remplissage -Masquer la saisie uniquement lors du remplissage (afficher_si_remplissage_uniquement)

Description : En cochant cette case, l’affichage conditionnel s’appliquera uniquement lors du remplissage du formulaire, pas lors de l’affichage des résultats.

Utilisée par :
auteurs, case, checkbox, choix_grille, date, destinataires, email, explication, fieldset, hidden, input, mot, radio, selecteur_article, selecteur_document, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Avertissement (attention)

Description : Un message plus important que l’explication.

Utilisée par :
auteurs, case, checkbox, choix_grille, date, destinataires, email, fieldset, input, mot, radio, selecteur_article, selecteur_document, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Valeur en attribut title -Mettre un attribut title dans le label, contenant la valeur technique du champ. À utiliser avec modération. (attribut_title)

Description : Mettre un attribut title dans le label, contenant la valeur technique du champ. À utiliser avec modération.

Utilisée par :
checkbox

Pré-remplissage du champ (autocomplete)

Description : Au chargement de la page, votre navigateur peut pré-remplir le champ en fonction de son historique

Utilisée par :
email, input

Choix possibles :

  • « defaut » : Laisser par défaut
  • « on » : Activer
  • « off » : Désactiver

Cacher le premier choix vide (cacher_option_intro)

Utilisée par :
auteurs, mot, selection

Proposer un choix alternatif (choix_alternatif)

Utilisée par :
checkbox, radio, selection

Explication du choix alternatif (choix_alternatif_explication)

Utilisée par :
checkbox, radio, selection

Label de ce choix alternatif (choix_alternatif_label)

Utilisée par :
checkbox, radio, selection

Destinataires possibles (choix_destinataires)

Description : Liste d’auteurs et d’autrices pour une sélection de destinataires par l’internaute, à défaut ce sera la personne qui a installé le site.

Utilisée par :
destinataires

Classes CSS supplémentaires (class)

Utilisée par :
case, checkbox, choix_grille, conteneur_inline, date, email, hidden, input, mot, radio, selection, textarea

Mode d’affichage (colonnes)

Utilisée par :
conteneur_inline

Choix possibles :

  • « 1ligne_max » : Largeur automatique, sur une seule ligne, prendre le plus de place
  • « 1ligne » : Largeur automatique, sur une seule ligne, prendre le moins de place
  • « xlignes_max » : Largeur automatique, sur plusieurs lignes, prendre le plus de place
  • « xlignes » : Largeur automatique, sur plusieurs lignes, prendre le moins de place
  • « col2 » : Deux champs par ligne
  • « col3 » : Trois champs par ligne
  • « col4 » : Quatre champs par ligne

Largeur (cols)

Description : Largeur du bloc en nombre de caractères. Cette option n’est pas toujours appliquée car les styles CSS de votre site peuvent l’annuler.

Utilisée par :
textarea

Classes CSS supplémentaires sur le conteneur (conteneur_class)

Utilisée par :
case, checkbox, choix_grille, date, email, explication, fieldset, hidden, input, radio, selection, textarea

Liste des choix possibles (data)

Description : Vous devez indiquez un choix par ligne sous la forme « cle|Label du choix ».
La clé doit être unique, brève, claire et ne doit plus être modifiée par la suite.

Description pour les devs : Fournir une liste de choix sous la forme d’un tableau PHP (array()) ou SPIP (#ARRAY) sous forme "clé" => "valeur".
Vous pouvez regrouper en sous groupe. Pour ce faire, la clé doit être le titre du sous groupe, et la valeur doit être elle-même un tableau associatif de type "clé" => "valeur".

Utilisée par :
checkbox, radio, selection

Réponses possibles (en colonne) (data_cols)

Description : Vous devez indiquez un choix par ligne sous la forme « cle|Label du choix ».
La clé doit être unique, brève, claire et ne doit plus être modifiée par la suite.

Description pour les devs : Fournir un liste de choix sous la forme d’un tableau PHP (array()) ou SPIP (#ARRAY) de type "cle"=>"Label du choix".

Utilisée par :
choix_grille

Questions (en ligne) (data_rows)

Description : Vous devez indiquer un choix par ligne sous la forme « cle|Label du choix » ou bien « cle|Label à gauche|Label à droite »
La clé doit être unique, brève, claire et ne doit plus être modifiée par la suite.

Description pour les devs : Fournir une liste de choix sous la forme d’un tableau PHP (array()) ou SPIP (#ARRAY) de type "cle"=>"Label du choix" ou bien "cle"=>"Label à gauche|Label à droite".

Utilisée par :
choix_grille

Valeur par défaut (defaut)

Utilisée par :
auteurs, case, checkbox, date, email, hidden, input, mot, radio, selection, textarea

Valeur par défaut depuis la session de l’internaute (defaut_session)

Description : Mettre le champ de session à utiliser. Si ce champ existe dans la session courante, sa valeur l’emportera sur la valeur par défaut.

Utilisée par :
email, input

Choix possibles :

  • « 0 » : email
  • « 1 » : nom

Dépublier certains choix (depublie_choix)

Description : Un choix dépublié ne sera plus proposé pour les nouveaux formulaires. Il restera visible si on modifie un enregistrement qui contenait ce choix.
Indiquer les choix séparés par une virgule, exemple : choix1,choix3.

Description pour les devs : Un choix dépublié ne sera plus proposé pour les nouveaux formulaires. Il restera visible si on modifie un enregistrement qui contenait ce choix.
Indiquer les choix sous forme de tableau, exemple : ["choix1","choix3"].

Utilisée par :
checkbox, radio, selection

Désactiver le champ (disable)

Description : Le champ ne peut plus obtenir le focus.

Utilisée par :
auteurs, case, checkbox, date, email, input, mot, radio, selecteur_article, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Désactiver mais poster (disable_avec_post)

Description : Identique à l’option précédente mais poste quand même la valeur dans un champ caché.

Utilisée par :
auteurs, case, checkbox, date, email, input, mot, radio, selecteur_article, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Désactiver certains choix (disable_choix)

Description : Indiquer les choix séparés par une virgule, exemple : choix1,choix3.

Description pour les devs : Indiquer les choix sous forme de tableau, exemple : ["choix1","choix3"].

Utilisée par :
checkbox, radio, selection

Message d’erreur pour l’obligation (erreur_obligatoire)

Description : Vous pouvez personnaliser le message d’erreur affiché pour indiquer l’obligation (sinon laisser vide).

Utilisée par :
auteurs, case, checkbox, choix_grille, date, destinataires, email, input, mot, radio, selecteur_article, selecteur_document, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Explication (explication)

Description : Si besoin, une courte phrase décrivant l’objet du champ.

Utilisée par :
auteurs, case, checkbox, choix_grille, date, destinataires, email, fieldset, input, mot, radio, selecteur_article, selecteur_document, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Explication après le champ (explication_apres)

Attention : Pour des raisons d’accessibilité, les explications importantes doivent toujours être avant la saisie.

Utilisée par :
auteurs, case, checkbox, choix_grille, date, destinataires, email, fieldset, input, mot, radio, selecteur_article, selecteur_document, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Forcer l’utilisation d’un select (forcer_select)

Description : Si un groupe de mots est sélectionné, par défaut il s’agira d’une saisie radio. Vous pouvez forcer l’utilisation d’un select.

Utilisée par :
mot

Intervalle des minutes dans le menu d’aide à la saisie (heure_pas)

Description : Lorsque vous utilisez l’horaire, un menu s’affiche pour aider à saisir heures et minutes. Vous pouvez ici choisir l’intervalle de temps entre chaque choix (par défaut 30min).

Utilisée par :
date

Choix possibles :

  • « 0 » : 1 minute
  • « 1 » : 2 minutes
  • « 2 » : 5 minutes
  • « 3 » : 15 minutes
  • « 4 » : 30 minutes

Horaire -Permettre de saisir aussi l’horaire (horaire)

Description : Permettre de saisir aussi l’horaire

Utilisée par :
date

Groupe de mots (id_groupe)

Utilisée par :
mot

Indication d’obligation (info_obligatoire)

Description : Vous pouvez modifier l’indication d’obligation par défaut : [Obligatoire]. Pour garder l’information par défaut, ne rien mettre. Pour ne rien afficher, mettre un texte composé uniquement d’espace.

Utilisée par :
auteurs, case, checkbox, choix_grille, date, destinataires, email, input, mot, radio, selecteur_article, selecteur_document, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Insérer une barre d’outils (inserer_barre)

Description : Insère une barre d’outils du porte-plume si ce dernier est activé.

Utilisée par :
textarea

Choix possibles :

  • « edition » : barre d’édition complète
  • « forum » : barre des forums

Label (label)

Description : Le titre qui sera affiché.

Utilisée par :
auteurs, case, checkbox, choix_grille, date, destinataires, email, fieldset, hidden, input, mot, radio, selecteur_article, selecteur_document, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Label placé à côté de la case (label_case)

Utilisée par :
case

Label si la case n’est pas cochée (label_non)

Description : Sera visible lors de l’affichage des résultats.

Utilisée par :
case

Label si la case est cochée (label_oui)

Description : Sera visible lors de l’affichage des résultats.

Utilisée par :
case

Ouvrir les liens dans la même fenêtre (liens_meme_fenetre)

Utilisée par :
explication

Limiter à une branche (limite_branche)

Description : Limitera le choix à une branche spécifique du site

Utilisée par :
selecteur_article, selecteur_rubrique

Nombre de caractères maximum (longueur_max)

Description : L’internaute ne pourra pas saisir plus de caractères que ce nombre.

Utilisée par :
textarea

Ajouter un bouton afficher/masquer l’explication (masquer)

Utilisée par :
explication

Limiter le nombre de choix (maximum_choix)

Description : Nombre de choix maximum ?

Utilisée par :
checkbox

Nombre de caractères maximum (maxlength)

Description : L’internaute ne pourra pas saisir plus de caractères que ce nombre.

Utilisée par :
email, input

Nombre de caractères minimum (minlength)

Description : L’internaute ne pourra pas saisir moins de caractères que ce nombre.

Utilisée par :
input

Sélection multiple (multiple)

Description : L’internaute pourra sélectionner plusieurs valeurs

Utilisée par :
auteurs, choix_grille, mot, selecteur_article, selecteur_rubrique, selecteur_rubrique_article, selection

Champ obligatoire (obligatoire)

Utilisée par :
auteurs, case, checkbox, choix_grille, date, destinataires, email, input, mot, radio, selecteur_article, selecteur_document, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Onglet -Afficher sous forme d’onglet (onglet)

Description : Afficher sous forme d’onglet

Utilisée par :
fieldset

Onglet vertical (onglet_vertical)

Description : Il suffit qu’un seul onglet dans un groupe soit marqué comme vertical pour que l’ensemble des onglets soient verticaux.

Utilisée par :
fieldset

Label du premier choix vide (option_intro)

Utilisée par :
auteurs, destinataires, mot, selection

Afficher les statuts (option_statut)

Utilisée par :
auteurs

Placeholder (placeholder)

Utilisée par :
email, input, textarea

Pliable -Le groupe de champs pourra être replié (pliable)

Description : Le groupe de champs pourra être replié

Utilisée par :
fieldset

Déjà plié -Si le groupe de champs est pliable, il sera déjà plié à l’affichage du formulaire (plie)

Description : Si le groupe de champs est pliable, il sera déjà plié à l’affichage du formulaire

Utilisée par :
fieldset

Activer la prévisualisation (previsualisation)

Description : Si le porte-plume est activé, ajoute un onglet pour prévisualiser le rendu du texte saisi.

Utilisée par :
textarea

Lecture seule (readonly)

Description : Le champ peut être lu, sélectionné, mais pas modifié.

Utilisée par :
case, date, email, input, selecteur_article, selecteur_rubrique, selecteur_rubrique_article, textarea

Nombre de lignes (rows)

Description : Hauteur du bloc en nombre de ligne. Cette option n’est pas toujours appliquée car les styles CSS de votre site peuvent l’annuler.

Utilisée par :
textarea

Taille du champ (size)

Description : Largeur du champ en nombre de caractères. Cette option n’est pas toujours appliquée car les styles CSS de votre site peuvent l’annuler.

Utilisée par :
auteurs, email, input, mot, selection

Statut(s) particulier(s) (statut)

Utilisée par :
auteurs

Choix possibles :

  • « 0minirezo » : Administrateurs
  • « 1comite » : Rédacteurs
  • « 6forum » : Visiteurs

Texte de l’explication (texte)

Description : Un texte explicatif général.

Utilisée par :
explication

Titre de l’explication (titre)

Utilisée par :
explication

Texte masqué lors de la saisie (ex : mot de passe) (type)

Utilisée par :
email, input

Type de choix (type_choix)

Utilisée par :
destinataires

Choix possibles :

  • « tous » : Mettre toutes ces personnes en destinataires. L’internaute n’aura aucun choix.
  • « un » : Permettre à l’internaute de choisir une seule personne (sous forme de liste déroulante).
  • « un_radio » : Permettre à l’internaute de choisir une seule personne (sous forme de liste à puce).
  • « plusieurs » : Permettre à l’internaute de choisir plusieurs destinataires.

Valeur non (valeur_non)

Description : Valeur postée si la case n’est pas cochée. Attention, il s’agit d’une valeur technique et non d’une valeur affichée.

Utilisée par :
case

Valeur oui (valeur_oui)

Description : Valeur postée si la case est cochée. Attention, il s’agit d’une valeur technique et non d’une valeur affichée.

Utilisée par :
case

Lors de l’affichage du résultat, n’afficher que la valeur, sans le sous-groupe (vue_masquer_sous_groupe)

Utilisée par :
checkbox, radio, selection

Toutes les options de dev

Options disponibles uniquement pour le dévellopement PHP/Squelette.

Rôle d’alerte (alerte_role)

Description : Si besoin, pour l’espace privé uniquement choisir un rôle d’alerte (attribut html role : alert, status, etc.).

Utilisée par :
explication

Type d’alerte (alerte_type)

Description : Si besoin, pour l’espace privé uniquement choisir un type d’alerte parmis ceux proposés par SPIP (notice, error, success, info).

Utilisée par :
explication

Attributs HTML supplémentaires (attributs)

Description : Les attributs portent sur chaque champ html, y compris pour les saisies avec plusieurs champs (radio, checkbox, etc.).

Utilisée par :
auteurs, case, checkbox, choix_grille, date, destinataires, email, explication, fieldset, hidden, input, mot, radio, selecteur_article, selecteur_document, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Attribut id de la saisie (id)

Description : Sera automatiquement préfixé par champ_.

Utilisée par :
auteurs, case, checkbox, choix_grille, date, destinataires, email, explication, fieldset, hidden, input, mot, radio, selecteur_article, selecteur_document, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Code à insérer en début de saisie (inserer_debut)

Utilisée par :
auteurs, case, checkbox, choix_grille, date, destinataires, email, explication, fieldset, hidden, input, mot, radio, selecteur_article, selecteur_document, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Code à insérer en fin de saisie (inserer_fin)

Utilisée par :
auteurs, case, checkbox, choix_grille, date, destinataires, email, explication, fieldset, hidden, input, mot, radio, selecteur_article, selecteur_document, selecteur_rubrique, selecteur_rubrique_article, selection, textarea

Addendum historique

  • L’option datas est encore supportée, mais on lui préferera l’option data.
  • La saisie oui_non ne doit plus être utilisée. On lui préférera la saisie radio, avec des libellés pouvant se comprendre hors contexte (« J’accepte telle action » / « Je refuse telle action »).
  • La saisie selection_multiple ne doit plus être utilisée. On lui préféra la saisie selection avec l’option multiple.

Discussion

39 discussions

  • 7

    bonjour
    y a t-il un moyen de permettre de classer les rubriques ou les articles sélectionnés avec selecteur_rubrique_article ou selecteur_article en restant dans le formulaire ?

    • Il me semble que c’est le cas non ? Quand ya le choix multiple, on peut drag n drop la sélection pour changer l’ordre, et ça change alors le tableau PHP final qu’on reçoit de mémoire (c’est exactement comme ça que Polyhiérarchie sépare le premier de la liste des autres, en mettant le premier en vraie rubrique et les autres en rubrique secondaire).

    • j’ai par exemple la saisie suivante
      array(
      ’saisie’ => ’selecteur_article’,
      ’options’ => array(
      ’nom’ => ’sel1_art’,
      ’multiple’ => ’oui’,
      ’label’ => ’<:paramsite:champ_article_label :>’,
      ’explication’ => ’<:paramsite:champ_article_explication :>’,
      ’defaut’ => ’’,

      )
      ),

      et je ne vois pas ou je peux faire un drag and drop lorsque l’on saisie des articles avant ou aprés fermer

    • Plus exactement le drag and drop ne fonctionne pas.
      Par contre si j active le plugin polyhiersrchie son drag and drop fonctionne bien mais il n utilise pas le même mécanisme de saisie.

    • Pourtant si ça utilise bien le même mécanisme : uniquement redirection vers les sélecteurs rubriques et articles du core : https://git.spip.net/spip-contrib-extensions/polyhierarchie/src/branch/master/formulaires/inc-selecteur-parents.html

      Et dans les deux cas ya bien le JS inséré :
      https://git.spip.net/spip/spip/src/branch/master/prive/formulaires/selecteur/articles.html#L2

    • après de nombreux test j’ai vue que si plusieurs selecteur_rubrique et/ou selecteur_rubrique_article multiple étaient présent dans le formulaire .... seul le premier était dragable en particulier avec afficher_si

      'saisies' =>  array(          
                      array(
                              'saisie' => 'selection',
                              'options' => array(
                                      'nom' => 'sel1_choix',
                                      'label' => '<:paramsite:champ_choix_label:>',
                                      'explication' => '<:paramsite:champ_choix_explication:>',
                                      'defaut' => 'articles',
                                      'cacher_option_intro' => 'oui',
                                      'data' => array(
                                          'art' => 'articles',
                                              'rub' => 'rubriques',
                                              'artrub' => 'articles et rubriques',
                                                                                      )
                                      )
                              ),        
                                                      
               
                      array(
                              'saisie' => 'selecteur_rubrique_article',
                              'options' => array(
                                      'nom' => 'sel1_rubart',
                                      'multiple' => 'oui',
                                      'afficher_si' => '@sel1_choix@  == "artrub"'
                                      
                                      )
                              ),
                              
                      array(
                              'saisie' => 'selecteur_rubrique',
                              'options' => array(
                                      'nom' => 'sel1_rub',
                                      'multiple' => 'oui',
                                      'label' => '<:paramsite:champ_rubrique_label:>',
                                      'explication' => '<:paramsite:champ_rubrique_explication:>',
                                      'defaut' => '',
                                      'afficher_si' => '@sel1_choix@  == "rub"'
                                      )
                              ),

      ou meme

      $saisies = array(	   //unesaisie		
      		
      	   
      			
      		
      	$general_fieldset = array( // ONGLET GENERAL
      		'saisie' => 'fieldset',
      		'options' => array(
      			'nom' => 'general',
      			'label' => 'général',
      			
      			),
      		
      		'saisies' =>  array(	   //unesaisie
      		
      		
      		array(
      			'saisie' => 'selecteur_rubrique',
      			'options' => array(
      				'nom' => 'rub',
      				'label' => 'rubrique',
      				'multiple' =>'oui',
      								
      				
      				)
      			),
      		array(
      			'saisie' => 'selecteur_rubrique',
      			'options' => array(
      				'nom' => 'rub2',
      				'label' => 'rubrique',
      				'multiple' =>'oui',
      								
      				
      				)
      			),
      		array(
      			'saisie' => 'selecteur_article',
      			'options' => array(
      				'nom' => 'art',
      				'multiple' => 'non',
      				'label' => 'article',
      				
      				
      				
      				
      				)
      			),
      		
      	
      		
      		)
      	)
      	);
      	
      return $saisies;
    • pour selecteur_article cela fonctionne si j’ajoute ( juste en test) dans prive/formulaires/selecteur/articles de spip le code suivantqui existe dans le fichier rubriques présent au même endroit

      
      [(#ENV{sortable,non}|=={oui}|oui)
      <script type='text/javascript'>
      (function(){
      const picked_sorter = () => {
      new Sortable(document.querySelector("ul.item_picked"));
      };
      if (typeof Sortable === "undefined") {
      jQuery.getScript('[(#CHEMIN{prive/javascript/Sortable.min.js}|timestamp)]').done(picked_sorter);
      } else {
      picked_sorter();
      }
      })();
      </script>
      ]
    • Bon je me suis un peu embrouille dans mes explications en résume :
      si il y a plusieurs selecteur_article ou et selecteur_rubrique et ou selecteur_rubrique_article dans le meme formulaire de l’espace prive ... seul le premier selecteur est dragable.

      par ex : selecteur_article ,selecteur_rubrique seul article est dragable.
      selecteur_rubrique selecteur_ article c’est rubrique qui est dragable
      selecteurs_articles selecteur_article : seul le premier est dragable
      selecteur_rubrique_article .selecteur_article : seul rubrique_article est dragable..

    Répondre à ce message

  • 2

    comment peut on ne voir que les articles « publies » avec saisie ?
    en spip 4.2.6 saisie 4.7.1 le code suivant me donne les articles publies et non publies
    array(
    ’saisie’ => ’selecteur_article’,
    ’options’ => array(
    ’nom’ => ’sel1_art’,
    ’multiple’ => ’oui’,
    ’label’ => ’<:paramsite:champ_article_label :>’,
    ’explication’ => ’<:paramsite:champ_article_explication :>’,
    ’defaut’ => ’’,

    )
    ),
    merci

    • Je ne crois pas que ce soit possible avec le sélecteur du core, qui est fait pour faire des interfaces dans l’admin : https://git.spip.net/spip-contrib-extensions/saisies/src/branch/master/saisies/selecteur_article.html#L38

      Il n’y a aucun « env » passé à l’inclusion, donc on ne peut passer aucun environnement supplémentaire au sélecteur du core à qui on délègue et qui aurait pu avoir un {statut?} éventuellement dans la boucle (et de toute façon le picker en ajax ne prévoit pas de passer ça).

    • cela semble fonctionner en ajoutant statut=publie dans selecteur_article
      on ne sélectionne que les articles publiés... car dans prive/formulaires/ selecteurs / articles la boucle contient le champ statut.

      <BOUCLE_art(ARTICLES){statut?}{tout}{id_article}>#SET{id_rubrique,#ID_RUBRIQUE}</BOUCLE_art>

      avec un

       statut=#ENV{statut,""} 

      cela serait peut être généralisable

      [(#INCLURE{fond=formulaires/selecteur/articles,
      	selected=#GET{val},
      	name=#ENV{nom},
      	afficher_langue=#ENV{afficher_langue,''},
      	filtrer_langue_article=#GET{filtrer_langue_article,''},
      	select=[(#ENV{multiple}|?{0,1})],
      	sortable=[(#ENV{multiple}|?{oui,non})],
      	tri==[(#ENV{multiple}|?{0,1})],
      	limite_branche=#ENV{limite_branche,''},
      	rubriques=0,
      	statut=publie})]

    Répondre à ce message

  • 7

    Bonjour,
    une question sur l’affichage visuel des champs,
    on peut mettre deux champs de saisies en php dans un fieldset, ça fonctionne bien.
    Mais comment ajouter une class spécifique englobant ces deux champs.
    Avec bootstrap (ou d’autres framework css), si le div class editer-groupe du fieldset pouvait prendre la class row, les deux champs avec un col-6 se rangeraient côte à côte gentiment.
    Voici mon code

    	// Champ tel_fixe
    	$fieldset_tel_fixe[] = array(
    		'saisie' => 'input',
    		'options' => array(
    			'li_class' => 'form-group col-md-6', 
    			'class' => 'form-control', 
    			'nom' => 'tel_fixe',
    			'label' => _T('contact:champ_tel_fixe_label'),
    			'obligatoire' => 'oui',
    		),
    	);
    	
    	// Champ tel_fixe
    	$fieldset_tel_fixe[] = array(
    		'saisie' => 'case',
    		'options' => array(
    			'li_class' => 'form-group col-md-6', 
    			'class' => 'form-control', 
    			'nom' => 'tel_fixe_public',
    			'label' => _T('contact:champ_tel_fixe_label'),
    			'label_case' => 'rendre ce numéro public',
    		),
    	);
    	
    	$saisies[] = array(
    					'saisie' => 'fieldset',
    					'options' => array(
    						'nom' => 'telephone_fixe',
    						'class' => 'canemarchepas ici row',
    						'label' => _T('contacts:telephone_fixe'),
    						'conteneur_class' => 'fieldset_tel_fixe row',
    					),
    					'saisies' => $fieldset_tel_fixe
    	);

    Et belle année. pas trop môche en tout cas.
    Bisoux

    • Hello Touti, bonne année
      voilà une PR qui devrait te plaire et qu’il ne reste « plus que » à faire avancer jusqu’au bout (désolé de la longueur, faut justement finir de se mettre d’accord après tous ces débats) :)
      https://git.spip.net/spip-contrib-extensions/saisies/pulls/98

    • Hello,
      merci pour ta rapidité et la bonne année !
      pas fini de lire le fil, mais amha il y a confusion entre la possibilité de mettre une class du fait de la codeuse et le choix de cette class. Et là, je ne me prononce pas du tout puisque je suggère que cela dépende des souhaits de celle qui l’utilise.
      En fait ce serait plus clair de décider ou ajouter « class_conteneur » ou « class_li » ou « class_truc » pour toutes les saisies avec un niveau de profondeur par rapport au champ ? Nolosé, mais je m’abonne au fil GIT !

      ++

    • Il n’est pas prévu de personnaliser les classes à chaque niveau. Enfin si ça devait se faire ça serait propre à chaque saisie, chacun pouvant produire absolument n’importe quoi comme HTML. Mais vraiment, on va pas s’amuser à ajouter un champ de perso CSS pour chaque sous-niveau. En effet, la perso CSS sert à cibler tel *champ* précis, mais ensuite on utilise tout simplement la cascade pour styler le reste.

      Pour appliquer row il faut plutôt utiliser Bootstrap *en SCSS*, et donc pouvoir hériter des styles de row à n’importe quel sous-endroit d’une cascade de classe.

      Cependant, la PR que je pointais c’était pour une raison plus précise : ce n’est pas du tout en rapport avec le fait de pouvoir personnaliser des classes, mais plus précisément car tu parlais de vouloir mettre « en ligne » certains champs d’un groupe. Et justement cette PR a pour but que le plugin fournisse d’office une saisie officielle groupant les champs intérieurs « en ligne » par défaut, sans rien avoir à connaitre des CSS. Faut juste finir de se mettre d’accord sur la nomenclature et la limitation de ce que ça doit permettre. :)

    • Bonjour,
      Petit préambule : j’utilise CSS depuis quelques années et je connais SCSS, dont j’ai produit le plugin SPIP. Je suppose que je sais donc de quoi je parle, je sais parfaitement personnaliser les saisies, les CSS ou surcharger les class SCSS de Bootstrap. Ici, j’essaye d’appréhender les choses de façon générique et pour toutes personnes débutantes,.

      Tu dis

      Il n’est pas prévu de personnaliser les classes à chaque niveau.

      Uhuh, ça n’existe pas comme réponse, le principe est toujours d’anticiper, sinon dans ce cas, on ne fait rien, je ne proposer rien, et on n’écoute personne.

      Enfin si ça devait se faire ça serait propre à chaque saisie, chacun pouvant produire absolument n’importe quoi comme HTML

      Hum, je ne propose pas du tout de faire de la bouillie personnelle. Saisies concerne SPIP, beaucoup de plugins dont formidable et les classes actuelles sont des classes SPIP qu’il n’est pas facile de contrôler,
      Et je suis toujours dans l’optique d’offrir quelque chose de simple et compréhensible et ne pas avoir à tambouiller en scss.
      Donc anticiper et penser à une hiérarchie sémantique générique avec possibilités de baliser ces class ne serait-ce que par niveau (#css_pour_premier_conteneur / #css_pour_deuxieme_conteneur / #css_pour_dernier_conteneur) serait un plus. Un peu comme le #DIV a remplacé le <li> saisies offrirait un jeu avec des caractèristiques CSS facilement surchargeable.
      #css_pour_premier_conteneur => .editer-groupe

      Mais vraiment, on va pas s’amuser à ajouter un champ de perso CSS pour chaque sous-niveau.

      En établissant quelques principes, on aurait la même chose qu’un fichier de lang, un seul tableau avec les champs voulus … et surchargeable soit par le tableau soit dans la saisie elle même. Donc, adoption de différents framework possible. J’dis ça, j’dis rien.

      En effet, la perso CSS sert à cibler tel *champ* précis, mais ensuite on utilise tout simplement la cascade pour styler le reste.

      Oui, c’est tout le principe des class CSS.

      Pour appliquer row il faut plutôt utiliser Bootstrap *en SCSS*, et donc pouvoir hériter des styles de row à n’importe quel sous-endroit d’une cascade de classe.

      Oui, c’est tout le principe des class SCSS mais ce n’est pas facilement applicable en l’état avec les saisies, (à moins de faire de l’horlogerie), qui comme dans mon exemple ne dispose pas de cette possibilité d’insérer une class.

      Cependant, la PR que je pointais c’était pour une raison plus précise : ce n’est pas du tout en rapport avec le fait de pouvoir personnaliser des classes,

      Tu confonds pas insérer des class et les personnaliser ?

      … mais plus précisément car tu parlais de vouloir mettre « en ligne » certains champs d’un groupe.

      Donc de pouvoir insérer une class, ce qu’il n’est pas possible de faire en l’état.

      Et justement cette PR a pour but que le plugin fournisse d’office une saisie officielle groupant les champs intérieurs « en ligne » par défaut, sans rien avoir à connaitre des CSS. Faut juste finir de se mettre d’accord sur la nomenclature et la limitation de ce que ça doit permettre. :)

      Merci pour le résumé officiel, je comprends, mais je vais pas être désolée de trouver ça limité et pas générique et d’avoir d’autres idées :)

    • J’ai essayé de comprendre la conversation mais je suis pas sur d’avoir tout capté. Dis moi si je me trompe tout.

      Il me semble qu’il y a deux besoins différents exprimés :
      -  pouvoir regrouper des saisies sans passer par un fieldset : ça c’est la PR ouverte, avec encore des questions de convention à trancher
      -  pouvoir insérer automatiquement une classe selon le niveau de profondeur ? Ou bien c’est encore autre chose ? Si j’ai bien compris ce besoin, il me semble que l’on pourrait effectivement imaginer cela comme une option globale du formulaire, et se débrouiller pour calculer la profondeur par simple augmentation d’un co.pteur chaque fois qu’on passe à une sous saisie

    • En fait ce serait plus clair de décider ou ajouter « class_conteneur » ou « class_li » ou « class_truc » pour toutes les saisies avec un niveau de profondeur par rapport au champ ?

      C’est cette phrase que je ne comprend pas tout à fait.

    • Bonjour Maïeul,
      j’essayerai d’expliciter ces idées dès que j’ai le temps de faire des essais et vous remonter les tests.
      Pas d’urgence :)
      Bonne journée

    Répondre à ce message

  • 3

    Bonjour,
    Je suis en train de développer un thème et j’aimerais que, dans le backend, les administrateurs puissent uploader une image. Grâce au plugin SAISIES POUR FORMULAIRES, j’aimerais intégrer un INPUT type=« file » mais je n’y arrive pas. Dans la documentation ici présente, je vois pourtant le type de SAISIE qui s’appelle FICHIER mais SPIP me dit qu’aucun squelette n’est existant...

    • La saisie de type fichier est particulière. Elle est fournie avec CVT upload, et pas directement avec le plugin saisies.

      Par ailleurs, cvt upload ne fournit pas de traitement à posteriori. Donc je vous invite à lire la documentation

      https://contrib.spip.net/CVT-Upload

    • Bonjour et merci pour cette réponse qui confirme ce que j’en avais déduit suite à mes recherches. Je ne voulais pas installer un énième plugin mais si il le faut, je ferai des essais.

    • En me documentant, j’ai l’impression que c’est le plugin BIGUP qui est intégré dans plugins-dist et qui remplace CVT-upload. D’après ce lien, il y aurait une #SAISIEbigup mais je ne trouve pas de trace ici :/

    Répondre à ce message

  • 15

    salut

    j’ai essayé cette syntaxe, sans succès, dans la page html d’un formulaire cvt :

    [(#SAISIE{input, pratique_autre,
              affiche_si = '@pratique@ == "Autre"',
              label=<:label_autre:>})] 

    -  parceque le javascript n’est pas chargé ?
    -  parceque ce n’est pas la bonne syntaxe ?

    je suis perdu
    bien à vous, Yanic

    Répondre à ce message

  • 2

    Une question qui est probablement souvent posée (et dont je n’ai pas trouvé la réponse -je précise que je l’ai posée aussi sur le forum d’entraide en délayant un peu, et suis un peu perdue sur le fait) : comment élargir la liste des statuts d’auteurs disponibles (par défaut listés au choix parmi : admin/rédacteurs/visiteurs) pour faire apparaître de nouveaux statuts qu’on a au préalable créés (via mes_options et mes_fonctions) ? Je pose la question ici même si mon usage est pour un plugin perso créé avec ajout de ChampsExtras (qui dispose d’un paramétrage : « statuts d’auteurs » pré-sélectionnés pour restreindre la liste d’affichage des auteurs aux statuts prédéfinis — ChampsExtra s’appuie sur Saisie, il me semble). J’ai cru comprendre en lisant le code du fichier des mots-clés (fichier : mots\inc\mots.php, ligne 94-98) qu’il y a apparemment une difficulté à gérer les statuts des objets. Est-ce qu’il y a eu une avancée ou une solution sur ce point ? Ou bien, à défaut, pourrait-on afficher, dans le cas d’un objet qui est lié à un autre, (par ex. les auteurs liés à des mots-clés, ou autre objet créé) l’encart des auteurs avec leurs onglets de statuts, comme la façon dont ils s’affichent dans l’objet natif « Auteurs » (ex. en sélectionnant « afficher les auteurs » cela crée un affichage avec trois onglets en haut de tableau, administrateurs/rédacteurs/à la poubelle et en sélectionnant « afficher les visiteurs » cela crée un affichage avec un onglet visiteurs) ? La solution alternative est bien sûr d’utiliser le plugin « groupes d’auteurs » (ciag) et de sélectionner les groupes, mais les nouveaux statuts ne sont toujours pas pris en compte dans le formulaire de ChampsExtras, donc au pire il faut tout mettre dans « visiteurs » et puis faire un deuxième tri via « affichage sélectif » avec le groupe choisi. Ce qui est un peu dommage en soi, du point de vue informatique ( 2 critères de sélection au lieu d’un seul) et moins pratique si on a vraiment besoin de gérer des statuts différents affichés nativement dans spip sans avoir à passer par un plugin de groupe. Merci pour l’aide éventuelle et j’espère avoir été claire dans la question, c’est difficile d’exprimer ce que l’on veut quand on n’est pas informaticien ni web-developpeur (malgré bac+7 !)

    • Bonjour,
      C’est une constante dans SPIP, de n’avoir que quatre profils généraux. Ce n’est pas comme dans Drupal où le nombre de profils et les autorisations apportées sont (presque) illimitées.
      On peut trouver néanmoins de petites choses qui peuvent aider. Par exemple, vous pouvez définir à l’aide de champs extras différents « droits » que vous implémentez dans de nouveaux champs, et que vous utilisez ensuite dans vos boucles d’auteurs. Bien sur, vous n’avez pas créé des groupes de profils différenciés, et uniquement dans la partie publique du site, mais c’est déjà ça. En utilisant conjointement le plugin accès restreint, vous pouvez arriver à réaliser des merveilles.
      Mon conseil : comme il s’agit d’une différenciation des autorisations dans l’espace publique uniquement, n’ajoutez ces champs qu’aux visiteurs, cela fait un problème en moins pour l’accès à la partie privée.
      Et l’autre option, bien sûr : utiliser Drupal (mais son apprentissage risque d’être dur : drush, twig, composer ...

    • Je n’ai pas compris à quel endroit tu veux voir afficher les statuts supplémentaires. Il n’y a pas de saisie « statut d’auteurs », donc je ne crois pas que ça ait un rapport avec ce plugin et qu’il faudrait y répondre ici.

      Tu devrais plutôt poser la question sur le forum de Champs Extras à priori, si c’est lui qui construit un select avec uniquement en dur les statuts connus, au lieu de prendre la liste déclaré dans l’objet auteur par l’API.

    Répondre à ce message

  • 3

    Bonjour,
    Existe-t-il une possibilité d’exclusion de son propre login du champ auteurs ?
    Merci.

    • En répondant à mon propre commentaire, je dirais qu’il faut surement ajouter un id_auteur != #ENVid_auteur dans le fichiers saisies.
      Si j’ajoute dans les options de mon ficher php de formulaire une ligne ’id_auteur’ => $id_auteur (passé en argument pour le formulaire depuis charger, l’id de l’utilisateur est passé (il est bien dans [<pre>(#ENV**|unserialize|print_r{1})</pre>].
      Ma question devient donc :
      Comment faire pour y accéder ? J’ai tenté une syntaxe du style

      #SET{demandeur,#GET{#ENV{_saisies}}}
      #SET{demandeur,#GET{demandeur}|{table_valeur{saisies}}}
      #SET{demandeur,#GET{demandeur}|{table_valeur{0}}}
      #SET{demandeur,#GET{demandeur}|{table_valeur{id_auteur}}}

      qui n’apporte rien, étant entendu que la première valeur du tableau correspond bien à l’id_de l’utilisateur.
      Quelqu’un pour me corriger ?

    • Bé si t’as passé id_auteur c’est #ENV{id_auteur} quoi, ya pas de feinte. :)

    • Avais testé évidemment ! Mais tu m’as donné la bonne idée : il fallait que je déclarer l’id_auteur DANS le tableau de déclaration POUR la liste d’auteurs (jusqu’à présent, c’était ailleurs), et là ça marche. Merci.

    Répondre à ce message

  • 2

    Bonjour,
    Je suis en train d’apprendre à développer des plugins pour SPIP et j’aimerais faire un formulaire de paramétrage pour un plugin. Avec le plugin SAISIES, je voudrais mettre un sélecteur d’article OBLIGATOIRE mais je n’ai pas l’impression que ce paramètre soit pris en compte.

    [(#SAISIE{selecteur_article, bloc1,
        label=<:theme_x:cfg_premier_bloc:>,
        explication=<:theme_x:cfg_bloc_explication:>,
        obligatoire=oui})]
    • Le code HTML que vous citez va permettre à ce que la saisie soit affichées comme obligatoire par le site public. En revanche, elle ne permettra pas la vérification du caractère obligatoire par PHP.

      Pour un formulaire de configuration, le plus simple est encore de déclarer vos saisies uniquement en PHP : cela permettra de produire automatiquement le HTML + la vérification.

      C’est expliqué ici.

      https://contrib.spip.net/Saisies#Declarer-un-formulaire-CVT-complet-en-PHP

    • OK merci. J’avais vu cet article en effet mais je pensais que le paramètre « obligatoire » de la balise #SAISIE faisait le job vu que ça marchait pour les autres types de champs. Mais finalement je comprends que ça ne faisait qu’ajouter required sur les champs et que c’est le navigateur qui indiquait l’obligation de renseigner le champ.

    Répondre à ce message

  • Je viens de relever une anomalie avec la saisie Selection.
    Dans le cas d’un objet éditorial fait avec la Fabrique, cette saisie ne prend pas en compte le paramètre defaut.

    [(#SAISIE{selection, test, label=Test, datas=[(#ARRAY{bla, Bla, bli,Bli})], defaut=bli})]

    A la création d’un nouvel objet, la fonction formulaires_editer_objet_charger() va renvoyer $valeurs['test'] = "".
    Du coup #ENV{test} ne sera pas nulle et la ligne https://zone.spip.net/trac/spip-zone/browser/spip-zone/_plugins_/saisies/trunk/saisies/selection.html#L40 va shunter la valeur par defaut.

    J’aurais bien proposé une solution, mais n’étant pas à l’aise avec cette syntaxe « à rallonge », je préfère vous passer la main.

    A vous les studios :)

    Répondre à ce message

  • 4

    Bonjour,

    Petite question : comment, si c’est possible, ajouter à un champ SAISIES une span message_erreur ? Pas le message erreur_obligatoire, mais celui qui est récupérer de la fonction vérifier du formulaire CVT.

    merci d’avance

    • Pas compris la question, dans 100% des saisies il y a une balise de message d’erreur quand il y a une erreur pour ce name de champ dans l’environnement du CVT.

    • La seule option erreur indiquée ici, c’est erreur_obligatoire qui permet de « personnaliser le message d’erreur affiché pour indiquer l’obligation (sinon laisser vide). »

      Dans un formulaire standard si je veux indiquer une erreur, j’ai quelque chose de ce type :

      <div class="editer_synth">
      		<label for="synth"><:incident:label_synth:></label>
      		[<span class="erreur_message">(#ENV**{erreurs}|table_valeur{synth})</span>]
      		<input type="text" name="synth" id="synth" />
      </div>

      mais dans mon cas j’utilise le plugin SAISIES :

       #SAISIE{input,synth}

      Que dois-je ajouter à cette balise pour une erreur standard plutot qu’une erreur_obligatoire ?

    • Mais y a rien à ajouter, c’est à toi de mettre des erreurs dans ton tableau habituel des erreurs de CVT dans la fonction verifier(), avec le bon nom du champ.

    • Dans ce cas je dois avoir une erreur autre part, parce que le code dans ma fonction vérifier() existe pour gérer les erreurs.
      Merci tout de même.

    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 :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

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.

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

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom