Example #1
0
	def get(self, _, templates):
		templates = templates.split(",")
		response = {}

		for template in templates:
			try:
				view_name, view_method = template.split(".")
			except ValueError:
				if not template in self.allowed_templates:
					raise NotAcceptable("Template: {}".format(template))

				loader = Loader()
				name = "{}.html".format(template)
				template_body = loader.load_template_source(name)[0]

				response[template] = self.reformat_template(template_body)
			else:
				if view_name not in self.allowed_views.keys():
					raise NotAcceptable("View: {}".format(view_name))

				view = self.allowed_views[view_name]

				if view_name in self.allowed_methods.keys() and \
						view_method not in self.allowed_methods[view_name]:
					raise NotAcceptable("Method: {}.{}".format(view_name,
						view_method))

				views = getattr(view, view_method)()

				response[view_name] = views
				# response.update({"{}.{}".format(view_name, name): template_body\
				# 	for name, template_body in views.items()})

		return Response(response)
Example #2
0
    def get(self, _, templates):
        templates = templates.split(",")
        response = {}

        for template in templates:
            try:
                view_name, view_method = template.split(".")
            except ValueError:
                if not template in self.allowed_templates:
                    raise NotAcceptable("Template: {}".format(template))

                loader = Loader()
                name = "{}.html".format(template)
                template_body = loader.load_template_source(name)[0]

                response[template] = self.reformat_template(template_body)
            else:
                if view_name not in self.allowed_views.keys():
                    raise NotAcceptable("View: {}".format(view_name))

                view = self.allowed_views[view_name]

                if view_name in self.allowed_methods.keys() and \
                  view_method not in self.allowed_methods[view_name]:
                    raise NotAcceptable("Method: {}.{}".format(
                        view_name, view_method))

                views = getattr(view, view_method)()

                response[view_name] = views
                # response.update({"{}.{}".format(view_name, name): template_body\
                # 	for name, template_body in views.items()})

        return Response(response)
Example #3
0
def ssi_loader(context, filepath):
    try:
        loader = Loader()
        source, origin = loader.load_template_source(filepath)
        return source

    except Exception as e:
        return ''
Example #4
0
def get_template(templatefile, failmsg="no template filename supplied"):
    """
    Retrieve template source from the supplied filename
    """
    assert templatefile, "get_template: %s"%failmsg
    # Instantiate a template loader
    loader = Loader()
    # Source: actual source code read from template file
    # File path: absolute file path of template file
    source, file_path = loader.load_template_source(templatefile)
    return source
def get_template(templatefile, failmsg="no template filename supplied"):
    """
    Retrieve template source from the supplied filename
    """
    assert templatefile, "get_template: %s" % failmsg
    # Instantiate a template loader
    loader = Loader()
    # Source: actual source code read from template file
    # File path: absolute file path of template file
    source, file_path = loader.load_template_source(templatefile)
    return source
Example #6
0
def do_include_raw(parser, token):
    """Perform a raw template include.

    This means to include the template without parsing context, just dump the
    template in.

    Source: http://djangosnippets.org/snippets/1684/
    """
    bits = token.split_contents()
    if len(bits) != 2:
        excp_msg = ("%r tag takes one argument: the name of the template to "
                    "be included" % bits[0])
        raise template.TemplateSyntaxError(excp_msg)

    template_name = bits[1]
    if (template_name[0] in ('"', "'") and
        template_name[-1] == template_name[0]):
        template_name = template_name[1:-1]

    template_loader = Loader()
    source, path = template_loader.load_template_source(template_name)

    return template.TextNode(source)
Example #7
0
 def formfield_for_dbfield(self, db_field, **kwargs):
     if db_field.name == 'content':
         l = Loader()
         kwargs['initial'] = l.load_template_source('newsletters/mail/body/iw-newsletter.html')[0]
     return super(NewsletterAdmin, self).formfield_for_dbfield(db_field, **kwargs)
Example #8
0
 def template_source(self, template_name):
     source_loader = Loader()
     source, file_path = source_loader.load_template_source(template_name)
     return source