fixed routing
This commit is contained in:
parent
32d74d23dd
commit
3ad3515d8d
@ -28,32 +28,15 @@ import 'package:marco/view/tenant/tenant_create_screen.dart';
|
||||
class AuthMiddleware extends GetMiddleware {
|
||||
@override
|
||||
RouteSettings? redirect(String? route) {
|
||||
// ✅ Public routes that don't require authentication
|
||||
const publicRoutes = [
|
||||
'/auth/login-option',
|
||||
'/auth/login',
|
||||
'/subscription',
|
||||
'/payment',
|
||||
'/select-tenant',
|
||||
'/create-tenant',
|
||||
];
|
||||
|
||||
// ✅ Allow any route that starts with these public routes
|
||||
if (route != null &&
|
||||
publicRoutes.any((public) => route.startsWith(public))) {
|
||||
return null;
|
||||
}
|
||||
|
||||
// ✅ Block others if not logged in
|
||||
if (!AuthService.isLoggedIn) {
|
||||
if (route != '/auth/login-option') {
|
||||
return const RouteSettings(name: '/auth/login-option');
|
||||
}
|
||||
|
||||
// ✅ Ensure tenant is selected after login
|
||||
if (!TenantService.isTenantSelected) {
|
||||
} else if (!TenantService.isTenantSelected) {
|
||||
if (route != '/select-tenant') {
|
||||
return const RouteSettings(name: '/select-tenant');
|
||||
}
|
||||
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@ -74,20 +57,20 @@ getPageRoute() {
|
||||
page: () => const TenantSelectionScreen(),
|
||||
middlewares: [AuthMiddleware()]),
|
||||
|
||||
// Dashboard
|
||||
// Dashboard
|
||||
GetPage(
|
||||
name: '/dashboard/attendance',
|
||||
page: () => AttendanceScreen(),
|
||||
middlewares: [AuthMiddleware()]),
|
||||
// GetPage(
|
||||
// name: '/dashboard',
|
||||
// page: () => DashboardScreen(),
|
||||
// middlewares: [AuthMiddleware()]),
|
||||
GetPage(
|
||||
name: '/dashboard',
|
||||
page: () => DashboardScreen(),
|
||||
middlewares: [AuthMiddleware()]),
|
||||
GetPage(
|
||||
name: '/dashboard/employees',
|
||||
page: () => EmployeesScreen(),
|
||||
middlewares: [AuthMiddleware()]),
|
||||
// Daily Task Planning
|
||||
// Daily Task Planning
|
||||
GetPage(
|
||||
name: '/dashboard/daily-task-Planning',
|
||||
page: () => DailyTaskPlanningScreen(),
|
||||
@ -100,12 +83,12 @@ getPageRoute() {
|
||||
name: '/dashboard/directory-main-page',
|
||||
page: () => DirectoryMainScreen(),
|
||||
middlewares: [AuthMiddleware()]),
|
||||
// Expense
|
||||
// Expense
|
||||
GetPage(
|
||||
name: '/dashboard/expense-main-page',
|
||||
page: () => ExpenseMainScreen(),
|
||||
middlewares: [AuthMiddleware()]),
|
||||
// Documents
|
||||
// Documents
|
||||
GetPage(
|
||||
name: '/dashboard/document-main-page',
|
||||
page: () => UserDocumentsPage(),
|
||||
@ -121,7 +104,7 @@ getPageRoute() {
|
||||
name: '/subscription',
|
||||
page: () => SubscriptionScreen(),
|
||||
),
|
||||
// Authentication
|
||||
// Authentication
|
||||
GetPage(name: '/auth/login', page: () => LoginScreen()),
|
||||
GetPage(name: '/auth/login-option', page: () => LoginOptionScreen()),
|
||||
GetPage(name: '/auth/mpin', page: () => MPINScreen()),
|
||||
@ -132,7 +115,7 @@ getPageRoute() {
|
||||
GetPage(name: '/auth/forgot_password', page: () => ForgotPasswordScreen()),
|
||||
GetPage(
|
||||
name: '/auth/reset_password', page: () => const ResetPasswordScreen()),
|
||||
// Error
|
||||
// Error
|
||||
GetPage(
|
||||
name: '/error/coming_soon',
|
||||
page: () => ComingSoonScreen(),
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user