Mercurial > libervia-web
diff src/pages/events/page_meta.py @ 1111:4d1c4bd4931a
pages (events): added root, admin, new, rsvp and view pages
author | Goffi <goffi@goffi.org> |
---|---|
date | Thu, 21 Jun 2018 01:19:57 +0200 |
parents | |
children | cdd389ef97bc |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/pages/events/page_meta.py Thu Jun 21 01:19:57 2018 +0200 @@ -0,0 +1,45 @@ +#!/usr/bin/env python2.7 +# -*- coding: utf-8 -*- + +from libervia.server.constants import Const as C +from twisted.internet import defer +from sat.core.i18n import _ +from sat.core.log import getLogger +log = getLogger('pages/ticket') +"""ticket handling pages""" + +name = u'events' +access = C.PAGES_ACCESS_PUBLIC +template = u"event/overview.html" + + +@defer.inlineCallbacks +def parse_url(self, request): + profile = self.getProfile(request) + template_data = request.template_data + template_data[u'url_event_new'] = self.getSubPageURL(request, 'event_new') + if profile is not None: + try: + events = yield self.host.bridgeCall("eventsList", "", "", profile) + except Exception: + log.warning(_(u"Can't get events list for {profile}").format(profile=profile)) + else: + own_events = [] + other_events = [] + for event in events: + if C.bool(event.get('creator', C.BOOL_FALSE)): + own_events.append(event) + event['url'] = self.getSubPageURL(request, + u'event_admin', + event.get('service',''), + event.get('node',''), + event.get('item')) + else: + other_events.append(event) + event['url'] = self.getSubPageURL(request, + u'event_rsvp', + event.get('service',''), + event.get('node',''), + event.get('item')) + + template_data[u'events'] = own_events + other_events