Development #50565
orleans: modifier le visuel des champs obligatoires lorsqu'ils ne sont pas remplis
0%
Description
Demande formulée par la ville: #49911#note-8
Fichiers
Révisions associées
Historique
Mis à jour par Frédéric Péters il y a environ 3 ans
Peut-être utile, grosboule-les-bains/extra.js (qui se combine avec le $form-style: light qui a un effet de style similaire)
Mis à jour par Serghei Mihai il y a environ 3 ans
- Fichier 0001-orleans-highlight-widgets-with-errors-50565.patch 0001-orleans-highlight-widgets-with-errors-50565.patch ajouté
- Fichier Screenshot_2021-01-27 Publik - Démarches - Paiement.png Screenshot_2021-01-27 Publik - Démarches - Paiement.png ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Merci pour l'astuce dans extra.js
.
Je préfère éviter d'appliquer le style light au formulaire pour ne pas introduire trop de changements, même si j'aime bien.
Mis à jour par Thomas Jund (congés, retour le 29/04) il y a environ 3 ans
Côté couleur je trouve ça un peu fort.
Je verrais mieux un rose plus clair pour le fond
Je te propose de récupérer la couleur de fond et de bordure du message d'alerte (permettrait d'uniformiser).
Il manque la couleur sur les listes checkbox/radio.
Mis à jour par Serghei Mihai il y a environ 3 ans
Thomas Jund a écrit :
Je te propose de récupérer la couleur de fond et de bordure du message d'alerte (permettrait d'uniformiser).
Ok, je vais prendre $notification_error_color
pour le fond et pour la bordure assombrir celle-ci de 25%
Il manque la couleur sur les listes checkbox/radio.
Comme ce sont des widgets natifs faits par le navigo, la bordure ne s'y applique pas. Je suis preneur de tes conseils.
Mis à jour par Serghei Mihai il y a environ 3 ans
- Fichier 0001-orleans-highlight-widgets-with-errors-50565.patch 0001-orleans-highlight-widgets-with-errors-50565.patch ajouté
- Fichier orleans.png orleans.png ajouté
En désactivant l'apparence par défaut pour les checkbox et radio.
Mis à jour par Thomas Jund (congés, retour le 29/04) il y a environ 3 ans
Ça en devient compliqué je trouve. Tu redessines les checkboxs et les radios.
et puis ça ne rend pas la solution compatible avec les champs custom comme template_meeting oui template_evaluation.
J'ai tourné un peu ce problème et je proposerais de cibler plutôt '.content' pour afficher un code couleur d'erreur. Ça englobe le message d'alerte du champ et conserve l'input. Je trouve ça beaucoup plus intéressant, autant d'un point de vue code qu'affichage.
Je pense que ça correspondra aux attentes d'Orléans et c'est même envisageable de l'adapter pour le core. En y ajoutant par exemple une modification de message de champ (champ obligatoire -> champ modifié).
Dis moi ce que tu penses de
CSS :
.widget { .content { display: inline-block; padding: .33em 0; transition: padding 200ms; &.with-padding { padding: .33em; } } &.widget-with-error .content { background-color: $notification_error_color; } }
ET JS
$(function() { var $widgets_with_error = $('.widget-with-error'); if ($widgets_with_error.length) { $widgets_with_error .find('.content').addClass('with-padding') .on('change', 'input, select, textarea', function() { $widgets_with_error.removeClass('widget-with-error'); }); } });
Mis à jour par Thomas Jund (congés, retour le 29/04) il y a environ 3 ans
J'viens de me rendre compte que
.widget { .content { display: inline-block; } }
peut fait déborder les champs. Il faut ajouter Un `max-width: 100%` en plus.
Mis à jour par Serghei Mihai il y a environ 3 ans
- Fichier 0001-orleans-highlight-widgets-with-errors-50565.patch 0001-orleans-highlight-widgets-with-errors-50565.patch ajouté
- Fichier orleans-widgets.png orleans-widgets.png ajouté
Merci.
Repris tes suggestions avec une transition sur background pour que la disparition de la couleur ne soit pas trop brutale.
Et un bout de JS corrigé pour que seul le widget rempli supprime la couleur de fond.
Mis à jour par Thomas Jund (congés, retour le 29/04) il y a environ 3 ans
Du coup tu as 2 propriétés `transition` la seconde écrasant la première.
La première ne sert donc plus à rien. Si tu souhaites conserver la transition sur le padding aussi tu dois les combiner
transition: padding 0.3s, background 0.3s linear;
(Mais pour moi c'est pas nécessaire)
Mis à jour par Serghei Mihai il y a environ 3 ans
- Fichier 0001-orleans-highlight-widgets-with-errors-50565.patch 0001-orleans-highlight-widgets-with-errors-50565.patch ajouté
Je vais garder la transition sur la couleur de fond.
Mis à jour par Thomas Jund (congés, retour le 29/04) il y a environ 3 ans
- Statut changé de Solution proposée à Solution validée
Mis à jour par Serghei Mihai il y a environ 3 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit e8512b94a80c81a78f1703bbb189fac1ec4f3d9a (origin/main) Author: Serghei Mihai <smihai@entrouvert.com> Date: Tue Jan 26 15:55:47 2021 +0100 orleans: highlight widgets with errors (#50565)
Mis à jour par Frédéric Péters il y a environ 3 ans
- Statut changé de Résolu (à déployer) à Solution déployée
orleans: highlight widgets with errors (#50565)