def render(self, context): try: template_name = self.template_name.resolve(context) theme = context['THEME'] theme_template = get_theme_template(template_name, theme=theme) try: t = get_template(theme_template) except TemplateDoesNotExist: t = get_default_template(template_name) return t.render(context) except: if settings.TEMPLATE_DEBUG: raise return ''
def render(self, context): theme = context['THEME'] theme_template = get_theme_template(self.template_path, theme=theme) try: try: t = get_template(theme_template) except TemplateDoesNotExist: t = get_default_template(self.template_path) self.template = t except: if settings.TEMPLATE_DEBUG: raise self.template = None if self.template: return self.template.render(context) else: return ''
def get_parent(self, context): if self.parent_name_expr: self.parent_name = self.parent_name_expr.resolve(context) parent = self.parent_name if not parent: error_msg = "Invalid template name in 'extends' tag: %r." % parent if self.parent_name_expr: error_msg += " Got this from the '%s' variable." % self.parent_name_expr.token raise TemplateSyntaxError(error_msg) if hasattr(parent, 'render'): return parent # parent is a Template object theme = context['THEME'] theme_template = get_theme_template(parent, theme=theme) try: template = get_template(theme_template) except TemplateDoesNotExist: #to be sure that we not are loading the active theme's template template = get_default_template(parent) return template
def render(self, context): # If not a user or not an admin, don't return the form. if not isinstance(context['user'], User): return '' if not is_admin(context['user']): return '' try: setting_name = Variable(self.setting_name) setting_name = setting_name.resolve(context) except: setting_name = self.setting_name full_setting_name = ''.join(['module_theme_',setting_name]).upper() try: setting_value = Variable(full_setting_name) setting_value = setting_value.resolve(context) setting_value = setting_value.replace('.html','') except: setting_value = None settings_list = Setting.objects.filter(scope='module', scope_category='theme', name=setting_name) settings_value_list = Setting.objects.filter(scope='template', scope_category=setting_value) context['setting_name'] = setting_name context['setting_value'] = setting_value context['settings_value_list'] = settings_value_list context['scope_category'] = 'theme' context['setting_form'] = build_settings_form(context['user'], settings_list)() context['setting_value_form'] = build_settings_form(context['user'], settings_value_list)() template_name = 'theme_includes/setting_edit_form.html' try: theme = context['THEME'] try: t = get_template("%s/templates/%s"%(theme,template_name)) except TemplateDoesNotExist: #load the true default template directly to be sure #that we are not loading the active theme's template t = get_default_template(template_name) return t.render(context) except: if settings.TEMPLATE_DEBUG: raise return ''
def render(self, context): context['setting_name'] = unicode(self.template_name).replace('MODULE_THEME_','').lower() try: setting_value = self.template_name.resolve(context) except VariableDoesNotExist: setting_value = None if setting_value: # First try to render this as a box user = AnonymousUser() if 'user' in context: if isinstance(context['user'], User): user = context['user'] try: filters = get_query_filters(user, 'boxes.view_box') box = Box.objects.filter(filters).filter(pk=setting_value) context['box'] = box[0] template = get_template('theme_includes/box.html') return template.render(context) except: # Otherwise try to render a template try: template_name = os.path.join('theme_includes',setting_value) theme = context['THEME'] theme_template = get_theme_template(template_name, theme=theme) try: t = get_template(theme_template) except TemplateDoesNotExist: t = get_default_template(template_name) return t.render(context) except: if settings.TEMPLATE_DEBUG: raise return '' else: return ''