add remember me
This commit is contained in:
parent
daef20db66
commit
395d3390cf
@ -8,7 +8,8 @@ import '../pages/LoginDemo.dart';
|
|||||||
|
|
||||||
class AuthService {
|
class AuthService {
|
||||||
// Login with username and password
|
// Login with username and password
|
||||||
Future<bool> login(String username, String password) async {
|
Future<bool> login(String username, String password,
|
||||||
|
{bool rememberMe = false}) async {
|
||||||
final url = Uri.parse("${globals.api}/token");
|
final url = Uri.parse("${globals.api}/token");
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@ -21,6 +22,7 @@ class AuthService {
|
|||||||
body: {
|
body: {
|
||||||
"username": username,
|
"username": username,
|
||||||
"password": password,
|
"password": password,
|
||||||
|
"remember_me": rememberMe.toString()
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -18,6 +18,7 @@ class _LoginDemoState extends State<LoginDemo> with ShowAlertDialog {
|
|||||||
TextEditingController inputPseudo = TextEditingController();
|
TextEditingController inputPseudo = TextEditingController();
|
||||||
TextEditingController inputPassword = TextEditingController();
|
TextEditingController inputPassword = TextEditingController();
|
||||||
final AuthService _authService = AuthService();
|
final AuthService _authService = AuthService();
|
||||||
|
bool _rememberMe = false;
|
||||||
|
|
||||||
Future<void> _login(BuildContext context) async {
|
Future<void> _login(BuildContext context) async {
|
||||||
final pseudo = inputPseudo.text;
|
final pseudo = inputPseudo.text;
|
||||||
@ -28,7 +29,8 @@ class _LoginDemoState extends State<LoginDemo> with ShowAlertDialog {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool success = await _authService.login(pseudo, password);
|
bool success =
|
||||||
|
await _authService.login(pseudo, password, rememberMe: _rememberMe);
|
||||||
|
|
||||||
if (success) {
|
if (success) {
|
||||||
Navigator.push(
|
Navigator.push(
|
||||||
@ -53,7 +55,6 @@ class _LoginDemoState extends State<LoginDemo> with ShowAlertDialog {
|
|||||||
|
|
||||||
Future<void> _checkLoginStatus() async {
|
Future<void> _checkLoginStatus() async {
|
||||||
bool loggedIn = await _authService.isLoggedIn();
|
bool loggedIn = await _authService.isLoggedIn();
|
||||||
print("logged status : ${loggedIn}");
|
|
||||||
if (loggedIn) {
|
if (loggedIn) {
|
||||||
Navigator.push(
|
Navigator.push(
|
||||||
context, MaterialPageRoute(builder: (_) => ListItemMenu()));
|
context, MaterialPageRoute(builder: (_) => ListItemMenu()));
|
||||||
@ -109,6 +110,15 @@ class _LoginDemoState extends State<LoginDemo> with ShowAlertDialog {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
CheckboxListTile(
|
||||||
|
title: Text("Se souvenir de moi"),
|
||||||
|
value: _rememberMe,
|
||||||
|
onChanged: (newValue) {
|
||||||
|
setState(() {
|
||||||
|
_rememberMe = newValue ?? false;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
),
|
||||||
TextButton(
|
TextButton(
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.push(context,
|
Navigator.push(context,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user