def feedparser_render(url, *args, **kwargs):
    """
    Render a feed and return its builded html
    
    Usage: ::
    
        {% feedparser_render 'http://localhost/sample.xml' %}
    
    Or with all accepted arguments: ::
    
        {% feedparser_render 'http://localhost/sample.xml' renderer='CustomRenderer' template='foo/custom.html' expiration=3600 %}
    """
    renderer_name = kwargs.get('renderer', 'basic')
    renderer_template = kwargs.get('template', None)
    expiration = kwargs.get('expiration', 0)
    
    renderer = get_feed_renderer(settings.FEED_RENDER_ENGINES, renderer_name)
    return renderer().render(url, template=renderer_template, expiration=expiration)
 def render(self, context, instance, placeholder):
     """
     Build feed context using given paramaters and let the plugin render 
     itself with right context
     """
     # Adjust template to the given one
     self.render_template = instance.template
     
     context.update({
         'instance': instance,
     })
     
     renderer = get_feed_renderer(settings.FEED_RENDER_ENGINES, instance.renderer)
     feed_context = renderer().get_context(
         instance.url,
         expiration=instance.expiration,
     )
     context.update(feed_context)
     
     return context
def feedparser_render(url, *args, **kwargs):
    """
    Render a feed and return its builded html
    
    Usage: ::
    
        {% feedparser_render 'http://localhost/sample.xml' %}
    
    Or with all accepted arguments: ::
    
        {% feedparser_render 'http://localhost/sample.xml' renderer='CustomRenderer' template='foo/custom.html' expiration=3600 %}
    """
    renderer_name = kwargs.get('renderer',
                               settings.FEED_DEFAULT_RENDERER_ENGINE)
    renderer_template = kwargs.get('template', None)
    expiration = kwargs.get('expiration', 0)

    renderer = get_feed_renderer(settings.FEED_RENDER_ENGINES, renderer_name)
    return renderer().render(url,
                             template=renderer_template,
                             expiration=expiration)
Example #4
0
    def render(self, context, instance, placeholder):
        """
        Build feed context using given paramaters and let the plugin render 
        itself with right context
        """
        # Adjust template to the given one
        self.render_template = instance.template

        context.update({
            'instance': instance,
        })

        renderer = get_feed_renderer(settings.FEED_RENDER_ENGINES,
                                     instance.renderer)
        feed_context = renderer().get_context(
            instance.url,
            expiration=instance.expiration,
        )
        context.update(feed_context)

        return context