Advertisement
Guest User

Untitled

a guest
Apr 27th, 2015
200
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.39 KB | None | 0 0
  1. #-*- coding: utf-8 -*-
  2.  
  3. from Products.Five import BrowserView
  4. from Products.CMFCore.utils import getToolByName
  5.  
  6. import simplejson as json
  7. from operator import itemgetter
  8. from Products.CMFPlone import Batch
  9.  
  10.  
  11. class BlogsJson(BrowserView):
  12.     def __call__(self):
  13.         blogs = self.__blogs()
  14.         dic = {
  15.             'items_length':len(blogs),
  16.             'items': [self.__blogs2dict(n) for n in blogs],
  17.         }
  18.     return json.dumps(dic)
  19.  
  20.  
  21.     def __blogs(self):
  22.         portal_catalog = getToolByName(self,'portal_catalog')
  23.         dic = {
  24.             'portal_type' : 'Blog',
  25.             'path' : "/".join(self.context.getPhysicalPath()),
  26.             'sort_on' : "effective",
  27.             'sort_order': 'reverse',
  28.             'review_state' : 'published',
  29.         }
  30.     portal_catalog(sort='Creation')
  31.         return portal_catalog(**dic)
  32.  
  33.     def __blogs2dict(self,brain):
  34.         dic = {}
  35.         try:
  36.             obj = brain.getObject()
  37.         #import pdb; pdb.set_trace()
  38.         url_imagem = ""
  39.        
  40.         imagem = obj.getImage()
  41.         if imagem:
  42.             url_imagem = imagem.absolute_url()
  43.  
  44.             dic =  {
  45.                 'titulo' : obj.Title(),
  46.         'url':obj.absolute_url(),
  47.         'Descricao':obj.Description(),
  48.         'url_imagem':url_imagem,
  49.         'Criado':obj.CreationDate()
  50.             }
  51.  
  52.  
  53.         except Exception,e:
  54.             print "Error: %s" % e
  55.  
  56.         return dic
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement