Mercurial > libervia-web
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) |