コード例 #1
0
def default_settings_init(session: Session = None):
    if session == None:
        session = create_session()
    try:
        webhooks = Webhooks()
        default_entry = SiteSettings(name="main", webhooks=webhooks)
        document = db.settings.create(session, default_entry.dict(),
                                      webhooks.dict())
    except:
        pass
コード例 #2
0
def auto_backup_job():
    for backup in BACKUP_DIR.glob("Auto*.zip"):
        backup.unlink()

    templates = []
    for template in TEMPLATE_DIR.iterdir():
        templates.append(template)

    session = create_session()
    backup_all(session=session, tag="Auto", templates=templates)
    logger.info("Auto Backup Called")
コード例 #3
0
ファイル: post_webhooks.py プロジェクト: wengtad/mealie
def post_webhooks():
    session = create_session()
    all_settings = db.get(session, "main")
    all_settings = SiteSettings(**all_settings)

    if all_settings.webhooks.enabled:
        todays_meal = Recipe.get_by_slug(MealPlan.today()).dict()
        urls = all_settings.webhooks.webhookURLs

        for url in urls:
            requests.post(url, json.dumps(todays_meal, default=str))

    session.close()
コード例 #4
0
def default_theme_init():
    default_theme = {
        "name": "default",
        "colors": {
            "primary": "#E58325",
            "accent": "#00457A",
            "secondary": "#973542",
            "success": "#5AB1BB",
            "info": "#4990BA",
            "warning": "#FF4081",
            "error": "#EF5350",
        },
    }
    session = create_session()
    try:
        db.themes.create(session, default_theme)
        logger.info("Generating default theme...")
    except:
        logger.info("Default Theme Exists.. skipping generation")
コード例 #5
0
ファイル: scheduled_jobs.py プロジェクト: wengtad/mealie
def update_webhook_schedule():
    """
    A scheduled background job that runs every 15 minutes to
    poll the database for changes and reschedule the webhook time
    """
    session = create_session()
    settings = db.settings.get(session, "main")
    settings = SiteSettings(**settings)
    time = cron_parser(settings.webhooks.webhookTime)
    job = JOB_STORE.get("webhooks")

    scheduler.reschedule_job(
        job.scheduled_task.id,
        trigger="cron",
        hour=time.hours,
        minute=time.minutes,
    )

    session.close()
    logger.info(scheduler.print_jobs())