Added clients screen

This commit is contained in:
Juan Gilsanz Polo 2022-09-28 15:47:43 +02:00
parent 576731b97f
commit d4a792e5c8
10 changed files with 393 additions and 5 deletions

View file

@ -1,6 +1,7 @@
import 'package:flutter/material.dart';
import 'package:sqflite/sqflite.dart';
import 'package:adguard_home_manager/models/clients.dart';
import 'package:adguard_home_manager/services/http_requests.dart';
import 'package:adguard_home_manager/models/server_status.dart';
import 'package:adguard_home_manager/functions/conversions.dart';
@ -17,6 +18,11 @@ class ServersProvider with ChangeNotifier {
); // serverStatus != null means server is connected
List<String> _protectionsManagementProcess = []; // protections that are currenty being enabled or disabled
final Clients _clients = Clients(
loadStatus: 0, // 0 = loading, 1 = loaded, 2 = error
data: null
);
List<Server> get serversList {
return _serversList;
}
@ -33,6 +39,10 @@ class ServersProvider with ChangeNotifier {
return _protectionsManagementProcess;
}
Clients get clients {
return _clients;
}
void setDbInstance(Database db) {
_dbInstance = db;
}
@ -56,6 +66,18 @@ class ServersProvider with ChangeNotifier {
_serverStatus.loadStatus = status;
notifyListeners();
}
void setClientsLoadStatus(int status, bool notify) {
_clients.loadStatus = status;
if (notify == true) {
notifyListeners();
}
}
void setClientsData(ClientsData data) {
_clients.data = data;
notifyListeners();
}
Future<bool> createServer(Server server) async {
final saved = await saveServerIntoDb(server);