randydev commited on
Commit
bf800b1
·
verified ·
1 Parent(s): 7d60737

Update chatbot/plugins/join_request.py

Browse files
Files changed (1) hide show
  1. chatbot/plugins/join_request.py +12 -5
chatbot/plugins/join_request.py CHANGED
@@ -35,6 +35,8 @@ from logger import LOGS
35
  logging.basicConfig(level=logging.INFO)
36
  logger = logging.getLogger(__name__)
37
 
 
 
38
  @Client.on_callback_query(filters.regex("^joinrequest_"))
39
  async def joinrequest_callback(client: Client, cb: CallbackQuery):
40
  data = cb.data.split("_")
@@ -47,7 +49,7 @@ async def joinrequest_callback(client: Client, cb: CallbackQuery):
47
  await cb.answer("Invalid user ID.", True)
48
  return
49
  try:
50
- if cb.from_user.id == 1191668125:
51
  await client.approve_chat_join_request(
52
  chat_id=cb.message.chat.id,
53
  user_id=user_id,
@@ -57,7 +59,7 @@ async def joinrequest_callback(client: Client, cb: CallbackQuery):
57
  disable_web_page_preview=True,
58
  )
59
  else:
60
- await cb.answer("Only the Developer can perform this action.", True)
61
  except Exception as e:
62
  await cb.answer(f"Error: {e}", True)
63
 
@@ -73,7 +75,7 @@ async def declinerequest_callback(client: Client, cb: CallbackQuery):
73
  await cb.answer("Invalid user ID.", True)
74
  return
75
  try:
76
- if cb.from_user.id == 1191668125:
77
  await client.decline_chat_join_request(
78
  chat_id=cb.message.chat.id,
79
  user_id=user_id,
@@ -83,7 +85,7 @@ async def declinerequest_callback(client: Client, cb: CallbackQuery):
83
  disable_web_page_preview=True,
84
  )
85
  else:
86
- await cb.answer("Only the Developer can perform this action.", True)
87
  except Exception as e:
88
  await cb.answer(f"Error: {e}", True)
89
 
@@ -107,7 +109,12 @@ def create_button_join_request(user_id):
107
 
108
  @Client.on_chat_join_request(filters.chat("KillerXSupport"))
109
  async def join_request(client: Client, event: ChatJoinRequest):
110
- logger.info(f"join request {event}")
 
 
 
 
 
111
  if event.chat.type == ChatType.SUPERGROUP:
112
  try:
113
  user_request_text = f"UserID: {event.from_user.id} by admin @xtdevs"
 
35
  logging.basicConfig(level=logging.INFO)
36
  logger = logging.getLogger(__name__)
37
 
38
+ user_list = []
39
+
40
  @Client.on_callback_query(filters.regex("^joinrequest_"))
41
  async def joinrequest_callback(client: Client, cb: CallbackQuery):
42
  data = cb.data.split("_")
 
49
  await cb.answer("Invalid user ID.", True)
50
  return
51
  try:
52
+ if cb.from_user.id in user_list:
53
  await client.approve_chat_join_request(
54
  chat_id=cb.message.chat.id,
55
  user_id=user_id,
 
59
  disable_web_page_preview=True,
60
  )
61
  else:
62
+ await cb.answer("Only the Admins can perform this action.", True)
63
  except Exception as e:
64
  await cb.answer(f"Error: {e}", True)
65
 
 
75
  await cb.answer("Invalid user ID.", True)
76
  return
77
  try:
78
+ if cb.from_user.id in user_list:
79
  await client.decline_chat_join_request(
80
  chat_id=cb.message.chat.id,
81
  user_id=user_id,
 
85
  disable_web_page_preview=True,
86
  )
87
  else:
88
+ await cb.answer("Only the Admins can perform this action.", True)
89
  except Exception as e:
90
  await cb.answer(f"Error: {e}", True)
91
 
 
109
 
110
  @Client.on_chat_join_request(filters.chat("KillerXSupport"))
111
  async def join_request(client: Client, event: ChatJoinRequest):
112
+ member = await client.get_chat_member(message.chat.id, "me")
113
+ if member.status != ChatMemberStatus.ADMINISTRATOR:
114
+ return await client.send_messagr(event.chat.id, text="I am not an administrator in this group.")
115
+ async for m in client.get_chat_members(event.chat.id, filter=ChatMembersFilter.ADMINISTRATORS):
116
+ if not m.user.is_bot:
117
+ user_list.append(m.user.id)
118
  if event.chat.type == ChatType.SUPERGROUP:
119
  try:
120
  user_request_text = f"UserID: {event.from_user.id} by admin @xtdevs"