Output login errors to user
This commit is contained in:
@@ -3,6 +3,7 @@ import 'package:jwt_decoder/jwt_decoder.dart';
|
||||
import 'package:sheetless/api.dart';
|
||||
import 'package:sheetless/home_page.dart';
|
||||
import 'package:sheetless/storage_helper.dart';
|
||||
import 'package:sheetless/utility.dart';
|
||||
|
||||
class LoginPage extends StatefulWidget {
|
||||
const LoginPage({super.key});
|
||||
@@ -62,17 +63,16 @@ class _LoginPageState extends State<LoginPage> {
|
||||
});
|
||||
serverUrl = "$serverUrl/api";
|
||||
final apiClient = ApiClient(baseUrl: serverUrl);
|
||||
final loginSuccessful = await apiClient.login(email, password);
|
||||
if (loginSuccessful) {
|
||||
final loginResult = await apiClient.login(email, password);
|
||||
if (loginResult.isOk()) {
|
||||
await _storageHelper.writeSecure(SecureStorageKey.url, serverUrl);
|
||||
await _storageHelper.writeSecure(SecureStorageKey.jwt, apiClient.token!);
|
||||
await _storageHelper.writeSecure(SecureStorageKey.email, email);
|
||||
await _storageHelper.writeSecure(SecureStorageKey.password, password);
|
||||
_navigateToMainPage();
|
||||
} else {
|
||||
// TODO: give more varied error messages
|
||||
setState(() {
|
||||
_error = "Login failed.";
|
||||
_error = "Login failed.\n${loginResult.error()}";
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user