From a74fdd45306a23e68ec3fd1bbd3cb047a16dbb7c Mon Sep 17 00:00:00 2001 From: yaso-meth Date: Mon, 2 Sep 2024 11:04:47 +0200 Subject: [PATCH] correct routing when external route is used. --- .../lib/router/routeGenerator.dart | 39 +++++++++++-------- 1 file changed, 22 insertions(+), 17 deletions(-) diff --git a/Frontend/patient_manager/lib/router/routeGenerator.dart b/Frontend/patient_manager/lib/router/routeGenerator.dart index 3ea57127..e8582c6e 100644 --- a/Frontend/patient_manager/lib/router/routeGenerator.dart +++ b/Frontend/patient_manager/lib/router/routeGenerator.dart @@ -18,9 +18,27 @@ import 'package:patient_manager/pages/profileUserUpdate.dart'; class RouteGenerator { static Route generateRoute(RouteSettings settings) { final args = settings.arguments; - + // print("settings name: ${settings.name}"); + // print("Base Url: ${Uri.base.path}"); + // print( + // "settings inside base url: ${settings.name!.contains(Uri.base.path)}"); + // External Links Navigation + if (settings.name!.contains(Uri.base.path) && Uri.base.path != "/") { + var extPath = Uri.base.path; + //print("query Param: ${Uri.base.queryParameters['token']}"); + switch (extPath) { + case '/auth/reset-password': + return MaterialPageRoute( + settings: settings, + builder: (_) => ResetPassword( + token: Uri.base.queryParameters['token'], + )); + default: + return _errorRoute(); + } + } // Internal Navigation - if (Uri.base.path == "/") { + else { switch (settings.name) { // Authgentication case '/': @@ -153,22 +171,9 @@ class RouteGenerator { ); } return _errorRoute(); + default: + return _errorRoute(); } - throw ''; - } - // External Links Navigation - else { - var extPath = Uri.base.path; - //print("query Param: ${Uri.base.queryParameters['token']}"); - switch (extPath) { - case '/auth/reset-password': - return MaterialPageRoute( - settings: settings, - builder: (_) => ResetPassword( - token: Uri.base.queryParameters['token'], - )); - } - throw ''; } } }