comparison libervia/web/pages/photos/page_meta.py @ 1518:eb00d593801d

refactoring: rename `libervia` to `libervia.web` + update imports following backend changes
author Goffi <goffi@goffi.org>
date Fri, 02 Jun 2023 16:49:28 +0200
parents libervia/pages/photos/page_meta.py@106bae41f5c8
children
comparison
equal deleted inserted replaced
1517:b8ed9726525b 1518:eb00d593801d
1 #!/usr/bin/env python3
2
3
4 from libervia.web.server.constants import Const as C
5 from twisted.internet import defer
6 from libervia.backend.core.i18n import _
7 from libervia.backend.core.log import getLogger
8
9 log = getLogger(__name__)
10
11 name = "photos"
12 access = C.PAGES_ACCESS_PROFILE
13 template = "photo/discover.html"
14
15
16 @defer.inlineCallbacks
17 def prepare_render(self, request):
18 profile = self.get_profile(request)
19 template_data = request.template_data
20 namespace = self.host.ns_map["fis"]
21 if profile is not None:
22 try:
23 interests = yield self.host.bridge_call(
24 "interests_list", "", "", namespace, profile)
25 except Exception:
26 log.warning(_("Can't get interests list for {profile}").format(
27 profile=profile))
28 else:
29 # we only want photo albums
30 filtered_interests = []
31 for interest in interests:
32 if interest.get('subtype') != 'photos':
33 continue
34 path = interest.get('path', '')
35 path_args = [p for p in path.split('/') if p]
36 interest["url"] = self.get_sub_page_url(
37 request,
38 "photos_album",
39 interest['service'],
40 *path_args
41 )
42 filtered_interests.append(interest)
43
44 template_data['interests'] = filtered_interests
45
46 template_data["url_photos_new"] = self.get_sub_page_url(request, "photos_new")
47
48
49 @defer.inlineCallbacks
50 def on_data_post(self, request):
51 jid_ = self.get_posted_data(request, "jid")
52 url = self.get_page_by_name("photos_album").get_url(jid_)
53 self.http_redirect(request, url)