Source code for cioxml2

"""CioXml2, a module for Chrysalio."""

from __future__ import annotations
from os.path import dirname, join

from pyramid.config import Configurator

from chrysalio.initialize import Initialize
from chrysalio.includes.modules.models import DBModule
from chrysalio.modules import Module
from chrysalio.scripts import ScriptRegistry
from .lib.i18n import _


# =============================================================================
[docs] def includeme(configurator: Configurator | ScriptRegistry): """Function to include module. :type configurator: pyramid.config.Configurator :param configurator: Object used to do configuration declaration within the application. """ # Registration Module.register(configurator, ModuleCioXml2) if not isinstance(configurator, Configurator): return # Routes configurator.include('cioxml2.routes') # Translation configurator.add_translation_dirs(join(dirname(__file__), 'Locale')) # Views static_dir = join(dirname(__file__), 'Static') Initialize(configurator).add_static_views(__package__, ( ('fonts', join(static_dir, 'Fonts')), ('css', join(static_dir, 'Css')), ('js', join(static_dir, 'Js')), ('images', join(static_dir, 'Images')), ('audios', join(static_dir, 'Audios')), ('videos', join(static_dir, 'Videos')))) configurator.scan('cioxml2.views')
# =============================================================================
[docs] class ModuleCioXml2(Module): """Class for CioXml2 module. :param str config_ini: Absolute path to the configuration file (e.g. development.ini). """ name = _('XML 2') implements = ( 'handler:xml', # DEPRECATED 'manager:xml', 'manager:cioset', 'manager:ciomemo', 'manager:cioarticle') dependencies = ('cioprocessor', 'ciowarehouse2') _DBModule = DBModule