Untitled
unknown
plain_text
10 months ago
1.4 kB
15
Indexable
static Future<Map<String, dynamic>> signIn({
required String email,
required String password,
}) async {
try {
final response = await http.get(Uri.parse('$dbUrl/Accounts.json'));
if (response.statusCode == 200) {
final Map<String, dynamic>? accounts = json.decode(response.body);
if (accounts != null) {
for (var accountEntry in accounts.entries) {
final account = accountEntry.value;
if (account['Email'] == email) {
if (account['Password'] == _hashPassword(password)) {
return {
'success': true,
'message': 'Login successful!',
'account': account,
'accountId': accountEntry.key,
};
} else {
return {'success': false, 'error': 'Incorrect password.'};
}
}
}
return {'success': false, 'error': 'Invalid email or password.'};
} else {
return {'success': false, 'error': 'No accounts found.'};
}
} else {
return {
'success': false,
'error': 'Failed to sign in. Please try again.',
};
}
} catch (e) {
return {'success': false, 'error': 'An error occurred: $e'};
}
}Editor is loading...
Leave a Comment