Support edit querylog config

This commit is contained in:
Juan Gilsanz Polo 2023-04-14 23:17:54 +02:00
parent 3aac65a306
commit 415194d7a5
2 changed files with 42 additions and 4 deletions

View file

@ -11,6 +11,7 @@ import 'package:adguard_home_manager/screens/logs/log_tile.dart';
import 'package:adguard_home_manager/functions/snackbar.dart'; import 'package:adguard_home_manager/functions/snackbar.dart';
import 'package:adguard_home_manager/classes/process_modal.dart'; import 'package:adguard_home_manager/classes/process_modal.dart';
import 'package:adguard_home_manager/models/applied_filters.dart'; import 'package:adguard_home_manager/models/applied_filters.dart';
import 'package:adguard_home_manager/functions/compare_versions.dart';
import 'package:adguard_home_manager/providers/logs_provider.dart'; import 'package:adguard_home_manager/providers/logs_provider.dart';
import 'package:adguard_home_manager/providers/app_config_provider.dart'; import 'package:adguard_home_manager/providers/app_config_provider.dart';
import 'package:adguard_home_manager/services/http_requests.dart'; import 'package:adguard_home_manager/services/http_requests.dart';
@ -191,7 +192,13 @@ class _LogsWidgetState extends State<LogsWidget> {
ProcessModal processModal = ProcessModal(context: context); ProcessModal processModal = ProcessModal(context: context);
processModal.open(AppLocalizations.of(context)!.updatingSettings); processModal.open(AppLocalizations.of(context)!.updatingSettings);
final result = await updateQueryLogParameters(server: serversProvider.selectedServer!, data: data); final result = versionIsGreater(
currentVersion: widget.serversProvider.serverStatus.data!.serverVersion,
referenceVersion: 'v0.107.28',
referenceVersionBeta: 'v0.108.0-b.33'
) == true
? await updateQueryLogParameters(server: serversProvider.selectedServer!, data: data)
: await updateQueryLogParametersLegacy(server: serversProvider.selectedServer!, data: data);
processModal.close(); processModal.close();

View file

@ -5,6 +5,7 @@ import 'package:provider/provider.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:adguard_home_manager/services/http_requests.dart'; import 'package:adguard_home_manager/services/http_requests.dart';
import 'package:adguard_home_manager/functions/compare_versions.dart';
import 'package:adguard_home_manager/providers/app_config_provider.dart'; import 'package:adguard_home_manager/providers/app_config_provider.dart';
import 'package:adguard_home_manager/providers/servers_provider.dart'; import 'package:adguard_home_manager/providers/servers_provider.dart';
@ -63,7 +64,13 @@ class _LogsConfigModalWidgetState extends State<LogsConfigModalWidget> {
int loadStatus = 0; int loadStatus = 0;
void loadData() async { void loadData() async {
final result = await getQueryLogInfo(server: widget.serversProvider.selectedServer!); final result = versionIsGreater(
currentVersion: widget.serversProvider.serverStatus.data!.serverVersion,
referenceVersion: 'v0.107.28',
referenceVersionBeta: 'v0.108.0-b.33'
) == true
? await getQueryLogInfo(server: widget.serversProvider.selectedServer!)
: await getQueryLogInfoLegacy(server: widget.serversProvider.selectedServer!);
if (mounted) { if (mounted) {
if (result['result'] == 'success') { if (result['result'] == 'success') {
@ -82,7 +89,32 @@ class _LogsConfigModalWidgetState extends State<LogsConfigModalWidget> {
@override @override
void initState() { void initState() {
retentionItems = [ retentionItems = versionIsGreater(
currentVersion: widget.serversProvider.serverStatus.data!.serverVersion,
referenceVersion: 'v0.107.28',
referenceVersionBeta: 'v0.108.0-b.33'
) == true ? [
{
'label': AppLocalizations.of(widget.context)!.hours6,
'value': 21600000
},
{
'label': AppLocalizations.of(widget.context)!.hours24,
'value': 86400000
},
{
'label': AppLocalizations.of(widget.context)!.days7,
'value': 604800000
},
{
'label': AppLocalizations.of(widget.context)!.days30,
'value': 2592000000
},
{
'label': AppLocalizations.of(widget.context)!.days90,
'value': 7776000000
},
] : [
{ {
'label': AppLocalizations.of(widget.context)!.hours6, 'label': AppLocalizations.of(widget.context)!.hours6,
'value': 0.25 'value': 0.25
@ -111,7 +143,6 @@ class _LogsConfigModalWidgetState extends State<LogsConfigModalWidget> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
Widget generateBody() { Widget generateBody() {
switch (loadStatus) { switch (loadStatus) {
case 0: case 0: