diff --git a/README.md b/README.md index 8f42f8b0..9848d0af 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,7 @@ Know when ... - New software releases, security advisories when you're not on their mailing list. - Festivals with changes - Realestate listing changes +- COVID related news from government websites **Get monitoring now! super simple, one command!** diff --git a/backend/__init__.py b/backend/__init__.py index c2e77b4b..96c26040 100644 --- a/backend/__init__.py +++ b/backend/__init__.py @@ -334,6 +334,17 @@ def changedetection_app(conig=None, datastore_o=None): url = request.form.get('url').strip() tag = request.form.get('tag').strip() + minutes_recheck = request.form.get('minutes') + if minutes_recheck: + minutes = int(minutes_recheck.strip()) + if minutes >= 1: + datastore.data['watching'][uuid]['minutes_between_check'] = minutes + else: + messages.append( + {'class': 'error', 'message': "Must be atleast 1 minute."}) + + + # Extra headers form_headers = request.form.get('headers').strip().split("\n") extra_headers = {} @@ -856,9 +867,16 @@ def ticker_thread_check_time_launch_checks(): threshold = time.time() - (minutes * 60) for uuid, watch in datastore.data['watching'].items(): + + # If they supplied an individual entry minutes to recheck and its not the same as the default + if 'minutes_between_check' in watch and minutes != watch['minutes_between_check']: + threshold = time.time() - (watch['minutes_between_check'] * 60) + if not watch['paused'] and watch['last_checked'] <= threshold: if not uuid in running_uuids and uuid not in update_q.queue: update_q.put(uuid) + time.sleep(1) + # Should be low so we can break this out in testing app.config.exit.wait(1) diff --git a/backend/store.py b/backend/store.py index 755db80d..6ae6223d 100644 --- a/backend/store.py +++ b/backend/store.py @@ -55,6 +55,7 @@ class ChangeDetectionStore: 'last_viewed': 0, # history key value of the last viewed via the [diff] link 'newest_history_key': "", 'title': None, + 'minutes_between_check': 3 * 60, # Default 3 hours 'previous_md5': "", 'uuid': str(uuid_builder.uuid4()), 'headers': {}, # Extra headers to send diff --git a/backend/templates/edit.html b/backend/templates/edit.html index f889cf8c..14e109d7 100644 --- a/backend/templates/edit.html +++ b/backend/templates/edit.html @@ -17,6 +17,13 @@
+ +