Projet

Général

Profil

Bug #22378

Possibilité d'enchainer après la création d'un compte une redirection

Ajouté par Frédéric Péters il y a environ 6 ans. Mis à jour il y a plus de 5 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Catégorie:
-
Version cible:
-
Début:
08 mars 2018
Echéance:
% réalisé:

100%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

Aujourd'hui après la création d'un compte on est redirigié vers la page d'accueil, ou vers la poursuite du SSO; dans certaines procédures d'inscriptions plus longues on voudrait enchainer la création de l'utilisateur côté authentic vers un formulaire dans w.c.s. pour demander plus d'infos, etc.

Quelque chose de cet ordre :

@@ -120,6 +120,8 @@ class RegistrationCompletionView(CreateView):
             return ['registration/registration_completion_form.html']

     def get_success_url(self):
+        if app_settings.WHATEVER_URL:
+            return app_settings.WHATEVER_URL
         if self.token and self.token.get(REDIRECT_FIELD_NAME):
             return self.token[REDIRECT_FIELD_NAME]
         return make_url(self.success_url)

(peut-être de manière plus évoluée, permettre de lui passer le contenu du redirect_field_name)


Fichiers

Révisions associées

Révision 20b829b1 (diff)
Ajouté par Benjamin Dauvergne il y a environ 6 ans

allow a post registration landing page (fixes #22378)

- add a new setting A2_REGISTRATION_REDIRECT, it can be an URL or a
tuple (URL, field_name). If a next URL was given to /accounts/register/
it's appended to the A2_REGISTRATION_REDIRECT URL as
?field_name=<next_URL> whose field_name default to "next".

Historique

#2

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

Ok pour un truc comme app_settings.A2_REGISTRATION_REDIRECT = 'blabla?session_var_next_url=NEXT_URL'.

#4

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

  • Patch proposed changé de Non à Oui
#5

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

Plus propre, par défaut on met ?next= si nécessaire mais on permet aussi un nom de champ customisé.

#6

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

Ça remplace totalement la page next normale, je me demande si c'est vraiment ce que l'on souhaite ou si plutôt ça devrait uniquement remplacer l'URL par défaut (ici 'auth_homepage').

Il me semble que le fonctionnement idéal serait celui-ci (je met ça ici mais ce n'est pas forcément le ticket pour commencer cela): chaque OU représente une zone/un partenaire, sur un objet OU on peut mettre un paramètre 'post_registration_url'), la redirection en fin d'enregistrement sera:
  • auth_homepage si rien n'est mis ni dans A2_REGISTRATION_REDIRECT ni dans post_registration_url sur l'ou du service,
  • A2_REGISTRATION_REDIRECT si pas de service en cours (on est pas dans un sso) ou si post_registration_url,
  • post_registration_url si un service est en cours et que le paramètre est défini.

Pour des projets comme IMIO Connect ou GLC ce serait utile.

Une autre voie serait de supprimer complètement le lien d'enregistrement sur la page de login d'A2 et de passer uniquement par l'API d'enregistrement (sur l'appel à l'API le partenaire est capable de déterminer tout ce qu'il veut).

#7

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

  • Statut changé de Nouveau à En cours

Ça remplace totalement la page next normale, je me demande si c'est vraiment ce que l'on souhaite ou si plutôt ça devrait uniquement remplacer l'URL par défaut (ici 'auth_homepage').

Dans le cas présent c'est bien ça qui est souhaité. (du coup ack sur le patch présent)

Pour la suite, certainement utile de faire remonter des éléments du paramétrage global vers du paramétrage d'OU.

#8

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

Plus propre, par défaut on met ?next= si nécessaire mais on permet aussi un nom de champ customisé.

Ça te va de pousser ainsi ton patch ?

#9

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

Yep.

#10

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

  • Statut changé de En cours à Résolu (à déployer)
  • % réalisé changé de 0 à 100
#12

Mis à jour par Benjamin Dauvergne il y a plus de 5 ans

  • Statut changé de Résolu (à déployer) à Fermé

Formats disponibles : Atom PDF