From a0277d39f99e4d4ffb5d06d6df5dbcc66bc78524 Mon Sep 17 00:00:00 2001 From: Elham Rababah Date: Wed, 9 Sep 2020 17:56:29 +0300 Subject: [PATCH] add logout function --- .../viewModels/authentication_view_model.dart | 4 ++++ lib/pages/setting/setting.dart | 17 +++++++++++++++-- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/lib/core/viewModels/authentication_view_model.dart b/lib/core/viewModels/authentication_view_model.dart index 1f89a60..158e428 100644 --- a/lib/core/viewModels/authentication_view_model.dart +++ b/lib/core/viewModels/authentication_view_model.dart @@ -79,4 +79,8 @@ class AuthenticationViewModel with ChangeNotifier { notifyListeners(); } } + + logout() async { + await sharedPref.clear(); + } } diff --git a/lib/pages/setting/setting.dart b/lib/pages/setting/setting.dart index c084d7f..63c8830 100644 --- a/lib/pages/setting/setting.dart +++ b/lib/pages/setting/setting.dart @@ -1,17 +1,21 @@ +import 'package:driverapp/core/viewModels/authentication_view_model.dart'; +import 'package:driverapp/pages/authentication/login_page.dart'; import 'package:driverapp/uitl/translations_delegate_base.dart'; import 'package:driverapp/widgets/others/app_scaffold_widget.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; - +import 'package:provider/provider.dart'; class SettingPage extends StatelessWidget { - final String driverName;//_authenticationViewModel.user.userName + final String driverName; //_authenticationViewModel.user.userName final int driverID; + AuthenticationViewModel _authenticationViewModel; SettingPage({this.driverName, this.driverID}); @override Widget build(BuildContext context) { + _authenticationViewModel = Provider.of(context); return AppScaffold( isShowAppBar: true, appBarColor: Color(0xff30B7B9), @@ -73,6 +77,15 @@ class SettingPage extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.stretch, children: [ InkWell( + onTap: () async { + await _authenticationViewModel.logout(); + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => LoginPage() + ), + ); + }, child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [