Source code for shopyoapi.enhance

import json
import os
from flask import current_app
from flask import url_for

from modules.box__default.settings.models import Settings
from modules.box__default.settings.helpers import get_setting


[docs]def get_active_theme_dir(): active_theme_dir = os.path.join( current_app.config["BASE_DIR"], "themes", get_setting("ACTIVE_FRONT_THEME"), ) return active_theme_dir
[docs]def set_setting(key, value): setting = Settings.query.filter(Settings.setting == key).first() if setting: setting.value = value setting.update()
[docs]def base_context(): """ Used to define global template values Returns ------- dict copy of dictionary """ theme_dir = os.path.join( current_app.config["BASE_DIR"], "themes", get_setting("ACTIVE_FRONT_THEME"), ) info_path = os.path.join(theme_dir, "info.json") with open(info_path) as f: info_data = json.load(f) APP_NAME = get_setting("APP_NAME") SECTION_NAME = get_setting("SECTION_NAME") SECTION_ITEMS = get_setting("SECTION_ITEMS") ACTIVE_FRONT_THEME = get_setting("ACTIVE_FRONT_THEME") ACTIVE_FRONT_THEME_VERSION = info_data["version"] ACTIVE_FRONT_THEME_STYLES_URL = url_for( "resource.active_theme_css", active_theme=ACTIVE_FRONT_THEME, v=ACTIVE_FRONT_THEME_VERSION, ) base_context = { "APP_NAME": APP_NAME, "SECTION_NAME": SECTION_NAME, "SECTION_ITEMS": SECTION_ITEMS, "ACTIVE_FRONT_THEME": ACTIVE_FRONT_THEME, "ACTIVE_FRONT_THEME_VERSION": ACTIVE_FRONT_THEME_VERSION, "ACTIVE_FRONT_THEME_STYLES_URL": ACTIVE_FRONT_THEME_STYLES_URL, } return base_context.copy()