diff --git a/ChessCubing.App/Components/UserAccessBar.razor b/ChessCubing.App/Components/UserAccessBar.razor index f1849f3..66efe82 100644 --- a/ChessCubing.App/Components/UserAccessBar.razor +++ b/ChessCubing.App/Components/UserAccessBar.razor @@ -30,14 +30,22 @@ @code { - private string LoginHref => BuildAuthHref("login", CurrentReturnUrl); - private string RegisterHref => BuildAuthHref("register", CurrentReturnUrl); + [Parameter] + public string? ReturnUrl { get; set; } + + private string LoginHref => BuildAuthHref("login", EffectiveReturnUrl); + private string RegisterHref => BuildAuthHref("register", EffectiveReturnUrl); private string LogoutHref => BuildAuthHref("logout", "/"); - private string CurrentReturnUrl + private string EffectiveReturnUrl { get { + if (!string.IsNullOrWhiteSpace(ReturnUrl)) + { + return ReturnUrl!; + } + var relativePath = Navigation.ToBaseRelativePath(Navigation.Uri); if (string.IsNullOrWhiteSpace(relativePath)) { diff --git a/ChessCubing.App/Pages/Home.razor b/ChessCubing.App/Pages/Home.razor index 9db2586..763468b 100644 --- a/ChessCubing.App/Pages/Home.razor +++ b/ChessCubing.App/Pages/Home.razor @@ -22,17 +22,13 @@ passe par une phase cube obligatoire, puis la partie repart avec un nouveau rythme.
+