Commit Graph

39 Commits (master)

Author SHA1 Message Date
Maïeul 6c68ad3546 fix: Affiner la compatibilité entre les `fieldsets` en onglets et `select2`.
Au sein des onglets, imposer le container de select2 à 100%. Ca manque
de flexibilité, mais ca marche.

A supprimer lorsque
spip-contrib-extensions/select2#4 sera
résolu.

close #240

exemple pour reproduire :

````
id_formulaire: '111'
identifiant: onglets
titre: onglets
descriptif: ''
css: ''
message_retour: ''
saisies:
  -
    options: { label: 'Groupe de champs', onglet: on, onglet_vertical: on, nom: fieldset_1 }
    identifiant: '@63948849014e5'
    verifier: {  }
    saisie: fieldset
    saisies: [{ options: { label: 'Liste déroulante / sélection', datas: "choix1|Un\r\nchoix2|Deux\r\nchoix3|Trois", class: select2, nom: selection_1 }, verifier: {  }, identifiant: '@639488520242a', saisie: selection }]
  -
    options: { label: 'Groupe de champs (copie)', onglet: on, nom: fieldset_2 }
    identifiant: '@6394886e71407'
    verifier: {  }
    saisie: fieldset
    saisies: [{ options: { label: 'Liste déroulante / sélection', datas: "choix1|Un\r\nchoix2|Deux\r\nchoix3|Trois", class: select2, nom: selection_2 }, verifier: {  }, identifiant: '@6394886e7140c', saisie: selection }]
  -
    saisie: input
    options: { nom: input_1, label: 'Ligne de texte', size: 40, sql: 'text DEFAULT '''' NOT NULL' }
    identifiant: '@639488fb2f5e9'
  -
    options: { label: 'Liste déroulante / sélection (copie)', datas: "choix1|Un\r\nchoix2|Deux\r\nchoix3|Trois", class: select2, afficher_si: '@input_1@ == ''1''', nom: selection_3 }
    verifier: {  }
    identifiant: '@639488f4c8c8d'
    saisie: selection
traitements: {  }
public: non
statut: prop
date_creation: '2022-12-10 14:22:57'
maj: '2022-12-10 14:33:00'
apres: formulaire
url_redirect: ''
````

Ref #240
6 months ago
Maïeul 53c28d8a00 feat(#123): Des onglets verticaux.
- Si un seul onglet est vertical dans un groupe, on considère que l'ensemble des onglets le sont.
- Css : dans le public largeur `15em`, dans le
privé `--spip-form-label-width`, responsive avec un code de @nicod_
6 months ago
Maïeul 7dd0c2c37f style: indentation 6 months ago
Maïeul f3a6995447 Fix #166 dans le constructeur de formulaire, ne pas avoir les boutons
masqués si l'entrée suit un fieldset.

Pour se faire on rend prioritaire le réglage de padding-top sur les
éventuels réglages de l'espace privé de SPIP.
1 year ago
Maïeul 29d0070b57 Fix spip-contrib-extensions/formidable#70
La vue d'une saisie fieldset contient également des fieldset.
C'est parfaitement valable d'avoir des fieldset hors formulaire, et ca
permet que le stylage par défaut dans les emails soit plus correct.
1 year ago
Maïeul 6575734dc3 Ce n'est pas parce qu'une saisie est désactivée qu'on ne peut plus la
configurer.
(Surcharge de CSS de l'espace privé, dans le cas du constructeur de
formulaire).
1 year ago
RastaPopoulos 364cfdb7d9 Issue #129 : mettre la classe .label est trop spécifique. On change ça pour .editer-label pour suivre la norme existante (editer-groupe, etc). SAUF pour les legend des fieldsets, car pour l'instant le noyau n'a pas encore changé sur ce point. Dans ce cas là uniquement on rajoute .label tout court aussi. Mais quand le core sera corrigé, on pourra le virer complètement. Dans la CSS, on est donc pas aussi générique, on ne l'applique que si legend.label, ou le nouveau .editer-label qui est plus spécifique. 2 years ago
Maïeul 43e7c5e1af fléche de pliage/depliage de fieldset, ne pas se tromper 2 years ago
tcharlss a8683f9e7e Les styles du constructeur de formulaire, une grande saga en 28 actes. 2 years ago
tcharlss 60fa23dd21 Constructeur de formulaire :
- Barre d'actions : utiliser les nouvelles icônes + ajustements CSS
- Boutons Spip 4
- Adaptations des styles pour Spip 4. On en profite pour ranger et reformater la CSS.
2 years ago
nicod_ cdb67ec586 Pb #88, accessibilité
Cf. https://core.spip.net/issues/4540
Pour les saisies :
  - radio
  - checkboxes
  - case
  - oui_non
  - choix_grille
regrouper les choix possibles dans un `<fieldset>.

L'option `label` de la saisie devient une `<legend>`.
On ajoute systématiquement la classe `.label`, que ce soit un `<label>` ou une `<legend>`.

Différent ajustement css des styles du privé en lien avec cela.

On en profite pour aerer et commenter un peu le code
(Commit de squash fait par @maieul sur la base du travail de @nicod_)
2 years ago
nicod_ bb026a1774 Suite à la mise à jour des styles de formulaires, réduire cette marge dans le construteur (testé sur 3.2 et 3.3) 2 years ago
tcharlss ddb389d020 Icônes svg pour le constructeur, ticket #109
On n'est pas obligé de reprendre exactement le nom des saisies pour les icônes, une icône pouvant être réutilisée pour plusieurs saisies. On se base plutôt sur le type d'input.

On met le fichier source avec toutes les icônes, si besoin d'en ajouter ultérieurement
2 years ago
Maïeul 00ea8be741 constructeur de formulaire, ne pas mettre de marge dans les fieldset imbriqué, ca perturbe 2 years ago
Maïeul cc2f29c422 ne pas voir en double la saisie qu'on déplace (@rastapopoulos) 2 years ago
Maïeul 82572aa411 Utiliser sortable.js pour le constructeur de formulaireUtiliser
sortable.js pour le constructeur de formulaire.
2 years ago
Maïeul fd310fe0dd du code css plus nécessaire 2 years ago
Maïeul 05b3aa7729 un règle css désormais inutile 2 years ago
Maïeul 2ed135d675 Excursus : les propriétés css de `.afficher_si_masque_chargement` sont toutes importantes, vu que le but est de ne pas voir la transition elle-même (mais il faut garder son resultat final, on ne peut donc pas se passer de `afficher_si_hide()`).
Exemple de cas où l'on voyait la transition : la configuration des
options globales d'un formulaire dans formidable.
2 years ago
Maïeul 3bc2fb539c Issue #89, pb 2 etape c.
Afficher_si sur le listing d'étape

Pour éviter un effet trop disgracieux, on se contente de masquer/demasquer, sans aucune transition.

Avant d'appliquer les afficher_si, figer la hauteur du bloc d'étapes, pour que lorsqu'une étape est masquée/demasquée cela ne fasse pas un effet de déplacement vertical sur le formulaire proprement dit.
2 years ago
nicod_ 30b0fda2ff Uniformiser les marges basses des vues de saisies 2 years ago
nicod_ 97366394b2 Vues des fieldsets : lier le div et sa légende par un rôle aria
Un minimum de style par défaut
2 years ago
nicod_ bb77a9d575 Largeur libre sur ces labels là 2 years ago
nicod_ 42a3b9a603 Rétablir l'affichage vertical des groupes de checkbox/radio 2 years ago
Maïeul 270a483cf5 Se debarrasser du .gif pour la petite flèche pliable
Avec cela, plus besoin de generer un css dynamique
2 years ago
tcharlss 3ce443b995 Ticket #69 : onglets scrollables.
Quand les onglets dépassent du menu, on le détecte en JS et on ajoute une classe pour l'indiquer.
Les onglets deviennent scrollables horizontalement :

* La barre de défilement n'apparaît qu'au survol
* On ajoute un masque avec un dégradé sur les côtés pour montrer qu'il y a du contenu masqué.
* On décale les onglets pour la même raison.

Il faudrait une indication visuelle supplémentaire, un chevron par exemple.
Mais avec le masque c'est compliqué, en attendant mieux ça fera le taff.
2 years ago
tcharlss 03e6d9810d Ajustements des onglets :
* s'assurer de ne parser qu'une seule fois chaque fieldset, car il peut arriver que des formulaires soient imbriqués, comme le constructeur de formulaires.
* mettre les onglets au début du .editer-groupe qui contient les fieldsets, pas avant + léger ajustement css dans le privé
* préparer la possibilité future d'avoir des onglets verticaux : on met tout dans un conteneur général, et les fieldsets également.
* ajustements css du constructeur de form afin que les boutons d'action des fieldsets en onglets restent facilement cliquables
2 years ago
tcharlss d1e6e6b521 Ajustement CSS + fix #58 au passage : mauvaises marges en certains endroits du constructeur de formulaire 2 years ago
tcharlss ee0fa72719 Ajoute une option `onglet` aux fieldsets pour les afficher sous forme d'onglet.
* Fonctionne quelque soit la position du fieldset et son niveau d'imbrication
* Fonctionne avec l'option pour activer les étapes
* Incompatible avec l'option `pliable`
2 years ago
Maïeul e3652e53b0 Comme le dit @tcharlss, il faudrait que niveau espace privé la limite
basse des fieldsets soit plus clairs _en general_.

En attendant la refonte globale, on permet dans un constructeur de
formulaire de voir clairement les limites du fieldset, afin que les
gens placent correctement les champs. Cela ne concerne QUE le
constructeur de formulaire, qui a besoin d'être claire et reste
technique.

Close #55
2 years ago
nicod_ 1dcc9a55ac Rien à faire ici 3 years ago
maieul@maieul.net 6f65bf1bfe r108973 cassait l'affichage pour SPIP 3.0.
On corrige en rendant la règle conditionnel en se servant du fait que SPIP 3.0 utilise des li et pas des div pour structurer les formulaires
5 years ago
maieul@maieul.net b74548a754 Styler correctement la configuration des saisies en pleine largeur pour
pouvoir voir les labels des champs de config (merci Rastapopoulos).
Ex : pour la saisie explication, qui est toujours en pleine largeur
5 years ago
marcimat@rezo.net 7a6d0f6ef8 Supprimer tous les attributs 'required' dans le constructeur de formulaire pour éviter des ennuis lorsque #HTML5 est activé.
- Modifier le JS pour englober dans une fonction permettant l'utilisation de $
- Les variables créés qui sont de jquery sont préfixées de $
- Supprimer les required dans tous les input, textarea et select du formulaire de contructeur de formulaire !
- ET correction CSS lorsqu'un champ était déclaré obligatoire, tous les labels du formulaire de configuration étaient en gras,
  et pas seulement ceux obligatoires dedans.
8 years ago
marcimat@rezo.net ae66dea784 Tentative de compatibilité du constructeur de formulaire avec une définition CSS ajouté par le picker.css de SPIP 3.0, en l'occurrence, sur li.selecteur_item
(qui je suppose ne s'applique plus en 3.1 vu que c'est passé en div.selecteur_item).

Ici, en présence de li.selecteur item (c'est à dire sur un spip 3.0) on reset un peu le CSS pour ne pas qu'il conflicte avec le formulaire de configuration.

Devrait corriger le problème css signalé par : http://contrib.spip.net/Champs-Extras-3#forum483556
8 years ago
marcimat@rezo.net b08ed9ab46 Suite de r90254 : les explications dans le constructeurs de formulaire avaient leurs boutons d'action mal affichés, de même que les onglets à l'intérieur.
Devrait être plus fonctionnel maintenant. (Beno : http://contrib.spip.net/Champs-Extras-3#forum483400)
8 years ago
marcimat@rezo.net 2cfcac2eac Code CSS commenté : suppression. 8 years ago
cedric@yterium.com a66480ef59 Bugfix utilisation des div au lieu de ul/li dans les formulaires, ajustement des regles CSS, correction des JS 8 years ago
guy.cesaro@gmail.com e95ee4e773 branchage phase2 9 years ago