class FFNode(template.Node): def __init__(self, action, template_name, **kwargs): self.template_name = template_name self.options = kwargs self.ff = FriendFeed() self.render = getattr(self,action) def user_feed(self, context): username_var = template.Variable(self.options['username']) username = username_var.resolve(context) try: items = self.ff.fetch_user_feed(username)['entries'] items_requested = int(self.options.get('num_items', len(items))) num_items = min(items_requested, len(items)) context['items'] = items[:num_items] context['username'] = username except URLError: context['items'] = [] context['username'] = username return render_to_string(self.template_name, context)
def __init__(self, action, template_name, **kwargs): self.template_name = template_name self.options = kwargs self.ff = FriendFeed() self.render = getattr(self,action)