НАСТРОЙКА ГРУППОВОЙ
This commit is contained in:
1 parent
8eaf622b9d
commit
b73f17c762
7 files changed
+309
-6
No files matched your search
@@ -1030,3 +1030,64 @@ async def donate_callback(callback: CallbackQuery):
|
||||
)
|
||||
|
||||
await callback.answer()
|
||||
|
||||
|
||||
@router.callback_query(F.data.startswith("gset%"))
|
||||
async def group_set_callback(callback: CallbackQuery):
|
||||
current_user_id = str(callback.from_user.id)
|
||||
data = callback.data.split("%", 4)
|
||||
group_id, user_id, key, val = data[1], data[2], data[3], data[4]
|
||||
if user_id != current_user_id:
|
||||
await callback.answer("нет, не трогай это не для тебя")
|
||||
return
|
||||
|
||||
if key in ["post_reply", "polls", "lurk"]:
|
||||
set_group_setting(group_id, **{key: val})
|
||||
elif key in ["lurk_chance", "lurk_reply_chance"]:
|
||||
g_config = get_group_config(group_id)
|
||||
new_val = g_config[key] + int(val)
|
||||
if new_val < 0:
|
||||
new_val = 0
|
||||
if new_val > 100:
|
||||
new_val = 100
|
||||
set_group_setting(group_id, **{key: new_val})
|
||||
|
||||
await group_settings_handler(callback, dataalo=f"group%{group_id}")
|
||||
|
||||
|
||||
@router.callback_query(F.data.startswith("gpost%"))
|
||||
async def group_post_prompt_callback(callback: CallbackQuery):
|
||||
current_user_id = str(callback.from_user.id)
|
||||
data = callback.data.split("%", 2)
|
||||
group_id, user_id = data[1], data[2]
|
||||
if user_id != current_user_id:
|
||||
await callback.answer("нет, не трогай это не для тебя")
|
||||
return
|
||||
|
||||
alo_command[int(user_id)] = {"action": "g_prompt", "chat_id": callback.message.chat.id, "message_id": callback.message.message_id, "group_id": group_id}
|
||||
|
||||
await callback.message.edit_text(
|
||||
"установи промпт для ответов на посты канала (просто текст):",
|
||||
reply_markup=InlineKeyboardMarkup(
|
||||
inline_keyboard=[
|
||||
[
|
||||
InlineKeyboardButton(text="❌ отменить", callback_data=f"gcancel%{group_id}%{user_id}")
|
||||
]
|
||||
]
|
||||
),
|
||||
)
|
||||
await callback.answer()
|
||||
|
||||
|
||||
@router.callback_query(F.data.startswith("gcancel%"))
|
||||
async def group_cancel_callback(callback: CallbackQuery):
|
||||
current_user_id = str(callback.from_user.id)
|
||||
data = callback.data.split("%", 2)
|
||||
group_id, user_id = data[1], data[2]
|
||||
if user_id != current_user_id:
|
||||
await callback.answer("нет, не трогай это не для тебя")
|
||||
return
|
||||
|
||||
alo_command[int(user_id)] = {"action": None, "chat_id": callback.message.chat.id, "message_id": callback.message.message_id}
|
||||
|
||||
await group_settings_handler(callback, dataalo=f"group%{group_id}")
|
||||
Reference in new issue
Block a user