from patch.include import *
from tqdm import tqdm
from cmf.system_data import scaffold_html_schemes

@app_context(commit=True)
def sdhtmlscheme():
    """
    Для тестирования патча: ( cd /opt/eva-app; python3 -m patch.202401191218_sdhtmlscheme )
    Здесь можно работать с моделями через models.CmfTask и т.д.
    Для прогрессбара используйте:
    for task in tqdm(models.CmfTask.list()):
        ...
    """
    print('Запуск патча sdhtmlscheme')

    with cmfutil.disable_acl(), cmfutil.disable_notify():
        scaffold_html_schemes()

    global_settings = models.CmfGlobalSettings.get(id=f"{g.global_settings.id}", fields=['sd_html_scheme'])
    if not global_settings['sd_html_scheme']:
        sd_custom = models.CmfHtmlScheme.get(code='sd_default_scheme')
        global_settings.sd_html_scheme = sd_custom
        global_settings.save()

if __name__ == "__main__":
    sdhtmlscheme()
