Development #86905
toulouse-2022: [parsifal] Utilisation des cellules Parsifal en backoffice.
0%
Description
- Les cellules du DUI, ex:
https://agents-parsifal.test.entrouvert.org/foyer/336722/page-enfant/228465/?family_id=336722
https://agents-parsifal.test.entrouvert.org/manage/pages/52/#open:data_jsoncell-1423-general - la cellule agenda (qui est déjà une vraie cellule issue du thème), ex:
https://agents-parsifal.test.entrouvert.org/foyer/336722/page-enfant/228465/?family_id=336722
https://portail-parsifal.test.entrouvert.org/manage/pages/156/#open:data_configjsoncell-156-general - la cellule catalogue (qui a été dernièrement redéposée sous forme de cellule prototype), ex:
https://agents-parsifal.test.entrouvert.org/foyer/336722/page-activite/
https://agents-parsifal.test.entrouvert.org/manage/pages/56/#open:data_jsoncell-1437-general
(seule la cellule "panier Maélis" n'est pas utilisée sur le portail agent).
En front la cellule catalogue utilise le style défini au même endroit que la cellule panier, dans le fichier ~/src/publik-base-theme/static/toulouse-2022/_json_cells.scss
Il se pose la question de savoir comment rendre également accessibles ces règles pour les cellules Parsifal déployées sur le portal agent.
Demandes liées
Historique
Mis à jour par Nicolas Roche il y a 3 mois
- Lié à Development #86843: toulouse-2022: [parsifal] permettre l'utilisation de la cellule catalogue en backoffice ajouté
Mis à jour par Nicolas Roche il y a 3 mois
- Statut changé de Nouveau à Information nécessaire
- Assigné à mis à Thomas Jund (congés, retour le 29/04)
- Pour les cellule du DUI, on a des boutons "Modifier" qui utilisent la classe "pk-button" et des icones "🔍Voir ..." donc au final on a très peu de CSS, que l'on pourrait même probablement le retirer.
<style> .parsifal .label::after { content: " : "; } div#main-content .parsifal .value br { display: initial; } </style>
- Pour la cellule agenda, le CSS est embarqué directement dedans.
cf templates/combo/json/enfant-agenda.html
- Reste la cellule catalogue pour laquelle le CSS a été déporté dans le thème :
https://git.entrouvert.org/entrouvert/publik-base-theme/commit/e26bc2ba8659bf5faa543aa51100ef81a8d8092e
Je vois un fichier backoffice.css Utilisé à Nanterre et à Toulouse.
Dans le thème on voit qu'il est chargé sur le portail agent :
"portal_agent_extra_css": "/static/toulouse-2022/backoffice.css",
Puis (https://dev.entrouvert.org/issues/49541) :
templates/portal-agent/combo/page_template.html: {% if portal_agent_extra_css|first == '/' %} templates/portal-agent/combo/page_template.html: <link rel="stylesheet" type="text/css" href="{{ portal_url }}{{ portal_agent_extra_css }}">
A Toulouse on a aussi un fichier backoffice.scss
Si je veux lui ajouter l'import des scss définis pour les cellules json,
alors je dois embarquer la moitié des règles du front, ce qui a pour effet de changer l'aspect du backoffice.
@import 'vars'; @import '../includes/utils'; @import '../includes/general'; @import '../includes/title'; @import '../includes/layout'; @import '../includes/nav'; @import '../includes/cells'; @import '../includes/forms'; @import '../includes/wcs'; @import '../includes/misc'; @import '../includes/library'; @import 'custom'; @import 'json_cells';
Je me demande si plutôt que de m'embarquer là dedans, je ne devrais pas plutôt reverter ce commit (et poser le CSS directement dans les cellules comme pour les cellules agenda) ?
https://git.entrouvert.org/entrouvert/publik-base-theme/commit/e26bc2ba8659bf5faa543aa51100ef81a8d8092e
Mis à jour par Frédéric Péters il y a 2 mois
alors je dois embarquer la moitié des règles du front
Évidemment il ne faut pas faire ça mais qu'est-ce qui t'y oblige ?
Si la réponse est uniquement "les quelques variables type "$title-font-size" qui sont utilisées, une possibilité là-dessus est simplement de les définir avec des valeurs appropriées dans backoffice.scss.
Mis à jour par Nicolas Roche il y a 2 mois
Si la réponse est uniquement "les quelques variables type "$title-font-size" qui sont utilisées,
En fait j'ai commencé par ça et quand j'ai vu poindre toutes les dépendances j'ai opté pour inclure les modules dans l'ordre du front afin d'avoir rapidement solution à proposer.
une possibilité là-dessus est simplement de les définir avec des valeurs appropriées dans backoffice.scss.
Je pars là dessus afin d'énumérer les variables.
Mis à jour par Nicolas Roche il y a 2 mois
En faisant au plus bête, c'est à dire en re-définissant "appropriées" par "attendues par le compilateur SCSS" ça donne 29 variables et quelques règles.
@import 'encombrants'; // _vars.scss $very-small-limit: 35em; $gray-1: #212121; $gray-6: #E2E2E2; $cell-entry-border-color: $gray-6; $mobile-limit: 1023px; $base-font: 17; $fz-2: 36em / $base-font; $title-font-size: $fz-2; $salmon-dark: #D8522A; $primary-color: $salmon-dark; $title-color: $primary-color; $cancel-button-style: ".gray-button"; $font-color: $gray-1; $button-color: $font-color; $button-background: white; $button-hover-color: $button-color !default; $widget-padding: 0.74rem 1.5rem; // ../includes/_general.scss $border-radius: null !default; // ../includes/gadjo-extra.scss $widget-focus-outline: none; // ../includes/_cells.scss $cell-entry-border: 1px solid $cell-entry-border-color !default; $cell-open-foldable-icon: "\f107" !default; // angle-down $cell-close-foldable-icon: "\f106" !default; // angle-up .gru-content div.cell div.cell-items-pagination { padding: 1rem; .cell-items-pagination-next { float: right; margin-right: 0; } } // ../includes/_layout.scss $max-mobile-viewport: "max-width: #{$mobile-limit}"; $min-desktop-viewport: "min-width: #{min-desktop-viewport($mobile-limit)}"; // ../includes/_forms.scss %cancel-button { @extend #{$cancel-button-style}; } .gru-content button.cancel-button, div.buttons .cancel-button button { @extend %cancel-button; } $button-hover-background: $button-background !default; $button-padding: $widget-padding !default; $button-border: 1px solid transparent !default; $button-border-radius: $border-radius !default; $button-focus-outline: $widget-focus-outline !default; %button { --color: #{$button-color}; --background: #{$button-background}; --hover-color: #{$button-hover-color}; --hover-background: #{$button-hover-background}; background: var(--background); text-align: center; color: var(--color); padding: $button-padding; cursor: pointer; border: $button-border; border-radius: $button-border-radius; transition: background 0.5s ease, color 0.5s ease, border 0.5s ease; margin-right: 1.5em; vertical-align: middle; box-shadow: 1px 0px 5px rgba(0, 0, 0, 0.21); text-decoration: none; line-height: normal; &[aria-pressed=true], &:hover { box-shadow: 0px 0px 5px #777; background: var(--hover-background); color: var(--hover-color); } &:disabled { box-shadow: none; cursor: not-allowed; filter: grayscale(100%); } &:focus { @if $button-focus-outline == none { outline: 1px dotted $button-background; } @else { outline: $button-focus-outline; outline-offset: $button-focus-outline-offset; } } } // _custom.scss: .gray-button { @extend %button; background-color: $gray-6; border-color: $gray-6; &:hover { background-color: $gray-1; border-color: $gray-1; color: white; } } @import 'json_cells';
Si la réponse est uniquement "les quelques variables type "$title-font-size" qui sont utilisées,
Je vous laisse placer le curseur pour interpréter ma réponse (ça me dépasse).
Mis à jour par Frédéric Péters il y a 2 mois
En faisant au plus bête
Soyons plus fin :
$cell-close-foldable-icon: "\f106"; $cell-open-foldable-icon: "\f107"; $cell-entry-border: 1px solid #ccc; $cell-entry-border-color: #ccc; $mobile-limit: 760px; $max-mobile-viewport: "max-width: #{$mobile-limit}"; $min-desktop-viewport: "min-width: #{$mobile-limit + 1}"; $title-color: #161c2a; $title-font-size: 200%; $very-small-limit: 560px; .cancel-button {} .cell-items-pagination {} @import 'encombrants'; @import 'json_cells';
Mis à jour par Nicolas Roche il y a 2 mois
- Statut changé de Information nécessaire à En cours
- Assigné à changé de Thomas Jund (congés, retour le 29/04) à Nicolas Roche
Merci Fred !
Mis à jour par Robot Gitea il y a 2 mois
- Statut changé de En cours à Solution proposée
Nicolas Roche (nroche) a ouvert une pull request sur Gitea concernant cette demande :
- URL : https://git.entrouvert.org/entrouvert/publik-base-theme/pulls/518
- Titre : toulouse-2022: [parsifal] import json cells scss in backoffice (#86905)
- Modifications : https://git.entrouvert.org/entrouvert/publik-base-theme/pulls/518/files
Mis à jour par Robot Gitea il y a 2 mois
- Statut changé de Solution proposée à Solution validée
Serghei Mihai (smihai) a approuvé une pull request sur Gitea concernant cette demande :
Mis à jour par Robot Gitea il y a 2 mois
- Statut changé de Solution validée à Résolu (à déployer)
Nicolas Roche (nroche) a mergé une pull request sur Gitea concernant cette demande :
- URL : https://git.entrouvert.org/entrouvert/publik-base-theme/pulls/518
- Titre : toulouse-2022: [parsifal] import json cells scss in backoffice (#86905)
- Modifications : https://git.entrouvert.org/entrouvert/publik-base-theme/pulls/518/files
Mis à jour par Transition automatique il y a environ 2 mois
- Statut changé de Résolu (à déployer) à Solution déployée