Пример #1
0
    def _show_action_cell(self, table, ident):
        table.cell(_("Actions"), css="buttons")

        edit_url = html.makeuri_contextless([
            ("mode", self._mode_type.edit_mode_name()),
            ("ident", ident),
        ])
        html.icon_button(edit_url,
                         _("Edit this %s") % self._mode_type.name_singular(),
                         "edit")

        clone_url = html.makeuri_contextless([
            ("mode", self._mode_type.edit_mode_name()),
            ("clone", ident),
        ])
        html.icon_button(clone_url,
                         _("Clone this %s") % self._mode_type.name_singular(),
                         "clone")

        delete_url = watolib.make_action_link([
            ("mode", self._mode_type.list_mode_name()),
            ("_action", "delete"),
            ("_delete", ident),
        ])
        html.icon_button(delete_url,
                         _("Delete this %s") % self._mode_type.name_singular(),
                         "delete")
Пример #2
0
    def _show_host_actions(self, host):
        html.icon_button(host.edit_url(), _("Edit the properties of this host"), "edit")
        if config.user.may("wato.rulesets"):
            html.icon_button(host.params_url(), _("View the rule based parameters of this host"),
                             "rulesets")

        if host.may('read'):
            if config.user.may("wato.services"):
                msg = _("Edit the services of this host, do a service discovery")
            else:
                msg = _("Display the services of this host")
            image = "services"
            if host.discovery_failed():
                image = "inventory_failed"
                msg += ". " + _(
                    "The service discovery of this host failed during a previous bulk service discovery."
                )
            html.icon_button(host.services_url(), msg, image)

        if not host.locked():
            if config.user.may("wato.edit_hosts") and config.user.may("wato.move_hosts"):
                self._show_move_to_folder_action(host)

            if config.user.may("wato.manage_hosts"):
                if config.user.may("wato.clone_hosts"):
                    html.icon_button(host.clone_url(), _("Create a clone of this host"), "insert")
                delete_url = watolib.make_action_link([("mode", "folder"),
                                                       ("_delete_host", host.name())])
                html.icon_button(delete_url, _("Delete this host"), "delete")
Пример #3
0
    def _show_subfolder_delete_button(self, subfolder):
        msg = _(
            "Do you really want to delete the folder %s?") % subfolder.title()
        if not config.wato_hide_filenames:
            msg += _(" Its directory is <tt>%s</tt>."
                     ) % subfolder.filesystem_path()
        num_hosts = subfolder.num_hosts_recursively()
        if num_hosts:
            msg += _(
                " The folder contains <b>%d</b> hosts, which will also be deleted!"
            ) % num_hosts

        html.icon_button(
            make_confirm_link(
                url=watolib.make_action_link([("mode", "folder"),
                                              ("_delete_folder",
                                               subfolder.name())]),
                message=msg,
            ),
            _("Delete this folder"),
            "delete",
            id_='delete_' + subfolder.name(),
            cssclass='delete',
            style='display:none',
        )
Пример #4
0
 def _show_subfolder_delete_button(self, subfolder):
     html.icon_button(
         watolib.make_action_link([("mode", "folder"), ("_delete_folder", subfolder.name())]),
         _("Delete this folder"),
         "delete",
         id_='delete_' + subfolder.name(),
         cssclass='delete',
         style='display:none',
     )
Пример #5
0
    def _show_action_cell(self, table: Table, ident: str) -> None:
        table.cell(_("Actions"), css="buttons")

        edit_url = makeuri_contextless(
            request,
            [
                ("mode", self._mode_type.edit_mode_name()),
                ("ident", ident),
            ],
        )
        html.icon_button(edit_url,
                         _("Edit this %s") % self._mode_type.name_singular(),
                         "edit")

        clone_url = makeuri_contextless(
            request,
            [
                ("mode", self._mode_type.edit_mode_name()),
                ("clone", ident),
            ],
        )
        html.icon_button(clone_url,
                         _("Clone this %s") % self._mode_type.name_singular(),
                         "clone")

        delete_url = make_confirm_link(
            url=watolib.make_action_link([
                ("mode", self._mode_type.list_mode_name()),
                ("_action", "delete"),
                ("_delete", ident),
            ]),
            message=self._delete_confirm_message(),
        )
        html.icon_button(delete_url,
                         _("Delete this %s") % self._mode_type.name_singular(),
                         "delete")