Mercurial > libervia-web
view libervia/pages/photos/new/page_meta.py @ 1297:999dccf0093e
browser: new bridge module to access restricted bridge from browser
author | Goffi <goffi@goffi.org> |
---|---|
date | Fri, 19 Jun 2020 16:47:51 +0200 |
parents | 198605982d15 |
children | 3a1cb3c5702f |
line wrap: on
line source
#!/usr/bin/env python3 from libervia.server.constants import Const as C from twisted.internet import defer from sat.core.log import getLogger from sat.core.i18n import D_ from sat.tools.common import date_utils, data_format """creation of new events""" name = "photos_new" access = C.PAGES_ACCESS_PROFILE template = "photo/create.html" log = getLogger(__name__) async def on_data_post(self, request): request_data = self.getRData(request) profile = self.getProfile(request) name = self.getPostedData(request, "name").replace('/', '_') if profile is None: self.pageError(request, C.HTTP_BAD_REQUEST) fis_ns = self.host.ns_map["fis"] http_upload_ns = self.host.ns_map["http_upload"] entities_services, __, __ = await self.host.bridgeCall( "discoFindByFeatures", [fis_ns, http_upload_ns], [], False, True, False, False, False, profile ) try: fis_service = next(iter(entities_services)) except StopIteration: raise DataError(D_( "You server has no service to create a photo album, please ask your server" "administrator to add one")) await self.host.bridgeCall( "interestsRegisterFileSharing", fis_service, "photos", "", f"/albums/{name}", name, "", profile ) log.info(f"album {name} created") request_data["post_redirect_page"] = self.getPageByName("photos") defer.returnValue(C.POST_NO_CONFIRM)