from mealie.core import root_logger from mealie.core.config import settings from mealie.core.security import get_password_hash from mealie.db.database import db from mealie.db.db_setup import create_session from mealie.schema.settings import SiteSettings from mealie.schema.theme import SiteTheme from mealie.services.events import create_general_event from sqlalchemy.orm import Session logger = root_logger.get_logger("init_db") def init_db(db: Session = None) -> None: if not db: db = create_session() default_group_init(db) default_settings_init(db) default_theme_init(db) default_user_init(db) db.close() def default_theme_init(session: Session): default_themes = [ SiteTheme().dict(), { "name": "Dark", "colors": {
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 from mealie.services.scheduler.scheduler_utils import Cron, cron_parser from mealie.utils.post_webhooks import post_webhooks 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")
from fastapi import APIRouter, Depends from mealie.core.root_logger import get_logger from mealie.routes.deps import get_current_user router = APIRouter(prefix="/api/units", dependencies=[Depends(get_current_user)]) logger = get_logger() @router.post("") async def create_food(): """ Create food in the Database """ # Create food pass @router.get("/{id}") async def get_food(): """ Get food from the Database """ # Get food pass @router.put("/{id}") async def update_food(): """ Update food in the Database """ # Update food pass @router.delete("/{id}")