From cb7e35a992b4ba18ac40b58fa35a65a90ba7443e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Louis=20V=C3=A9zina?= <5130500+morpheus65535@users.noreply.github.com> Date: Wed, 20 Mar 2019 19:50:26 -0400 Subject: [PATCH] Rescheduling of Bazarr update task when saving settings. --- bazarr/main.py | 4 +--- bazarr/scheduler.py | 27 +++++++++++++++------------ 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/bazarr/main.py b/bazarr/main.py index 13f27f491..9ce773e21 100644 --- a/bazarr/main.py +++ b/bazarr/main.py @@ -1531,14 +1531,12 @@ def save_settings(): conn.commit() c.close() + schedule_update_job() sonarr_full_update() radarr_full_update() logging.info('BAZARR Settings saved succesfully.') - # reschedule full update task according to settings - sonarr_full_update() - if ref.find('saved=true') > 0: redirect(ref) else: diff --git a/bazarr/scheduler.py b/bazarr/scheduler.py index 74226d3a2..8c8ba94d7 100644 --- a/bazarr/scheduler.py +++ b/bazarr/scheduler.py @@ -80,19 +80,21 @@ def task_listener(event): scheduler.add_listener(task_listener, EVENT_JOB_SUBMITTED | EVENT_JOB_EXECUTED) -if not args.no_update: - if settings.general.getboolean('auto_update'): - scheduler.add_job(check_updates, IntervalTrigger(hours=6), max_instances=1, coalesce=True, - misfire_grace_time=15, id='update_bazarr', name='Update bazarr from source on Github' if not args.release_update else 'Update bazarr from release on Github') - else: - scheduler.add_job(check_updates, CronTrigger(year='2100'), hour=4, id='update_bazarr', - name='Update bazarr from source on Github' if not args.release_update else 'Update bazarr from release on Github') - scheduler.add_job(check_releases, IntervalTrigger(hours=6), max_instances=1, coalesce=True, - misfire_grace_time=15, id='update_release', name='Update release info') +def schedule_update_job(): + if not args.no_update: + if settings.general.getboolean('auto_update'): + scheduler.add_job(check_updates, IntervalTrigger(hours=6), max_instances=1, coalesce=True, + misfire_grace_time=15, id='update_bazarr', name='Update bazarr from source on Github' if not args.release_update else 'Update bazarr from release on Github', replace_existing=True) + else: + scheduler.add_job(check_updates, CronTrigger(year='2100'), hour=4, id='update_bazarr', + name='Update bazarr from source on Github' if not args.release_update else 'Update bazarr from release on Github', replace_existing=True) + scheduler.add_job(check_releases, IntervalTrigger(hours=6), max_instances=1, coalesce=True, + misfire_grace_time=15, id='update_release', name='Update release info', replace_existing=True) + + else: + scheduler.add_job(check_releases, IntervalTrigger(hours=6), max_instances=1, coalesce=True, misfire_grace_time=15, + id='update_release', name='Update release info', replace_existing=True) -else: - scheduler.add_job(check_releases, IntervalTrigger(hours=6), max_instances=1, coalesce=True, misfire_grace_time=15, - id='update_release', name='Update release info') if settings.general.getboolean('use_sonarr'): scheduler.add_job(update_series, IntervalTrigger(minutes=1), max_instances=1, coalesce=True, misfire_grace_time=15, @@ -112,6 +114,7 @@ if settings.general.getboolean('upgrade_subs'): scheduler.add_job(upgrade_subtitles, IntervalTrigger(hours=12), max_instances=1, coalesce=True, misfire_grace_time=15, id='upgrade_subtitles', name='Upgrade previously downloaded subtitles') +schedule_update_job() sonarr_full_update() radarr_full_update() scheduler.start()