Bug/misc bug fixes (#400)

* potentiall fix #329

* typo

* auto purge events

* image error

* update import dialog

* fix scheduler interval time

* adjust icon position

* check for property

Co-authored-by: hay-kot <hay-kot@pm.me>
This commit is contained in:
Hayden
2021-05-08 21:31:19 -08:00
committed by GitHub
parent 145eb9f1ee
commit a1dd6c941b
10 changed files with 99 additions and 71 deletions

View File

@@ -38,7 +38,7 @@ class _Recipes(BaseDocument):
return f"{slug}.{extension}"
def count_uncategorized(self, session: Session, count=True, override_schema=None) -> int:
return self._countr_attribute(
return self._count_attribute(
session,
attribute_name=RecipeModel.recipe_category,
attr_match=None,
@@ -47,7 +47,7 @@ class _Recipes(BaseDocument):
)
def count_untagged(self, session: Session, count=True, override_schema=None) -> int:
return self._countr_attribute(
return self._count_attribute(
session, attribute_name=RecipeModel.tags, attr_match=None, count=count, override_schema=override_schema
)

View File

@@ -178,7 +178,7 @@ class BaseDocument:
else:
return session.query(self.sql_model).filter_by(**{match_key: match_value}).count()
def _countr_attribute(
def _count_attribute(
self, session: Session, attribute_name: str, attr_match: str = None, count=True, override_schema=None
) -> Union[int, BaseModel]:
eff_schema = override_schema or self.schema

View File

@@ -1,7 +1,10 @@
import datetime
from apscheduler.schedulers.background import BackgroundScheduler
from mealie.core import root_logger
from mealie.db.database import db
from mealie.db.db_setup import create_session
from mealie.db.models.event import Event
from mealie.schema.user import GroupInDB
from mealie.services.backups.exports import auto_backup_job
from mealie.services.scheduler.global_scheduler import scheduler
@@ -13,6 +16,21 @@ logger = root_logger.get_logger()
# TODO Fix Scheduler
@scheduler.scheduled_job(trigger="interval", minutes=1440)
def purge_events_database():
"""
Ran daily. Purges all events after 100
"""
logger.info("Purging Events in Database")
expiration_days = 7
limit = datetime.datetime.now() - datetime.timedelta(days=expiration_days)
session = create_session()
session.query(Event).filter(Event.time_stamp <= limit).delete()
session.commit()
session.close()
logger.info("Events Purges")
@scheduler.scheduled_job(trigger="interval", minutes=30)
def update_webhook_schedule():
"""