def _get_loaders(self): """this method is not used over-ridden function _get_loaders that creates the loader for the skin templates """ loaders = list() skin_dirs = utils.get_available_skins(selected = self.skin).values() template_dirs = [os.path.join(skin_dir, 'templates') for skin_dir in skin_dirs] loaders.append(jinja_loaders.FileSystemLoader(template_dirs)) return loaders
def load_skins(language_code): skins = dict() for skin_name in utils.get_available_skins(): skin_code = skin_name + '-' + language_code skins[skin_code] = SkinEnvironment( skin=skin_name, extensions=['jinja2.ext.i18n'], globals={'settings': askbot_settings}) skins[skin_code].set_language(language_code) return skins
def load_skins(): skins = dict() for skin_name in utils.get_available_skins(): skins[skin_name] = SkinEnvironment( skin = skin_name, extensions=['jinja2.ext.i18n',] ) skins[skin_name].set_language(django_settings.LANGUAGE_CODE) #from askbot.templatetags import extra_filters_jinja as filters #skins[skin_name].filters['media'] = filters.media return skins
def load_skins(): skins = dict() for skin_name in utils.get_available_skins(): skins[skin_name] = SkinEnvironment(skin=skin_name, extensions=[ 'jinja2.ext.i18n', ]) skins[skin_name].set_language(django_settings.LANGUAGE_CODE) #from askbot.templatetags import extra_filters_jinja as filters #skins[skin_name].filters['media'] = filters.media return skins
def _get_loaders(self): """over-ridden function _get_loaders that creates the loader for the skin templates """ loaders = list() skin_name = askbot_settings.ASKBOT_DEFAULT_SKIN skin_dirs = utils.get_available_skins(selected=skin_name).values() template_dirs = [os.path.join(skin_dir, "templates") for skin_dir in skin_dirs] loaders.append(jinja_loaders.FileSystemLoader(template_dirs)) return loaders
def load_skins(language_code): skins = dict() for skin_name in utils.get_available_skins(): skin_code = skin_name + '-' + language_code skins[skin_code] = SkinEnvironment( skin = skin_name, extensions=['jinja2.ext.i18n',] ) skins[skin_code].set_language(language_code) #from askbot.templatetags import extra_filters_jinja as filters #skins[skin_name].filters['media'] = filters.media return skins
def load_skins(language_code): skins = dict() for skin_name in utils.get_available_skins(): skin_code = skin_name + '-' + language_code skins[skin_code] = SkinEnvironment( skin=skin_name, extensions=[ 'jinja2.ext.i18n', ], globals={'settings': askbot_settings}) skins[skin_code].set_language(language_code) #from askbot.templatetags import extra_filters_jinja as filters #skins[skin_name].filters['media'] = filters.media return skins
def load_skins(language_code): skins = dict() for skin_name in utils.get_available_skins(): skin_code = skin_name + '-' + language_code skins[skin_code] = SkinEnvironment( auto_reload=True, cache_size=0, skin = skin_name, extensions=['jinja2.ext.i18n',], globals={'settings': askbot_settings} ) skins[skin_code].set_language(language_code) #from askbot.templatetags import extra_filters_jinja as filters #skins[skin_name].filters['media'] = filters.media return skins
def factory(**options): # JINJA2_EXTENSIONS was a thing in Coffin. We keep it around because it # may be used in Askbot. Should think about deprecating its use. options["extensions"] = DEFAULT_EXTENSIONS \ + list(django_settings.JINJA2_EXTENSIONS) askbot_globals = { 'settings': askbot_settings, 'hasattr': hasattr, 'encode_jwt': encode_jwt } mother_of_all_loaders = options.pop('loader') skins = utils.get_available_skins() if askbot.is_multilingual() or HAS_ASKBOT_LOCALE_MIDDLEWARE: languages = list(dict(django_settings.LANGUAGES).keys()) else: languages = [django_settings.LANGUAGE_CODE] # create an environment for each skin and language we might serve # Jinja2 Environments know a concept called "overlays" which cries for # consideration here. It may greatly simplify loading templatetags ... all_combinations = [(name, lang) for name in skins for lang in languages] for name, lang in all_combinations: skin_basedir = utils.get_path_to_skin(name) options["skin"] = name options["language_code"] = lang options['loader'] = deepcopy(mother_of_all_loaders) options['loader'].searchpath = [f'{skin_basedir}/jinja2' ] + options['loader'].searchpath env = SkinEnvironment(**options) env.globals.update(askbot_globals) env.set_language(lang) load_templatetags() # give Django what it asked for default_sibling = SkinEnvironment.build_sibling_key( [askbot_settings.ASKBOT_DEFAULT_SKIN, get_language()]) return SkinEnvironment.siblings[default_sibling]
def load_skins(): skins = dict() for skin_name in utils.get_available_skins(): skins[skin_name] = SkinEnvironment(skin = skin_name) skins[skin_name].set_language(django_settings.LANGUAGE_CODE) return skins
def load_skins(): skins = dict() for skin_name in utils.get_available_skins(): skins[skin_name] = SkinEnvironment(skin=skin_name) skins[skin_name].set_language(django_settings.LANGUAGE_CODE) return skins