New features
This commit is contained in:
6
handlers/admin/admin_control/__init__.py
Normal file
6
handlers/admin/admin_control/__init__.py
Normal file
@@ -0,0 +1,6 @@
|
||||
from utils.json import permission
|
||||
|
||||
if permission.can_admin_add_admins:
|
||||
from . import adding
|
||||
if permission.can_admin_del_admins:
|
||||
from . import delete
|
35
handlers/admin/admin_control/adding.py
Normal file
35
handlers/admin/admin_control/adding.py
Normal file
@@ -0,0 +1,35 @@
|
||||
from aiogram import types
|
||||
from aiogram.dispatcher import FSMContext
|
||||
|
||||
from load import dp, bot, messages
|
||||
from utils.database.user import Register, User
|
||||
from keyboard.default.admin.main_menu import base_menu
|
||||
from keyboard.default.main_menu import back_to_main_menu
|
||||
|
||||
|
||||
@dp.message_handler(lambda x: x.text == messages.add_admin, is_admin=True)
|
||||
async def add_admin(message: types.Message, state: FSMContext):
|
||||
await bot.send_message(
|
||||
message.chat.id,
|
||||
("Отправьте user_id пользователя\n"
|
||||
"Его можно узнать зайдя в информацию о пользователе"),
|
||||
reply_markup=base_menu()
|
||||
)
|
||||
await state.set_state("get_user_id_add_admin")
|
||||
|
||||
|
||||
@dp.message_handler(state="get_user_id_add_admin")
|
||||
async def add_admin1(message: types.Message, state: FSMContext):
|
||||
await state.finish()
|
||||
user_id = message.text
|
||||
if not user_id.isdigit() or "-100" in user_id:
|
||||
await bot.send_message(message.chat.id, "Данные не правильные!", reply_markup=back_to_main_menu)
|
||||
return
|
||||
|
||||
user_id = int(user_id)
|
||||
user = User.get_user(user_id)
|
||||
if not user:
|
||||
await bot.send_message(message.chat.id, "Пользователь не существует!", reply_markup=back_to_main_menu)
|
||||
return
|
||||
Register.register_admin(user)
|
||||
await bot.send_message(message.chat.id, "Администратор добавлен!", reply_markup=back_to_main_menu)
|
18
handlers/admin/admin_control/delete.py
Normal file
18
handlers/admin/admin_control/delete.py
Normal file
@@ -0,0 +1,18 @@
|
||||
from aiogram import types
|
||||
|
||||
from load import dp, bot, messages
|
||||
from keyboard.inline.admin.user import item_list
|
||||
from utils.database.base import get_full_admin
|
||||
|
||||
|
||||
@dp.message_handler(lambda x: x.text == messages.del_admin, is_admin=True)
|
||||
async def del_admin(message: types.Message):
|
||||
admins = get_full_admin()
|
||||
admin = admins[0]
|
||||
result = messages.admin_user.format(**admin)
|
||||
await bot.send_message(
|
||||
message.chat.id,
|
||||
result,
|
||||
parse_mode="Markdown",
|
||||
reply_markup=item_list(items=len(admins) - 1)
|
||||
)
|
Reference in New Issue
Block a user