mirror of
https://github.com/HendrikRauh/inventree-app.git
synced 2026-01-13 19:46:25 +00:00
Make the API a singleton class
Also add some simple URL validation
This commit is contained in:
parent
6b58ccb844
commit
6e807cbed1
2 changed files with 54 additions and 7 deletions
|
|
@ -1,6 +1,8 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
|
||||
import 'api.dart';
|
||||
|
||||
class InvenTreeLoginSettingsWidget extends StatefulWidget {
|
||||
|
||||
@override
|
||||
|
|
@ -22,6 +24,10 @@ class _InvenTreeLoginSettingsState extends State<InvenTreeLoginSettingsWidget> {
|
|||
return 'Server cannot be empty';
|
||||
}
|
||||
|
||||
if (!value.startsWith("http:") && !value.startsWith("https:")) {
|
||||
return 'Server must start with http[s]';
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
|
@ -48,9 +54,6 @@ class _InvenTreeLoginSettingsState extends State<InvenTreeLoginSettingsWidget> {
|
|||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
print("here we are");
|
||||
|
||||
print("Server: " + _addr);
|
||||
|
||||
final Size screenSize = MediaQuery.of(context).size;
|
||||
|
||||
|
|
@ -135,6 +138,8 @@ class _InvenTreeLoginSettingsState extends State<InvenTreeLoginSettingsWidget> {
|
|||
await prefs.setString('server', _addr);
|
||||
await prefs.setString('username', _user);
|
||||
await prefs.setString('password', _pass);
|
||||
|
||||
InvenTreeAPI().connect(_addr, _user, _pass);
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue