Projet

Général

Profil

Development #60165

utiliser idp_service_and_next_params

Ajouté par Frédéric Péters il y a environ 2 ans. Mis à jour il y a presque 2 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
30 décembre 2021
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

De #57482#note-31,

le but étant d'avoir des URLs avec ce paramètre ?service= dans les entête de page (lien page mon compte)

Ça me paraît clair que du coup il faut aller explicitement toucher cet/ces endroit(s) et y ajouter ?{{idp_service_and_next_params}}.

Ok, j'ouvrirai un ticket sur publik-base-theme dans la foulée quand celui-ci sera validé.

Ça a été validé déployé, voici donc le ticket pour la mise en place de idp_service_and_next_params ici.


Fichiers


Demandes liées

Lié à Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementFermé01 octobre 2021

Actions

Historique

#1

Mis à jour par Frédéric Péters il y a environ 2 ans

  • Lié à Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrement ajouté
#2

Mis à jour par Emmanuel Cazenave il y a environ 2 ans

Je me suis fait une instance local multi collectivité, je tape ce patch :

--- a/templates/includes/user-info.html
+++ b/templates/includes/user-info.html
@@ -6,7 +6,7 @@
 {% skeleton_extra_placeholder user-info %}
   {% if user.is_authenticated %}
   <span class="logged-in">
-    {% if idp_account_url %}<a class="account-link" href="{{idp_account_url}}">{% endif %}
+    {% if idp_account_url %}<a class="account-link" href="{{idp_account_url}}?{{idp_service_and_next_params}}">{% endif %}

Et maintenant en cliquant sur mon petit non depuis le portail d'une collectivité secondaire, j'arrive sur https://authentic.dev.publik.love/accounts/?next=https%3A%2F%2Fcoll1-combo.dev.publik.love%2F&service=hobo-coll1+_hobo-coll1_portal

Sauf que le next n'est pas exploité par la page /accounts donc je suis pas bien avancé .... je loupe quelque chose ?

#3

Mis à jour par Frédéric Péters il y a environ 2 ans

Le truc c'est ensuite d'exploiter, ça doit permettre d'avoir le service appelant dans le contexte, pour dans un gabarit pouvoir faire un lien <a href="{{ quelque chose }}">Retourner au service {{ libellé de quelque chose }}</a>.

#4

Mis à jour par Frédéric Péters il y a environ 2 ans

(et c'est vraiment valider cette possibilité qui est important)

#5

Mis à jour par Emmanuel Cazenave il y a environ 2 ans

  • Assigné à mis à Benjamin Dauvergne

Frédéric Péters a écrit :

Le truc c'est ensuite d'exploiter

Alors sur la page combo qui sert de modèle à /accounts, je tente une cellule texte avec {{service}} et ok le nom du service d'où je viens s'affiche.

Par contre je n'arrive pas à obtenir un URL, genre {{service.url}} ne marche pas, en fait j'ai l'impression que servie c'est un objet de type authentic/models.py::Service qui ne contient pas d'URL.

Je ne retrouve pas le bout de de code qui rend service disponible dans le contexte, c'est pas peut-être pas service qu'il faut utiliser ... à toi Benj pour des lumières.

#7

Mis à jour par Benjamin Dauvergne il y a environ 2 ans

Non il n'y a rien mais tu peux faire {{ portal_url }}/redirect/service/{{ service.slug }}/ par exemple et prévoir une URL adéquate à cet endroit; idem via les assets pour une image. Pour tout stocker coté a2, il y a plusieurs tickets sur le sujet: #20700 et #47406.

#8

Mis à jour par Benjamin Dauvergne il y a environ 2 ans

  • Assigné à changé de Benjamin Dauvergne à Emmanuel Cazenave
#9

Mis à jour par Emmanuel Cazenave il y a environ 2 ans

Frédéric Péters a écrit :

(et c'est vraiment valider cette possibilité qui est important)

Alors alors des tests en local avec #60345 et #61029.

Sur la page combo qui sert de modèle, une cellule texte avec <p><a href="{{service.base_url}}">Blababla</a></p> et .... raté parce que le rendu de {{service.base_url}} n'est pas fait coté a2 mais coté combo par la vue skeleton, ca passe dans TextCell.get_cell_extra_context qui fait un text = re.sub(r'(href|src)="(.*?)"', sub_variadic_url, text), qui shoote le lien.

C'est dommage parce que ce soit intercepté par combo parce que sinon l'approche avec #60345 et #61029 marche bien, genre si on met {{service.base_url}} à la place de Blablabla, le rendu coté a2 sort l'URL qui va bien.

#10

Mis à jour par Frédéric Péters il y a environ 2 ans

Sur le besoin de mon côté c'était quelque chose dans l'intégration graphique, pas posé à travers une cellule. (ce que j'écrivais "pour dans un gabarit pouvoir faire un lien").

#11

Mis à jour par Emmanuel Cazenave il y a environ 2 ans

Ok.

Une remarque à la cantonade en prenant l'exemple de cap-atlantique, si on passe par une template dans l'intégration graphique, pour conserver le rendu neutre, il faut taper un mini patch css :

--- a/static/cap-atlantique/_custom.scss
+++ b/static/cap-atlantique/_custom.scss
@@ -222,7 +222,7 @@ div#rub_service {
 //
 //     NEUTRAL TPL
 //
-.page-template-neutral {
+.page-template-neutral, .authentic-page {
#12

Mis à jour par Emmanuel Cazenave il y a environ 2 ans

Retour à l'intitulé de ce ticket.

#13

Mis à jour par Benjamin Dauvergne il y a environ 2 ans

  • Statut changé de Solution proposée à Solution validée
#14

Mis à jour par Benjamin Dauvergne il y a environ 2 ans

  • Statut changé de Solution validée à Nouveau

Je pense qu'on va faire autrement, cf. #61191.

#15

Mis à jour par Frédéric Péters il y a presque 2 ans

  • Statut changé de Nouveau à Fermé

Formats disponibles : Atom PDF