mirror of
https://gitlab.com/crafty-controller/crafty-4.git
synced 2024-08-30 18:23:09 +00:00
Merge branch 'bugfix/schedule-edit' into 'dev'
Fix quick disable button on schedules list See merge request crafty-controller/crafty-4!649
This commit is contained in:
commit
c35e1bf2c3
@ -20,6 +20,7 @@
|
||||
- Move `imports` to `import/upload` in bind mount to better serve users on unraid with limited vdisk storage ([Merge Request](https://gitlab.com/crafty-controller/crafty-4/-/merge_requests/642))
|
||||
- Fix bug where everytime a page was loaded user settings would be reset #286 ([Merge Request](https://gitlab.com/crafty-controller/crafty-4/-/merge_requests/643))
|
||||
- Fix tooltip info icon on server config page ([Merge Request](https://gitlab.com/crafty-controller/crafty-4/-/merge_requests/647))
|
||||
- Fix quick disable toggle on schedules list ([Merge Request](https://gitlab.com/crafty-controller/crafty-4/-/merge_requests/649))
|
||||
### Refactor
|
||||
- Consolidate remaining frontend functions into API V2, and remove ajax internal API ([Merge Request](https://gitlab.com/crafty-controller/crafty-4/-/merge_requests/585))
|
||||
- Replace bleach with nh3 ([Merge Request](https://gitlab.com/crafty-controller/crafty-4/-/merge_requests/628))
|
||||
|
@ -8,6 +8,7 @@ import json
|
||||
from zoneinfo import ZoneInfoNotFoundError
|
||||
from tzlocal import get_localzone
|
||||
from apscheduler.events import EVENT_JOB_EXECUTED
|
||||
from apscheduler.jobstores.base import JobLookupError
|
||||
from apscheduler.schedulers.background import BackgroundScheduler
|
||||
from apscheduler.triggers.cron import CronTrigger
|
||||
|
||||
@ -324,7 +325,10 @@ class TasksManager:
|
||||
|
||||
# Checks to make sure some doofus didn't actually make the newly
|
||||
# created task a child of itself.
|
||||
if str(job_data["parent"]) == str(sch_id):
|
||||
if (
|
||||
str(job_data["parent"]) == str(sch_id)
|
||||
or job_data["interval_type"] != "reaction"
|
||||
):
|
||||
HelpersManagement.update_scheduled_task(sch_id, {"parent": None})
|
||||
|
||||
# Check to see if it's enabled and is not a chain reaction.
|
||||
@ -451,10 +455,8 @@ class TasksManager:
|
||||
def update_job(self, sch_id, job_data):
|
||||
# Checks to make sure some doofus didn't actually make the newly
|
||||
# created task a child of itself.
|
||||
if (
|
||||
str(job_data.get("parent")) == str(sch_id)
|
||||
or job_data["interval_type"] != "reaction"
|
||||
):
|
||||
interval_type = job_data.get("interval_type")
|
||||
if str(job_data.get("parent")) == str(sch_id) or interval_type != "reaction":
|
||||
job_data["parent"] = None
|
||||
HelpersManagement.update_scheduled_task(sch_id, job_data)
|
||||
|
||||
@ -471,13 +473,15 @@ class TasksManager:
|
||||
job_data = HelpersManagement.get_scheduled_task(sch_id)
|
||||
job_data["server_id"] = job_data["server_id"]["server_id"]
|
||||
else:
|
||||
self.scheduler.remove_job(str(sch_id))
|
||||
job = HelpersManagement.get_scheduled_task(sch_id)
|
||||
if job["interval_type"] != "reaction":
|
||||
self.scheduler.remove_job(str(sch_id))
|
||||
return
|
||||
|
||||
try:
|
||||
if job_data["interval"] != "reaction":
|
||||
self.scheduler.remove_job(str(sch_id))
|
||||
except:
|
||||
except JobLookupError:
|
||||
logger.info(
|
||||
"No job found in update job. "
|
||||
"Assuming it was previously disabled. Starting new job."
|
||||
|
Loading…
Reference in New Issue
Block a user