Mercurial > libervia-web
view libervia/pages/merge-requests/disco/page_meta.py @ 1140:e1a953512f72
pages (blog/view): pagination improvments:
- getBlogData renamed to getBlogItems and only returns BlogItems objects, blog_data are not returned anymore as they are already included in the metadata attribute
- desired page size can be specified using "page_max" key in request data
- better use of RSM data to know if we should set previous or next page URLs
- don't display anymore the first page is no items are found, this was confusing and not really making sense
author | Goffi <goffi@goffi.org> |
---|---|
date | Fri, 11 Jan 2019 16:45:01 +0100 |
parents | 28e3eb3bb217 |
children | 29eb15062416 |
line wrap: on
line source
#!/usr/bin/env python2.7 # -*- coding: utf-8 -*- from libervia.server.constants import Const as C from twisted.words.protocols.jabber import jid from sat.core.log import getLogger log = getLogger("pages/ticket") """ticket handling pages""" name = u"merge-requests_disco" access = C.PAGES_ACCESS_PUBLIC template = u"merge-request/discover.html" def prepare_render(self, request): mr_handlers_config = self.host.options["mr_handlers_json"] if mr_handlers_config: handlers = request.template_data["mr_handlers"] = [] try: for handler_data in mr_handlers_config: service = handler_data[u"service"] node = handler_data[u"node"] name = handler_data[u"name"] url = self.getPageByName(u"merge-requests").getURL(service, node) handlers.append({u"name": name, u"url": url}) except KeyError as e: log.warning(u"Missing field in mr_handlers_json: {msg}".format(msg=e)) except Exception as e: log.warning(u"Can't decode mr handlers: {msg}".format(msg=e)) def on_data_post(self, request): jid_str = self.getPostedData(request, u"jid") try: jid_ = jid.JID(jid_str) except RuntimeError: self.pageError(request, C.HTTP_BAD_REQUEST) # for now we just use default node url = self.getPageByName(u"merge-requests").getURL(jid_.full(), u"@") self.HTTPRedirect(request, url)