comparison libervia/pages/events/page_meta.py @ 1507:ae5158f3c420

pages (events): quick fix following changes in backend events
author Goffi <goffi@goffi.org>
date Fri, 07 Apr 2023 15:20:36 +0200
parents e3e303a30a74
children 106bae41f5c8
comparison
equal deleted inserted replaced
1506:ce879da7fcf7 1507:ae5158f3c420
1 #!/usr/bin/env python3 1 #!/usr/bin/env python3
2 2
3 3
4 from libervia.server.constants import Const as C
5 from twisted.internet import defer
6 from sat.core.i18n import _ 4 from sat.core.i18n import _
7 from sat.core.log import getLogger 5 from sat.core.log import getLogger
6 from sat.tools.common import data_format
7 from twisted.internet import defer
8
9 from libervia.server.constants import Const as C
8 10
9 log = getLogger(__name__) 11 log = getLogger(__name__)
10 12
11 13
12 name = "events" 14 name = "events"
13 access = C.PAGES_ACCESS_PUBLIC 15 access = C.PAGES_ACCESS_PUBLIC
14 template = "event/overview.html" 16 template = "event/overview.html"
15 17
16 18
17 @defer.inlineCallbacks 19 async def prepare_render(self, request):
18 def prepare_render(self, request):
19 profile = self.getProfile(request) 20 profile = self.getProfile(request)
20 template_data = request.template_data 21 template_data = request.template_data
21 template_data["url_event_new"] = self.getSubPageURL(request, "event_new") 22 template_data["url_event_new"] = self.getSubPageURL(request, "event_new")
22 if profile is not None: 23 if profile is not None:
23 try: 24 try:
24 events = yield self.host.bridgeCall("eventsList", "", "", profile) 25 events = data_format.deserialise(
26 await self.host.bridgeCall("eventsGet", "", "", [], "", profile),
27 type_check=list
28 )
25 except Exception as e: 29 except Exception as e:
26 log.warning(_("Can't get events list for {profile}: {reason}").format( 30 log.warning(_("Can't get events list for {profile}: {reason}").format(
27 profile=profile, reason=e)) 31 profile=profile, reason=e))
28 else: 32 else:
29 own_events = [] 33 own_events = []
32 if C.bool(event.get("creator", C.BOOL_FALSE)): 36 if C.bool(event.get("creator", C.BOOL_FALSE)):
33 own_events.append(event) 37 own_events.append(event)
34 event["url"] = self.getSubPageURL( 38 event["url"] = self.getSubPageURL(
35 request, 39 request,
36 "event_admin", 40 "event_admin",
37 event.get("service", ""),
38 event.get("node", ""),
39 event.get("item"),
40 ) 41 )
41 else: 42 else:
42 other_events.append(event) 43 other_events.append(event)
43 event["url"] = self.getSubPageURL( 44 event["url"] = self.getSubPageURL(
44 request, 45 request,
45 "event_rsvp", 46 "event_rsvp",
46 event.get("service", ""),
47 event.get("node", ""),
48 event.get("item"),
49 ) 47 )
50 if "thumb_url" not in event and "image" in event: 48 if "thumb_url" not in event and "image" in event:
51 event["thumb_url"] = event["image"] 49 event["thumb_url"] = event["image"]
52 50
53 template_data["events"] = own_events + other_events 51 template_data["events"] = own_events + other_events