def get_theme(): request = get_current_request() if request: theme = request.session.get('theme', get_setting('module', 'theme_editor', 'theme')) else: theme = get_setting('module', 'theme_editor', 'theme') return theme
def get_template_sources(self, template_name, template_dirs=None): """Return the absolute paths to "template_name", when appended to the selected theme directory in THEMES_DIR. Any paths that don't lie inside one of the template dirs are excluded from the result set, for security reasons. """ theme_templates = [] current_request = get_current_request() if current_request and current_request.mobile: theme_templates.append(os.path.join(get_theme_root(), 'mobile')) theme_templates.append(os.path.join(get_theme_root(), 'templates')) for template_path in theme_templates: try: if settings.USE_S3_THEME: yield os.path.join(template_path, template_name) else: yield safe_join(template_path, template_name) except UnicodeDecodeError: # The template dir name was a bytestring that wasn't valid UTF-8. raise except ValueError: # The joined path was located outside of this particular # template_dir (it might be inside another one, so this isn't # fatal). pass
def get_theme(): request = get_current_request() if request: theme = request.session.get("theme", get_setting("module", "theme_editor", "theme")) else: theme = get_setting("module", "theme_editor", "theme") return theme
def get_template_sources(self, template_name, template_dirs=None): """Return the absolute paths to "template_name", when appended to the selected theme directory in THEMES_DIR. Any paths that don't lie inside one of the template dirs are excluded from the result set, for security reasons. """ theme_templates = [] current_request = get_current_request() if not settings.DEBUG: # this is needed when the theme is changed self.theme_root = get_theme_root() if current_request and current_request.mobile: theme_templates.append(os.path.join(self.theme_root, 'mobile')) theme_templates.append(os.path.join(self.theme_root, 'templates')) for template_path in theme_templates: try: if settings.USE_S3_THEME: yield os.path.join(template_path, template_name) else: yield safe_join(template_path, template_name) except UnicodeDecodeError: # The template dir name was a bytestring that wasn't valid UTF-8. raise except ValueError: # The joined path was located outside of this particular # template_dir (it might be inside another one, so this isn't # fatal). pass