QOL: reset providers on signout and signin

This commit is contained in:
2025-10-24 12:59:11 +02:00
parent a9ea3594b9
commit 656e1cd3d7
3 changed files with 38 additions and 12 deletions

View File

@@ -12,6 +12,7 @@ import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_
import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_error_message.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_error_message.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_loading_circle.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_loading_circle.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_authentication_provider.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_authentication_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_profile_provider.dart';
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart'; import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
import 'package:mzansi_innovation_hub/mih_config/mih_env.dart'; import 'package:mzansi_innovation_hub/mih_config/mih_env.dart';
import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart'; import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart';
@@ -75,6 +76,7 @@ class _MihRegisterState extends State<MihRegister> {
} }
Future<void> signUserUp() async { Future<void> signUserUp() async {
context.read<MzansiProfileProvider>().reset();
if (!validEmail()) { if (!validEmail()) {
emailError(); emailError();
} else if (passwordController.text != confirmPasswordController.text) { } else if (passwordController.text != confirmPasswordController.text) {

View File

@@ -10,6 +10,7 @@ import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_text_form_field.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_text_form_field.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_error_message.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_error_message.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_authentication_provider.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_authentication_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_profile_provider.dart';
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart'; import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
import 'package:mzansi_innovation_hub/mih_config/mih_env.dart'; import 'package:mzansi_innovation_hub/mih_config/mih_env.dart';
import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart'; import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart';
@@ -39,6 +40,7 @@ class _MihSignInState extends State<MihSignIn> {
//sign user in //sign user in
Future<void> signUserIn() async { Future<void> signUserIn() async {
context.read<MzansiProfileProvider>().reset();
try { try {
successfulSignIn = await MihAuthenticationServices().signUserIn( successfulSignIn = await MihAuthenticationServices().signUserIn(
emailController.text, emailController.text,

View File

@@ -4,7 +4,17 @@ import 'package:mzansi_innovation_hub/mih_components/mih_objects/arguments.dart'
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_circle_avatar.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_circle_avatar.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_icons.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_icons.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/about_mih_provider.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_providers/about_mih_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_access_controlls_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_authentication_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_banner_ad_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_calculator_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_calendar_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mih_mine_sweeper_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_ai_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_directory_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_profile_provider.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_profile_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_wallet_provider.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/patient_manager_provider.dart';
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart'; import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import '../../../main.dart'; import '../../../main.dart';
@@ -22,6 +32,21 @@ class MIHAppDrawer extends StatefulWidget {
class _MIHAppDrawerState extends State<MIHAppDrawer> { class _MIHAppDrawerState extends State<MIHAppDrawer> {
final proPicController = TextEditingController(); final proPicController = TextEditingController();
late Widget profilePictureLoaded; late Widget profilePictureLoaded;
void resetProviders() {
context.read<AboutMihProvider>().reset();
context.read<MihAccessControllsProvider>().reset();
context.read<MihAuthenticationProvider>().reset();
context.read<MihBannerAdProvider>().reset();
context.read<MihCalculatorProvider>().reset();
context.read<MihCalendarProvider>().reset();
context.read<MihMineSweeperProvider>().reset();
context.read<MzansiAiProvider>().reset();
context.read<MzansiDirectoryProvider>().reset();
context.read<MzansiWalletProvider>().reset();
context.read<PatientManagerProvider>().reset();
}
Future<bool> signOut() async { Future<bool> signOut() async {
await SuperTokens.signOut(completionHandler: (error) { await SuperTokens.signOut(completionHandler: (error) {
// handle error if any // handle error if any
@@ -107,7 +132,7 @@ class _MIHAppDrawerState extends State<MIHAppDrawer> {
Visibility( Visibility(
visible: !mzansiProfileProvider.personalHome, visible: !mzansiProfileProvider.personalHome,
child: Text( child: Text(
mzansiProfileProvider.business!.Name, mzansiProfileProvider.business?.Name ?? "",
style: TextStyle( style: TextStyle(
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
color: MihColors.getPrimaryColor( color: MihColors.getPrimaryColor(
@@ -135,7 +160,7 @@ class _MIHAppDrawerState extends State<MIHAppDrawer> {
Visibility( Visibility(
visible: !mzansiProfileProvider.personalHome, visible: !mzansiProfileProvider.personalHome,
child: Text( child: Text(
mzansiProfileProvider.business!.type, mzansiProfileProvider.business?.type ?? "",
style: TextStyle( style: TextStyle(
fontSize: 12, fontSize: 12,
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
@@ -321,16 +346,13 @@ class _MIHAppDrawerState extends State<MIHAppDrawer> {
}); });
if (await SuperTokens.doesSessionExist() == if (await SuperTokens.doesSessionExist() ==
false) { false) {
mzansiProfileProvider.reset(); resetProviders();
context.goNamed( await Future.delayed(Duration.zero);
'mihHome', if (context.mounted) {
extra: true, context.goNamed(
); 'mihHome',
// Navigator.of(context).pop(); );
// Navigator.of(context).popAndPushNamed( }
// '/',
// arguments: AuthArguments(true, false),
// );
} }
}, },
), ),