https://dev.entrouvert.org/https://dev.entrouvert.org/favicon.ico?15861920342021-10-01T08:00:52ZRedmine Entr’ouvertHobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3297832021-10-01T08:00:52ZBenjamin Dauvergne
<ul><li><strong>Lié à</strong> <i><a class="issue tracker-2 status-5 priority-4 priority-default closed" href="/issues/20699">Development #20699</a>: Fournir dans le contexte des template le service appelant sur toutes la pages</i> ajouté</li></ul> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3297862021-10-01T08:01:19ZBenjamin Dauvergne
<ul><li><strong>Assigné à</strong> mis à <i>Benjamin Dauvergne</i></li></ul> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3297962021-10-01T08:21:12ZBenjamin Dauvergne
<ul></ul>J'ai commencé à aller vers le plus simple (la description du ticket) mais je vois un souci entre le slug reçu par le service et le slug reçu par a2, si on prend le portail TM à Toulouse :
<ul>
<li>pour combo, son slug c'est portal</li>
<li>pour A2 avec la ville comme Publik principal, c'est _hobo-tm_portal</li>
</ul>
<p>Le paramètre ?service= accepter comme syntaxe "legacy" de sa valeur "{service.slug}" mais pour être sûr de son coup il faudrait normalement "{ou.slug} {service.slug}".</p>
<p>Je vois bien une variable ou-slug mais je ne sais pas si elle est défini sur le hobo primaire ou le secondaire... je regarde ça.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3298032021-10-01T08:28:40ZBenjamin Dauvergne
<ul><li><strong>Fichier</strong> <a href="/attachments/58095">0001-settings_loaders-add-service-ref-to-account-and-regi.patch</a> <a class="icon-only icon-download" title="Télécharger" href="/attachments/download/58095/0001-settings_loaders-add-service-ref-to-account-and-regi.patch">0001-settings_loaders-add-service-ref-to-account-and-regi.patch</a> ajouté</li><li><strong>Statut</strong> changé de <i>Nouveau</i> à <i>Solution proposée</i></li><li><strong>Patch proposed</strong> changé de <i>Non</i> à <i>Oui</i></li></ul><p>Ça devrait je pense être quelque chose comme ça. Je veux bien un assentiment sur le sujet.</p>
<p>PS: je n'ai pas eu à modifier les tests donc je ne pense pas qu'il y ait de test autour de ces variables, pour idp_register_url je ne sais pas si quelque chose autour de l'URL de retour est fait, je me dis qu'idéalement en se basant sur service et en l'absence de paramètre <code>?next</code> authentic devrait en deviner une, comme la racine du service, on peut mettre ça dans le tas sauf si il existe déjà une solution.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3299312021-10-01T13:31:43ZFrédéric Pétersfpeters@entrouvert.com
<ul></ul><p>Je teste et ça me produit ?service=idp (sur le combo primaire) et ?service=_hobo-commune2__interco_idp sur un combo secondaire.</p>
<p>Je dirais que le soucis c'est <code>slug = service['slug']</code> fait qu'on a le slug de l'idp pas le slug de l'application sur laquelle on est.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3299752021-10-01T16:28:27ZBenjamin Dauvergne
<ul></ul><p>Bon ok en fait c'est déjà partiellement fait via portal_user_slug, c'est juste que ça ne prend pas en compte le cas primaire/secondaire.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3299802021-10-01T17:58:59ZBenjamin Dauvergne
<ul><li><strong>Fichier</strong> <a href="/attachments/58126">0001-settings_loaders-adapt-service-slug-for-secondary-se.patch</a> <a class="icon-only icon-download" title="Télécharger" href="/attachments/download/58126/0001-settings_loaders-adapt-service-slug-for-secondary-se.patch">0001-settings_loaders-adapt-service-slug-for-secondary-se.patch</a> ajouté</li></ul><p>Voilà, mon test est un peu fake mais pas beaucoup plus que l'existant, coté a2 je pense que je devrais faire en sorte de chercher les références de service simple dans l'OU par défaut avant de prendre la première parmi tous les services.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3299892021-10-02T14:40:06ZBenjamin Dauvergne
<ul><li><strong>Fichier</strong> <a href="/attachments/58127">0001-settings_loaders-adapt-service-slug-for-secondary-se.patch</a> <a class="icon-only icon-download" title="Télécharger" href="/attachments/download/58127/0001-settings_loaders-adapt-service-slug-for-secondary-se.patch">0001-settings_loaders-adapt-service-slug-for-secondary-se.patch</a> ajouté</li></ul><p>Avec un commentaire et en simplifiant la condition, le portal user ne peut pas être secondaire.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3299902021-10-02T14:47:05ZFrédéric Pétersfpeters@entrouvert.com
<ul></ul><blockquote>
<p>le portal user ne peut pas être secondaire</p>
</blockquote>
<p>? c'est commun d'avoir dans les publik secondaires des portail usager et portail agent spécifiques.</p>
<p><sub>~~</sub></p>
<p>(je trouve que les f-strings ici dégradent la lisibilité)</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3299922021-10-03T08:01:24ZBenjamin Dauvergne
<ul></ul><p>Frédéric Péters a écrit :</p>
<blockquote><blockquote>
<p>le portal user ne peut pas être secondaire</p>
</blockquote>
<p>? c'est commun d'avoir dans les publik secondaires des portail usager et portail agent spécifiques.</p>
</blockquote>
<p>Tu m'as mal compris, je veux dire que dans le code suivant :<br /><pre>
if service.get('service-id') == 'combo' and not service.get('secondary'):
if 'portal-user' in service.get('template_name', ''):
variables['portal_user_url'] = service.get('base_url')
variables['portal_user_title'] = service.get('title')
variables['portal_user_slug'] = service.get('slug')
...
if 'idp_registration_url' in variables:
params = {}
if 'portal_user_url' in variables:
params['next'] = variables['portal_user_url']
if 'portal_user_slug' in variables:
# if we are in a secondary hobo, adapt the ou slug and
# portal_user_slug to match the service slug in the Authentic
# of the primary hobo
if authentic_service.get('secondary'):
ou_slug = variables['ou-slug']
service_slug = '_%s_%s' % (ou_slug, variables['portal_user_slug'])
params['service'] = '%s %s' % (ou_slug, service_slug)
else:
# we should provider the default slug to have a full
# service reference, but it could change so for now we
# expect authentic to search first in the default ou
params['service'] = variables['portal_user_slug']
</pre></p>
<p>J'ai juste à vérifier que l'authentic est secondaire, le service ayant produit la variable 'portal_user_slug' est forcément primaire pour le service en cours (celui qui appelle le settings_loader TemplateVars) vu la toute première condition (dans mon patch précédent je retestais).</p>
<blockquote>
<p><sub>~~</sub></p>
<p>(je trouve que les f-strings ici dégradent la lisibilité)</p>
</blockquote>
<p>Ok je corrige ça.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3299932021-10-03T08:01:45ZBenjamin Dauvergne
<ul><li><strong>Fichier</strong> <a href="/attachments/58128">0001-settings_loaders-adapt-service-slug-for-secondary-se.patch</a> <a class="icon-only icon-download" title="Télécharger" href="/attachments/download/58128/0001-settings_loaders-adapt-service-slug-for-secondary-se.patch">0001-settings_loaders-adapt-service-slug-for-secondary-se.patch</a> ajouté</li></ul> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3300942021-10-04T08:31:56ZBenjamin Dauvergne
<ul><li><strong>Statut</strong> changé de <i>Solution proposée</i> à <i>En cours</i></li></ul> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3300952021-10-04T08:33:05ZBenjamin Dauvergne
<ul><li><strong>Fichier</strong> <a href="/attachments/58133">0001-settings_loaders-adapt-service-slug-for-secondary-se.patch</a> <a class="icon-only icon-download" title="Télécharger" href="/attachments/download/58133/0001-settings_loaders-adapt-service-slug-for-secondary-se.patch">0001-settings_loaders-adapt-service-slug-for-secondary-se.patch</a> ajouté</li><li><strong>Statut</strong> changé de <i>En cours</i> à <i>Solution proposée</i></li></ul><p>correction d'une chaîne dans le test.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3408632021-12-02T09:46:46ZEmmanuel Cazenaveecazenave@entrouvert.com
<ul><li><strong>Statut</strong> changé de <i>Solution proposée</i> à <i>Solution validée</i></li></ul><p>Bon j'y comprends que dalle (c'est pas le code, c'est le contetxe), confiance dans le développeur.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3408662021-12-02T09:58:43ZBenjamin Dauvergne
<ul><li><strong>Statut</strong> changé de <i>Solution validée</i> à <i>Résolu (à déployer)</i></li></ul><pre>commit a4f778ea10e37845606a592ad2eb36c6fd51607a
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date: Fri Oct 1 10:20:42 2021 +0200
settings_loaders: adapt service slug for secondary services (#57482)</pre> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3411662021-12-02T20:17:00ZFrédéric Pétersfpeters@entrouvert.com
<ul><li><strong>Statut</strong> changé de <i>Résolu (à déployer)</i> à <i>Solution déployée</i></li></ul> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3415112021-12-06T08:45:51ZSerghei Mihai
<ul></ul><p>Ça casse toutes les pages combo ou il y a une page faisant redirection vers <code>{{ idp_url }}accounts/</code>.</p>
<p>Il faut à priori substituer par la nouvelle variable créée <code>{{ idp_account_url }}</code>.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3415122021-12-06T08:46:09ZSerghei Mihai
<ul></ul><p>Et documenter quelque part.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3415202021-12-06T08:52:38ZSerghei Mihai
<ul><li><strong>Lié à</strong> <i><a class="issue tracker-5 status-5 priority-4 priority-default closed" href="/issues/59345">Project management #59345</a>: modifier l'url de redirection vers la page "mon compte" dans combo</i> ajouté</li></ul> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3415522021-12-06T09:26:25ZEmmanuel Cazenaveecazenave@entrouvert.com
<ul><li><strong>Statut</strong> changé de <i>Solution déployée</i> à <i>En cours</i></li></ul><p>Consensus sur le salon tech pour reverter.</p>
<pre>
commit 1a6734bd32450a951707e6e53ce5a20f2903770c (HEAD -> main, origin/main)
Author: Emmanuel Cazenave <ecazenave@entrouvert.com>
Date: Mon Dec 6 10:18:31 2021 +0100
Revert "settings_loaders: adapt service slug for secondary services (#57482)"
This reverts commit a4f778ea10e37845606a592ad2eb36c6fd51607a.
</pre> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3415682021-12-06T10:26:28ZBenjamin Dauvergne
<ul><li><strong>Fichier</strong> <a href="/attachments/59705">0001-settings_loaders-adapt-service-slug-for-secondary-se.patch</a> <a class="icon-only icon-download" title="Télécharger" href="/attachments/download/59705/0001-settings_loaders-adapt-service-slug-for-secondary-se.patch">0001-settings_loaders-adapt-service-slug-for-secondary-se.patch</a> ajouté</li><li><strong>Statut</strong> changé de <i>En cours</i> à <i>Solution proposée</i></li></ul><p>Voilà, j'ai viré la modification à <code>idp_url</code> qui était finalement tout à fait gratuite; en échange j'introduis deux variables dont on pourra voir l'utilitié à l'usage, <code>idp_service_params</code> qui fournit simplement le bout de query_string <code>service=....</code> et <code>idp_service_and_next_params</code> qui fournit <code>next=...&service=...</code> permettant de construire ainsi les URLs qu'on veut assez facilement en conservant le principe de la conservation du service d'origine au niveau du thème sur authentic.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3415792021-12-06T10:45:31ZValentin Deniaud
<ul></ul><pre>
+ variables['idp_account_url'] += '?%s' % urlencode(params)
</pre><br />or dans ce que pointe Serghei plus haut<br /><pre>
{{idp_url}}accounts/edit/
</pre><br />ce qui nous met la puce à l'oreille que quelque part il peut exister<br /><pre>
{{idp_account_url}}edit/
</pre><br />Bref, virer cette ligne, en bonus on conserve la cohérence avec le comportement de {{idp_url}}. Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3416082021-12-06T12:56:43ZBenjamin Dauvergne
<ul></ul><p>Valentin Deniaud a écrit :</p>
<blockquote>
<p>[...]<br />or dans ce que pointe Serghei plus haut<br />[...]<br />ce qui nous met la puce à l'oreille que quelque part il peut exister<br />[...]<br />Bref, virer cette ligne, en bonus on conserve la cohérence avec le comportement de {{idp_url}}.</p>
</blockquote>
<p>Si on vire cette ligne le patch n'a plus aucun intérêt, le but étant d'avoir des URLs avec ce paramètre ?service= dans les entête de page (lien page mon compte), de ce que je vois dans publik-base-theme il n'y aucune utilisation autre que directe :<br /><pre>
templates/includes/user-info.html: {% if idp_account_url %}<a class="account-link" href="{{idp_account_url}}">{% endif %}
templates/includes/user-info.html: <span class="connected-user">{% block user-info-user-name %}{{user.first_name}} {{user.last_name}}{% endblock %}</span>{% if idp_account_url %}</a>{% endif %}
templates/variants/metz-metropole-2019/includes/user-info.html: <a class="hello" href="{{idp_account_url}}"><span>Bonjour {{ user.first_name }}</span></a><span> -
templates/variants/strasbourg-2018/combo/page_template.html: <a href="{{ idp_account_url}}" class="nav-account nav-btn" title="Mon compte">
templates/variants/toodego/wcs/base.html: {% if idp_account_url %}<a href="{{idp_account_url}}">{% endif %}
templates/variants/toodego/wcs/base.html: <span class="connected-user">{{session_user_display_name}}</span>{% if idp_account_url %}</a>{% endif %}
templates/variants/toulouse-metropole/includes/nav.html: {% if idp_account_url %}<a href="{{idp_account_url}}">{% endif %}
templates/variants/toulouse-metropole/includes/nav.html: <span class="connected-user">{{user.first_name}} {{user.last_name}}</span>{% if idp_account_url %}</a>{% endif %}
templates/variants/villeneuve-dascq/includes/user-info.html: {% if idp_account_url %}<a class="account-link" href="{{idp_account_url}}">{% endif %}
templates/variants/villeneuve-dascq/includes/user-info.html: <span class="connected-user">{% block user-info-user-name %}{{user.first_name}} {{user.last_name}}{% endblock %}</span>{% if idp_account_url %}</a>{% endif %}
templates/variants/villeurbanne-2018/user_info.html: {% if idp_account_url %}<a href="{{idp_account_url}}" role="button" class="btn-account">{% endif %}
templates/variants/villeurbanne-2018/user_info.html: Mon compte{% if idp_account_url %}</a>{% endif %}
</pre></p>
<p>Il n'y qu'<code>idp_url</code> qui est utilisé de cette manière.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3416382021-12-06T13:45:26ZValentin Deniaud
<ul></ul><p>Benjamin Dauvergne a écrit :</p>
<blockquote>
<p>le but étant d'avoir des URLs avec ce paramètre ?service= dans les entête de page (lien page mon compte)</p>
</blockquote>
<p>Ç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}}.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3419142021-12-07T11:08:49ZBenjamin Dauvergne
<ul><li><strong>Fichier</strong> <a href="/attachments/59739">0001-settings_loaders-adapt-service-slug-for-secondary-se.patch</a> <a class="icon-only icon-download" title="Télécharger" href="/attachments/download/59739/0001-settings_loaders-adapt-service-slug-for-secondary-se.patch">0001-settings_loaders-adapt-service-slug-for-secondary-se.patch</a> ajouté</li></ul><p>Ok, j'ouvrirai un ticket sur publik-base-theme dans la foulée quand celui-ci sera validé.</p> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3435982021-12-14T10:31:14ZValentin Deniaud
<ul><li><strong>Statut</strong> changé de <i>Solution proposée</i> à <i>Solution validée</i></li></ul> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3436212021-12-14T10:57:03ZBenjamin Dauvergne
<ul><li><strong>Statut</strong> changé de <i>Solution validée</i> à <i>Résolu (à déployer)</i></li></ul><pre>commit f164fe6205395ccae68de6f80da4cb3bd51e2e29
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date: Fri Oct 1 10:20:42 2021 +0200
settings_loaders: adapt service slug for secondary services (#57482)</pre> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3436342021-12-14T11:17:00ZFrédéric Pétersfpeters@entrouvert.com
<ul><li><strong>Statut</strong> changé de <i>Résolu (à déployer)</i> à <i>Solution déployée</i></li></ul> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3464572021-12-30T14:17:02ZFrédéric Pétersfpeters@entrouvert.com
<ul><li><strong>Lié à</strong> <i><a class="issue tracker-2 status-5 priority-4 priority-default closed" href="/issues/60165">Development #60165</a>: utiliser idp_service_and_next_params</i> ajouté</li></ul> Hobo - Development #57482: Exploiter le paramètre ?service= pour les URLs "Mon compte" et d'enregistrementhttps://dev.entrouvert.org/issues/57482?journal_id=3569992022-02-13T03:42:01ZTransition automatique
<ul></ul><p>Automatic expiration</p>