mirror of
https://github.com/inventree/inventree-app.git
synced 2025-04-28 05:26:47 +00:00
41 lines
1.2 KiB
Dart
41 lines
1.2 KiB
Dart
import 'package:shared_preferences/shared_preferences.dart';
|
|
import 'api.dart';
|
|
|
|
|
|
class InvenTreeUserPreferences {
|
|
|
|
static const String _SERVER = 'server';
|
|
static const String _USERNAME = 'username';
|
|
static const String _PASSWORD = 'password';
|
|
|
|
// Ensure we only ever create a single instance of the preferences class
|
|
static final InvenTreeUserPreferences _api = new InvenTreeUserPreferences._internal();
|
|
|
|
factory InvenTreeUserPreferences() {
|
|
return _api;
|
|
}
|
|
|
|
InvenTreeUserPreferences._internal();
|
|
|
|
// Load saved login details, and attempt connection
|
|
void loadLoginDetails() async {
|
|
SharedPreferences prefs = await SharedPreferences.getInstance();
|
|
|
|
var server = prefs.getString(_SERVER);
|
|
var username = prefs.getString(_USERNAME);
|
|
var password = prefs.getString(_PASSWORD);
|
|
|
|
await InvenTreeAPI().connect(server, username, password);
|
|
}
|
|
|
|
void saveLoginDetails(String server, String username, String password) async {
|
|
SharedPreferences prefs = await SharedPreferences.getInstance();
|
|
|
|
await prefs.setString(_SERVER, server);
|
|
await prefs.setString(_USERNAME, username);
|
|
await prefs.setString(_PASSWORD, password);
|
|
|
|
// Reconnect the API
|
|
await InvenTreeAPI().connect(server, username, password);
|
|
}
|
|
} |