split navigation into internal and external navigations

This commit is contained in:
2024-09-02 10:03:49 +02:00
parent 38200c1128
commit f4700147bb

View File

@@ -3,6 +3,8 @@ import 'package:patient_manager/Authentication/authCheck.dart';
import 'package:patient_manager/components/addOrViewPatient.dart'; import 'package:patient_manager/components/addOrViewPatient.dart';
import 'package:patient_manager/objects/appUser.dart'; import 'package:patient_manager/objects/appUser.dart';
import 'package:patient_manager/objects/arguments.dart'; import 'package:patient_manager/objects/arguments.dart';
import 'package:patient_manager/pages/authentication/forgotPassword.dart';
import 'package:patient_manager/pages/authentication/resetPassword.dart';
import 'package:patient_manager/pages/fullScreenFile.dart'; import 'package:patient_manager/pages/fullScreenFile.dart';
import 'package:patient_manager/pages/patientAccessReview.dart'; import 'package:patient_manager/pages/patientAccessReview.dart';
import 'package:patient_manager/pages/patientAdd.dart'; import 'package:patient_manager/pages/patientAdd.dart';
@@ -17,11 +19,18 @@ class RouteGenerator {
static Route<dynamic> generateRoute(RouteSettings settings) { static Route<dynamic> generateRoute(RouteSettings settings) {
final args = settings.arguments; final args = settings.arguments;
// Internal Navigation
if (Uri.base.path == "/") {
switch (settings.name) { switch (settings.name) {
// Home or Sign in or Register Pages // Authgentication
case '/': case '/':
return MaterialPageRoute( return MaterialPageRoute(
settings: settings, builder: (_) => const AuthCheck()); settings: settings, builder: (_) => const AuthCheck());
case '/forgot-password':
return MaterialPageRoute(
settings: settings, builder: (_) => const ForgotPassword());
//http://mzansi-innovation-hub.co.za/auth/reset-password
//=============================================================== //===============================================================
//User Profile //User Profile
@@ -147,6 +156,21 @@ class RouteGenerator {
} }
throw ''; 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 '';
}
}
} }
Route<dynamic> _errorRoute() { Route<dynamic> _errorRoute() {