From 86b35a1f2edd753f0928cf95e0056f1002c899c0 Mon Sep 17 00:00:00 2001 From: Juan Gilsanz Polo Date: Mon, 3 Oct 2022 22:53:35 +0200 Subject: [PATCH] Search filters allow search everything --- lib/l10n/app_en.arb | 3 +- lib/l10n/app_es.arb | 3 +- lib/providers/logs_provider.dart | 12 +++--- lib/screens/logs/appbar.dart | 2 +- lib/screens/logs/logs_filters_modal.dart | 47 +++++------------------- 5 files changed, 21 insertions(+), 46 deletions(-) diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index fbee287..2a783b7 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -156,5 +156,6 @@ "all": "All", "filtered": "Filtered", "checkAppLogs": "Check app logs", - "refresh": "Refresh" + "refresh": "Refresh", + "search": "Search" } \ No newline at end of file diff --git a/lib/l10n/app_es.arb b/lib/l10n/app_es.arb index a86630f..f78b21f 100644 --- a/lib/l10n/app_es.arb +++ b/lib/l10n/app_es.arb @@ -156,5 +156,6 @@ "all": "Todas", "filtered": "Filtrada", "checkAppLogs": "Comprueba los logs de la app", - "refresh": "Actualizar" + "refresh": "Actualizar", + "search": "Buscar" } \ No newline at end of file diff --git a/lib/providers/logs_provider.dart b/lib/providers/logs_provider.dart index c7e72db..49b5017 100644 --- a/lib/providers/logs_provider.dart +++ b/lib/providers/logs_provider.dart @@ -7,7 +7,7 @@ class LogsProvider with ChangeNotifier { DateTime? _logsOlderThan; String _selectedResultStatus = 'all'; - String? _searchIpDomain; + String? _searchText; int _logsQuantity = 100; int _offset = 0; @@ -28,8 +28,8 @@ class LogsProvider with ChangeNotifier { return _selectedResultStatus; } - String? get searchIpDomain { - return _searchIpDomain; + String? get searchText { + return _searchText; } int get logsQuantity { @@ -60,7 +60,7 @@ class LogsProvider with ChangeNotifier { _logsOlderThan = null; _offset = 0; _selectedResultStatus = 'all'; - _searchIpDomain = null; + _searchText = null; notifyListeners(); } @@ -77,8 +77,8 @@ class LogsProvider with ChangeNotifier { _selectedResultStatus = value; notifyListeners(); } - void setSearchIpDomain(String? value) { - _searchIpDomain = value; + void setSearchText(String? value) { + _searchText = value; notifyListeners(); } } \ No newline at end of file diff --git a/lib/screens/logs/appbar.dart b/lib/screens/logs/appbar.dart index 9173638..44f1179 100644 --- a/lib/screens/logs/appbar.dart +++ b/lib/screens/logs/appbar.dart @@ -27,7 +27,7 @@ class LogsAppBar extends StatelessWidget with PreferredSizeWidget { if (logsProvider.logsOlderThan != null) { number++; } - if (logsProvider.searchIpDomain != null) { + if (logsProvider.searchText != null) { number++; } if (logsProvider.selectedResultStatus != 'all') { diff --git a/lib/screens/logs/logs_filters_modal.dart b/lib/screens/logs/logs_filters_modal.dart index fd540f3..07210d1 100644 --- a/lib/screens/logs/logs_filters_modal.dart +++ b/lib/screens/logs/logs_filters_modal.dart @@ -37,12 +37,11 @@ class LogsFiltersModalWidget extends StatefulWidget { } class _LogsFiltersModalWidgetState extends State { - TextEditingController addressController = TextEditingController(); - String? addressFieldError; + TextEditingController searchController = TextEditingController(); @override void initState() { - addressController.text = widget.logsProvider.searchIpDomain ?? ''; + searchController.text = widget.logsProvider.searchText ?? ''; super.initState(); } @@ -94,8 +93,7 @@ class _LogsFiltersModalWidgetState extends State { void resetFilters() async { setState(() { - addressController.text = ''; - addressFieldError = null; + searchController.text = ''; }); logsProvider.setLoadStatus(0); @@ -128,29 +126,6 @@ class _LogsFiltersModalWidgetState extends State { ); } - void validateAddress(String? value) { - if (value != null && value != '') { - RegExp ipAddress = RegExp(r'^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}$'); - RegExp domain = RegExp(r'^((?!-))(xn--)?[a-z0-9][a-z0-9-_]{0,61}[a-z0-9]{0,1}\.(xn--)?([a-z0-9\-]{1,61}|[a-z0-9-]{1,30}\.[a-z]{2,})$'); - if (ipAddress.hasMatch(value) == true || domain.hasMatch(value) == true) { - setState(() { - addressFieldError = null; - }); - logsProvider.setSearchIpDomain(addressController.text); - } - else { - setState(() { - addressFieldError = AppLocalizations.of(context)!.invalidIpDomain; - }); - } - } - else { - setState(() { - addressFieldError = AppLocalizations.of(context)!.ipDomainNotEmpty; - }); - } - } - void filterLogs() async { Navigator.pop(context); @@ -163,7 +138,7 @@ class _LogsFiltersModalWidgetState extends State { count: logsProvider.logsQuantity, olderThan: logsProvider.logsOlderThan, responseStatus: logsProvider.selectedResultStatus, - search: logsProvider.searchIpDomain, + search: logsProvider.searchText, ); if (result['result'] == 'success') { logsProvider.setLogsData(result['data']); @@ -216,17 +191,16 @@ class _LogsFiltersModalWidgetState extends State { SizedBox( width: MediaQuery.of(context).size.width - 108, child: TextFormField( - controller: addressController, - onChanged: validateAddress, + controller: searchController, + onChanged: (value) => logsProvider.setSearchText(value), decoration: InputDecoration( - prefixIcon: const Icon(Icons.link_rounded), - errorText: addressFieldError, + prefixIcon: const Icon(Icons.search_rounded), border: const OutlineInputBorder( borderRadius: BorderRadius.all( Radius.circular(10) ) ), - labelText: AppLocalizations.of(context)!.ipDomain, + labelText: AppLocalizations.of(context)!.search, ), ), ), @@ -234,10 +208,9 @@ class _LogsFiltersModalWidgetState extends State { IconButton( onPressed: () { setState(() { - addressController.text = ''; - addressFieldError = null; + searchController.text = ''; }); - logsProvider.setSearchIpDomain(null); + logsProvider.setSearchText(null); }, icon: const Icon(Icons.clear) )