Mercurial > libervia-web
diff libervia/web/pages/merge-requests/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/merge-requests/page_meta.py@106bae41f5c8 |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/libervia/web/pages/merge-requests/page_meta.py Fri Jun 02 16:49:28 2023 +0200 @@ -0,0 +1,60 @@ +#!/usr/bin/env python3 + + +from libervia.web.server.constants import Const as C +from libervia.backend.tools.common import template_xmlui +from libervia.backend.tools.common import data_format +from libervia.backend.tools.common import data_objects +from libervia.backend.core.log import getLogger + +log = getLogger(__name__) + + +name = "merge-requests" +access = C.PAGES_ACCESS_PUBLIC +template = "list/overview.html" + + +def parse_url(self, request): + self.get_path_args(request, ["service", "node"], service="jid") + data = self.get_r_data(request) + service, node = data["service"], data["node"] + if node is None: + self.page_redirect("merge-requests_disco", request) + if node == "@": + node = data["node"] = "" + self.check_cache( + request, C.CACHE_PUBSUB, service=service, node=node, short="merge-requests" + ) + template_data = request.template_data + template_data["url_list_items"] = self.get_page_by_name("merge-requests").get_url( + service.full(), node + ) + template_data["url_list_new"] = self.get_sub_page_url(request, "merge-requests_new") + + +async def prepare_render(self, request): + data = self.get_r_data(request) + template_data = request.template_data + service, node = data["service"], data["node"] + profile = self.get_profile(request) or C.SERVICE_PROFILE + + merge_requests = data_format.deserialise( + await self.host.bridge_call( + "merge_requests_get", + service.full() if service else "", + node, + C.NO_LIMIT, + [], + "", + data_format.serialise({"labels_as_list": C.BOOL_TRUE}), + profile, + ) + ) + + template_data["list_items"] = [ + template_xmlui.create(self.host, x) for x in merge_requests['items'] + ] + template_data["on_list_item_click"] = data_objects.OnClick( + url=self.get_sub_page_url(request, "merge-requests_view") + "/{item.id}" + )