def action_buttons(self): actions = [LinkButton(url=self.remove_view_uri, content=get_icon(IconEnum.WINDOW_CLOSE), color=ButtonColorEnum.DANGER, tooltip=_("Cancle this task"), )] if self.error_report: actions.append(LinkButton(url=self.error_report_uri, content=get_icon(IconEnum.CSW), color=ButtonColorEnum.WARNING, tooltip=_("Download the error report as text file."), )) return actions
def get_actions(self): return [LinkButton(url=self.get_edit_view_url(), content=Tag(tag='i', attrs={"class": [IconEnum.EDIT.value]}).render(), color=ButtonColorEnum.WARNING, size=ButtonSizeEnum.SMALL, tooltip=_l(f"Edit subscription"), ), LinkButton(url=self.get_delete_view_url(), content=Tag(tag='i', attrs={"class": [IconEnum.DELETE.value]}).render(), color=ButtonColorEnum.DANGER, size=ButtonSizeEnum.SMALL, tooltip=_l(f"Delete subscription"), )]
def get_actions(self, request: HttpRequest): actions = [] if not self.is_permission_group: edit_icon = Tag(tag='i', attrs={"class": [IconEnum.EDIT.value]}).render() st_edit_text = Tag(tag='div', attrs={"class": ['d-lg-none']}, content=edit_icon).render() gt_edit_text = Tag(tag='div', attrs={"class": ['d-none', 'd-lg-block']}, content=edit_icon + _(' Edit').__str__()).render() actions.append(LinkButton(url=self.edit_view_uri, content=st_edit_text + gt_edit_text, color=ButtonColorEnum.WARNING, tooltip=_(f"Edit <strong>{self.name}</strong>"), needs_perm=PermissionEnum.CAN_EDIT_GROUP.value)) delete_icon = Tag(tag='i', attrs={"class": [IconEnum.DELETE.value]}).render() st_delete_text = Tag(tag='div', attrs={"class": ['d-lg-none']}, content=delete_icon).render() gt_delete_text = Tag(tag='div', attrs={"class": ['d-none', 'd-lg-block']}, content=delete_icon + _(' Delete').__str__()).render() actions.append(LinkButton(url=self.remove_view_uri, content=st_delete_text + gt_delete_text, color=ButtonColorEnum.DANGER, tooltip=_(f"Remove <strong>{self.name}</strong>"), needs_perm=PermissionEnum.CAN_DELETE_GROUP.value)) if request.user not in self.user_set.all(): add_user_icon = Tag(tag='i', attrs={"class": [IconEnum.USER_ADD.value]}).render() st_add_user_text = Tag(tag='div', attrs={"class": ['d-lg-none']}, content=add_user_icon).render() gt_add_user_text = Tag(tag='div', attrs={"class": ['d-none', 'd-lg-block']}, content=delete_icon + _(' become member').__str__()).render() actions.append(LinkButton(url=f"{reverse('structure:group_invitation_request_new')}?group={self.pk}&user={request.user.id}", content=st_add_user_text + gt_add_user_text, color=ButtonColorEnum.SUCCESS, tooltip=_(f"Become member of <strong>{self.name}</strong>"))) elif self.user_set.count() > 1: from MrMap.utils import signal_last groups_querystring = "groups" groups_excluded_self = request.user.groups.exclude(pk=self.pk) if groups_excluded_self: groups_querystring = "" for is_last_element, group in signal_last(groups_excluded_self): if is_last_element: groups_querystring += f"groups={group.pk}" else: groups_querystring += f"groups={group.pk}&" leave_icon = Tag(tag='i', attrs={"class": [IconEnum.USER_REMOVE.value]}).render() st_leave_text = Tag(tag='div', attrs={"class": ['d-lg-none']}, content=leave_icon).render() gt_leave_text = Tag(tag='div', attrs={"class": ['d-none', 'd-lg-block']}, content=delete_icon + _(' leave group').__str__()).render() actions.append(LinkButton( url=f"{reverse('edit_profile')}?{groups_querystring}", content=st_leave_text + gt_leave_text, color=ButtonColorEnum.SUCCESS, tooltip=_(f"Become member of <strong>{self.name}</strong>"))) return actions
def show_pending_requests(self): icon = Tag(tag='i', attrs={ "class": [IconEnum.PUBLISHERS.value] }).render() count = Badge( content=f" {PublishRequest.objects.filter(group=self).count()}", color=BadgeColorEnum.SECONDARY).render() st_text = Tag(tag='div', attrs={ "class": ['d-lg-none'] }, content=icon + count).render() gt_text = Tag(tag='div', attrs={ "class": ['d-none', 'd-lg-block'] }, content=icon + _(' pending requests').__str__() + count).render() return LinkButton( url= f"{reverse('structure:publish_request_overview')}?group={self.pk}", content=f"{st_text}{gt_text}", color=ButtonColorEnum.INFO, tooltip=_(f"see pending requests for {self}"), needs_perm=PermissionEnum.CAN_REQUEST_TO_BECOME_PUBLISHER.value)
def get_add_action(cls): icon = Tag(tag='i', attrs={"class": [IconEnum.ADD.value]}).render() st_text = Tag(tag='div', attrs={"class": ['d-lg-none']}, content=icon).render() gt_text = Tag(tag='div', attrs={"class": ['d-none', 'd-lg-block']}, content=icon + _(' new group invitation').__str__()).render() return LinkButton(content=st_text + gt_text, color=ButtonColorEnum.SUCCESS, url=reverse('structure:group_invitation_request_new'), needs_perm=PermissionEnum.CAN_ADD_USER_TO_GROUP.value)
def get_add_action(cls): icon = Tag(tag='i', attrs={"class": [IconEnum.ADD.value]}).render() st_text = Tag(tag='div', attrs={"class": ['d-lg-none']}, content=icon).render() gt_text = Tag(tag='div', attrs={"class": ['d-none', 'd-lg-block']}, content=icon + _(' new publisher request').__str__()).render() return LinkButton(content=st_text + gt_text, color=ButtonColorEnum.SUCCESS, url=reverse('structure:publish_request_new'), needs_perm=PermissionEnum.CAN_REQUEST_TO_BECOME_PUBLISHER.value)
def new_publisher_request_action(self): add_icon = Tag(tag='i', attrs={"class": [IconEnum.ADD.value]}).render() st_text = Tag(tag='div', attrs={"class": ['d-lg-none']}, content=add_icon).render() gt_text = Tag(tag='div', attrs={"class": ['d-none', 'd-lg-block']}, content=add_icon + _(' become publisher').__str__()).render() return LinkButton(url=self.new_publisher_requesst_uri, content=st_text + gt_text, color=ButtonColorEnum.SUCCESS, tooltip=_("Become rights to publish"), needs_perm=PermissionEnum.CAN_REQUEST_TO_BECOME_PUBLISHER.value)
def get_actions(self): add_icon = Tag(tag='i', attrs={"class": [IconEnum.ADD.value]}).render() st_pub_text = Tag(tag='div', attrs={"class": ['d-lg-none']}, content=add_icon).render() gt_pub_text = Tag(tag='div', attrs={"class": ['d-none', 'd-lg-block']}, content=add_icon + _(' become publisher').__str__()).render() edit_icon = Tag(tag='i', attrs={"class": [IconEnum.EDIT.value]}).render() st_edit_text = Tag(tag='div', attrs={"class": ['d-lg-none']}, content=edit_icon).render() gt_edit_text = Tag(tag='div', attrs={"class": ['d-none', 'd-lg-block']}, content=edit_icon + _(' edit').__str__()).render() actions = [ LinkButton(url=f"{reverse('structure:publish_request_new',)}?organization={self.id}", content=st_pub_text + gt_pub_text, color=ButtonColorEnum.SUCCESS, size=ButtonSizeEnum.SMALL, tooltip=format_html( _(f"Become publisher for organization <strong>{self.organization_name} [{self.id}]</strong>")), tooltip_placement=TooltipPlacementEnum.LEFT, needs_perm=PermissionEnum.CAN_REQUEST_TO_BECOME_PUBLISHER.value), LinkButton(url=self.edit_view_uri, content=st_edit_text + gt_edit_text, color=ButtonColorEnum.WARNING, size=ButtonSizeEnum.SMALL, tooltip=format_html(_(f"Edit <strong>{self.organization_name} [{self.id}]</strong> organization")), tooltip_placement=TooltipPlacementEnum.LEFT, needs_perm=PermissionEnum.CAN_EDIT_ORGANIZATION.value), ] if not self.is_auto_generated: remove_icon = Tag(tag='i', attrs={"class": [IconEnum.DELETE.value]}).render() st_remove_text = Tag(tag='div', attrs={"class": ['d-lg-none']}, content=remove_icon).render() gt_remove_text = Tag(tag='div', attrs={"class": ['d-none', 'd-lg-block']}, content=remove_icon + _(' remove').__str__()).render() actions.append(LinkButton(url=self.remove_view_uri, content=st_remove_text + gt_remove_text, color=ButtonColorEnum.DANGER, size=ButtonSizeEnum.SMALL, tooltip=format_html(_(f"Remove <strong>{self.organization_name} [{self.id}]</strong> organization")), tooltip_placement=TooltipPlacementEnum.LEFT, needs_perm=PermissionEnum.CAN_DELETE_ORGANIZATION.value)) return actions
def get_add_action(cls): return LinkButton(content=Tag(tag='i', attrs={"class": [IconEnum.ADD.value]}) + _(' New run').__str__(), color=ButtonColorEnum.SUCCESS, url=reverse('monitoring:run_new'), needs_perm=PermissionEnum.CAN_RUN_MONITORING.value)
def get_add_action(cls): return LinkButton(content=get_icon(IconEnum.ADD) + _(' New group').__str__(), color=ButtonColorEnum.SUCCESS, url=reverse('structure:group_new'), needs_perm=PermissionEnum.CAN_EDIT_GROUP.value)