Exemplo n.º 1
0
def render_user_message_table(what: str) -> None:
    html.open_div()
    with table_element(
        "user_messages", sortable=False, searchable=False, omit_if_empty=True
    ) as table:

        for entry in sorted(message.get_gui_messages(), key=lambda e: e["time"], reverse=True):
            if what not in entry["methods"]:
                continue

            table.row()

            msg_id = entry["id"]
            datetime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(entry["time"]))
            msg = entry["text"].replace("\n", " ")

            table.cell(_("Actions"), css=["buttons"], sortable=False)
            onclick = (
                "cmk.utils.delete_user_message('%s', this);cmk.utils.reload_whole_page();" % msg_id
                if what == "gui_hint"
                else "cmk.utils.delete_user_message('%s', this);" % msg_id
            )
            html.icon_button(
                "",
                _("Delete"),
                "delete",
                onclick=onclick,
            )

            table.cell(_("Message"), msg)
            table.cell(_("Date"), datetime)

    html.close_div()
Exemplo n.º 2
0
    def page(self):
        popup_msg: List = []
        hint_msg: int = 0

        for msg in message.get_gui_messages():
            if "gui_hint" in msg["methods"]:
                hint_msg += 1
            if "gui_popup" in msg["methods"]:
                popup_msg.append({"id": msg["id"], "text": msg["text"]})

        return {
            "popup_messages": popup_msg,
            "hint_messages": {
                "text": ungettext("message", "messages", hint_msg),
                "count": hint_msg,
            },
        }