PagerMaid-Pyro/pagermaid/web/pages/ignore_groups.py

82 lines
2.5 KiB
Python
Raw Normal View History

2023-03-12 03:56:01 +00:00
from amis import (
InputText,
Switch,
Card,
CardsCRUD,
PageSchema,
Page,
)
2023-01-31 16:24:56 +00:00
card = Card(
header=Card.Header(
2023-03-12 03:56:01 +00:00
title="$title",
description="$id",
avatarText="$title",
avatarTextClassName="overflow-hidden",
2023-01-31 16:24:56 +00:00
),
actions=[],
toolbar=[
Switch(
2023-03-12 03:56:01 +00:00
name="enable",
value="${status}",
onText="已忽略",
offText="未忽略",
2023-01-31 16:24:56 +00:00
onEvent={
2023-03-12 03:56:01 +00:00
"change": {
"actions": [
{
"actionType": "ajax",
"args": {
"api": {
"url": "/pagermaid/api/set_ignore_group_status",
"method": "post",
"dataType": "json",
"data": {
"id": "${id}",
"status": "${IF(event.data.value, 1, 0)}",
},
},
"onSuccess": {
"type": "tpl",
"tpl": "${payload.msg}", # 使用返回的 msg 字段作为成功消息
},
"onError": {
"type": "tpl",
"tpl": "操作失败",
},
"status": "${event.data.value}",
"id": "${id}",
2023-01-31 16:24:56 +00:00
},
2023-03-12 03:56:01 +00:00
},
]
2023-01-31 16:24:56 +00:00
}
2023-03-12 03:56:01 +00:00
},
2023-01-31 16:24:56 +00:00
)
2023-03-12 03:56:01 +00:00
],
2023-01-31 16:24:56 +00:00
)
cards_curd = CardsCRUD(
2023-03-12 03:56:01 +00:00
mode="cards",
title="",
2023-01-31 16:24:56 +00:00
syncLocation=False,
2023-03-12 03:56:01 +00:00
api="/pagermaid/api/get_ignore_group_list",
2023-01-31 16:24:56 +00:00
loadDataOnce=True,
2023-03-12 03:56:01 +00:00
source="${groups | filter:title:match:keywords_name}",
filter={"body": [InputText(name="keywords_name", label="群组名")]},
2023-01-31 16:24:56 +00:00
perPage=12,
autoJumpToTopOnPagerChange=True,
2023-03-12 03:56:01 +00:00
placeholder="群组列表为空",
footerToolbar=["switch-per-page", "pagination"],
2023-01-31 16:24:56 +00:00
columnsCount=3,
2023-03-12 03:56:01 +00:00
card=card,
2023-01-31 16:24:56 +00:00
)
page = PageSchema(
2023-03-12 03:56:01 +00:00
url="/bot_config/ignore_groups",
icon="fa fa-ban",
label="忽略群组",
schema=Page(
2024-08-13 10:38:13 +00:00
title="忽略群组",
subTitle="忽略后Bot 不再响应指定群组的消息(群组列表将会缓存一小时)",
body=cards_curd,
2023-03-12 03:56:01 +00:00
),
2023-01-31 16:24:56 +00:00
)