Fix permission admins
Browse files- akn/Akeno/admin.py +10 -8
akn/Akeno/admin.py
CHANGED
@@ -127,7 +127,7 @@ async def member_ban_user(client: Client, message: Message):
|
|
127 |
user_id, reason = await extract_user_and_reason(message, sender_chat=True)
|
128 |
rd = await message.edit_text("`Processing...`")
|
129 |
bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
|
130 |
-
if not bot.can_restrict_members:
|
131 |
return await rd.edit_text("I don't have enough permissions")
|
132 |
if not user_id:
|
133 |
return await rd.edit_text("I can't find that user.")
|
@@ -165,8 +165,7 @@ async def member_ban_user(client: Client, message: Message):
|
|
165 |
async def member_unban_user(client: Client, message: Message):
|
166 |
reply = message.reply_to_message
|
167 |
rd = await message.edit_text("`Processing...`")
|
168 |
-
bot
|
169 |
-
if not bot.can_restrict_members:
|
170 |
return await rd.edit_text("I don't have enough permissions")
|
171 |
if reply and reply.sender_chat and reply.sender_chat != message.chat.id:
|
172 |
return await rd.edit_text("You cannot unban a channel")
|
@@ -192,7 +191,7 @@ async def pin_message(client: Client, message: Message):
|
|
192 |
return await message.edit_text("Reply to a message to pin/unpin it.")
|
193 |
rd = await message.edit_text("`Processing...`")
|
194 |
bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
|
195 |
-
if not bot.can_pin_messages:
|
196 |
return await rd.edit_text("I don't have enough permissions")
|
197 |
r = message.reply_to_message
|
198 |
if message.command[0][0] == "u":
|
@@ -214,7 +213,7 @@ async def mute_user(client: Client, message: Message):
|
|
214 |
user_id, reason = await extract_user_and_reason(message)
|
215 |
rd = await message.edit_text("`Processing...`")
|
216 |
bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
|
217 |
-
if not bot.can_restrict_members:
|
218 |
return await rd.edit_text("I don't have enough permissions")
|
219 |
if not user_id:
|
220 |
return await rd.edit_text("I can't find that user.")
|
@@ -245,7 +244,7 @@ async def unmute_user(client: Client, message: Message):
|
|
245 |
user_id = await extract_user(message)
|
246 |
rd = await message.edit_text("`Processing...`")
|
247 |
bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
|
248 |
-
if not bot.can_restrict_members:
|
249 |
return await rd.edit_text("I don't have enough permissions")
|
250 |
if not user_id:
|
251 |
return await rd.edit_text("I can't find that user.")
|
@@ -260,7 +259,7 @@ async def kick_user(client: Client, message: Message):
|
|
260 |
user_id, reason = await extract_user_and_reason(message)
|
261 |
rd = await message.edit_text("`Processing...`")
|
262 |
bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
|
263 |
-
if not bot.can_restrict_members:
|
264 |
return await rd.edit_text("I don't have enough permissions")
|
265 |
if not user_id:
|
266 |
return await rd.edit_text("I can't find that user.")
|
@@ -298,7 +297,7 @@ async def promotte_user(client: Client, message: Message):
|
|
298 |
if not user_id:
|
299 |
return await rd.edit_text("I can't find that user.")
|
300 |
bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
|
301 |
-
if not bot.can_promote_members:
|
302 |
return await rd.edit_text("I don't have enough permissions")
|
303 |
if message.command[0][0] == "f":
|
304 |
await message.chat.promote_member(
|
@@ -341,6 +340,9 @@ async def demote_user(client: Client, message: Message):
|
|
341 |
return await rd.edit_text("I can't find that user.")
|
342 |
if user_id == client.me.id:
|
343 |
return await rd.edit_text("I can't demote myself.")
|
|
|
|
|
|
|
344 |
await message.chat.promote_member(
|
345 |
user_id,
|
346 |
privileges=ChatPrivileges(
|
|
|
127 |
user_id, reason = await extract_user_and_reason(message, sender_chat=True)
|
128 |
rd = await message.edit_text("`Processing...`")
|
129 |
bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
|
130 |
+
if not bot or not bot.can_restrict_members:
|
131 |
return await rd.edit_text("I don't have enough permissions")
|
132 |
if not user_id:
|
133 |
return await rd.edit_text("I can't find that user.")
|
|
|
165 |
async def member_unban_user(client: Client, message: Message):
|
166 |
reply = message.reply_to_message
|
167 |
rd = await message.edit_text("`Processing...`")
|
168 |
+
if not bot or not bot.can_restrict_members:
|
|
|
169 |
return await rd.edit_text("I don't have enough permissions")
|
170 |
if reply and reply.sender_chat and reply.sender_chat != message.chat.id:
|
171 |
return await rd.edit_text("You cannot unban a channel")
|
|
|
191 |
return await message.edit_text("Reply to a message to pin/unpin it.")
|
192 |
rd = await message.edit_text("`Processing...`")
|
193 |
bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
|
194 |
+
if not bot or not bot.can_pin_messages:
|
195 |
return await rd.edit_text("I don't have enough permissions")
|
196 |
r = message.reply_to_message
|
197 |
if message.command[0][0] == "u":
|
|
|
213 |
user_id, reason = await extract_user_and_reason(message)
|
214 |
rd = await message.edit_text("`Processing...`")
|
215 |
bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
|
216 |
+
if not bot or not bot.can_restrict_members:
|
217 |
return await rd.edit_text("I don't have enough permissions")
|
218 |
if not user_id:
|
219 |
return await rd.edit_text("I can't find that user.")
|
|
|
244 |
user_id = await extract_user(message)
|
245 |
rd = await message.edit_text("`Processing...`")
|
246 |
bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
|
247 |
+
if not bot or not bot.can_restrict_members:
|
248 |
return await rd.edit_text("I don't have enough permissions")
|
249 |
if not user_id:
|
250 |
return await rd.edit_text("I can't find that user.")
|
|
|
259 |
user_id, reason = await extract_user_and_reason(message)
|
260 |
rd = await message.edit_text("`Processing...`")
|
261 |
bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
|
262 |
+
if not bot or not bot.can_restrict_members:
|
263 |
return await rd.edit_text("I don't have enough permissions")
|
264 |
if not user_id:
|
265 |
return await rd.edit_text("I can't find that user.")
|
|
|
297 |
if not user_id:
|
298 |
return await rd.edit_text("I can't find that user.")
|
299 |
bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
|
300 |
+
if not bot or not bot.can_promote_members:
|
301 |
return await rd.edit_text("I don't have enough permissions")
|
302 |
if message.command[0][0] == "f":
|
303 |
await message.chat.promote_member(
|
|
|
340 |
return await rd.edit_text("I can't find that user.")
|
341 |
if user_id == client.me.id:
|
342 |
return await rd.edit_text("I can't demote myself.")
|
343 |
+
bot = (await client.get_chat_member(message.chat.id, client.me.id)).privileges
|
344 |
+
if not bot or not bot.can_promote_members:
|
345 |
+
return await rd.edit_text("I don't have enough permissions")
|
346 |
await message.chat.promote_member(
|
347 |
user_id,
|
348 |
privileges=ChatPrivileges(
|