Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #-*- coding: utf-8 -*-
- from Products.Five import BrowserView
- from Products.CMFCore.utils import getToolByName
- import simplejson as json
- from operator import itemgetter
- from Products.CMFPlone import Batch
- class BlogsJson(BrowserView):
- def __call__(self):
- blogs = self.__blogs()
- dic = {
- 'items_length':len(blogs),
- 'items': [self.__blogs2dict(n) for n in blogs],
- }
- return json.dumps(dic)
- def __blogs(self):
- portal_catalog = getToolByName(self,'portal_catalog')
- dic = {
- 'portal_type' : 'Blog',
- 'path' : "/".join(self.context.getPhysicalPath()),
- 'sort_on' : "effective",
- 'sort_order': 'reverse',
- 'review_state' : 'published',
- }
- portal_catalog(sort='Creation')
- return portal_catalog(**dic)
- def __blogs2dict(self,brain):
- dic = {}
- try:
- obj = brain.getObject()
- #import pdb; pdb.set_trace()
- url_imagem = ""
- imagem = obj.getImage()
- if imagem:
- url_imagem = imagem.absolute_url()
- dic = {
- 'titulo' : obj.Title(),
- 'url':obj.absolute_url(),
- 'Descricao':obj.Description(),
- 'url_imagem':url_imagem,
- 'Criado':obj.CreationDate()
- }
- except Exception,e:
- print "Error: %s" % e
- return dic
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement