Exemplo n.º 1
0
def content_list(request, area='content', model=None, filters=[], tpl='content_list', format='html', extra_context={}, order=None, paginate=True):
  items = model.all()
  
  if order is not None:
    items.order(order)

  for filter in filters:
    try:
      items = filter.filter(items)
    except AttributeError:
      items = []
      
  if paginate:
    items = util.paginate(request, items, ENTRIES_PER_PAGE)
  
  c = template.RequestContext(request, locals())
  c.update(extra_context)

  if not tpl.endswith(('html', 'json', 'atom', 'rss', 'json')):
    tpl = '%s.%s' % (tpl, format)

  if format == 'atom':
    return render_to_response(tpl, c,
                              mimetype='application/atom+xml; charset=utf-8')
  elif format == 'rss':
    return render_to_response(tpl, c,
                              mimetype='application/rss+xml; charset=utf-8')
  elif format == 'json':
    if paginate:
      items = items.object_list
    return util.HttpJsonResponse(serializers.serialize('json', items), request)
  
  return render_to_response(tpl, c)
Exemplo n.º 2
0
  def list(self, request, tpl='content_list', format='html', filters=[], order=None, paginate=True, per_page=ENTRIES_PER_PAGE):
    objects = self._get_items(filters, order)

    if paginate:
      objects = util.paginate(request, objects, per_page)

    context = {"items":objects, "paginate":paginate}
    return self._get_response(request, context, tpl, format)
Exemplo n.º 3
0
def page_front(request):
  area="front"
  topnews = PostItem.get_latest()
  words_num = 30
  page = "front"

  items = util.paginate(request, PostItem.get_latest())
  
  c = template.RequestContext(request, locals())
  t = loader.get_template('front.html')
  return http.HttpResponse(t.render(c))
Exemplo n.º 4
0
def roles(request):
  if request.method == 'POST':
    action = request.POST.get('action', None)
    if action == 'role_delete':
      _ref = Role.get(uuid=request.POST.get('role_uuid'))
      _ref.delete()
    elif action == 'role_create':
      _ref = Role(name=request.POST.get('role_name'))
      _ref.put()

  area = "users"
  items = util.paginate(request, Role.all())

  c = template.RequestContext(request, locals())
  _flag_as_admin(c)
  return render_to_response('roles.html', c)
Exemplo n.º 5
0
 def handle(self):
   self.items = self.filter()
   self.items = util.paginate(self.request, self.items, self.per_age)
   self.update_context({"items":self.items})
   return self.get_response()