@@ -46,16 +46,28 @@ async def set_api(client, message):
4646 await db .set_api (user_id , api_key ) # save in database
4747 await message .reply_text (f"✅ API key has been saved!\n \n <code>{ api_key } </code>" , quote = True )
4848
49- # /set_site <BASE_URL>
49+ # Simple domain validation regex
50+ DOMAIN_REGEX = re .compile (
51+ r"^(?:[a-zA-Z0-9-]+\.)+[a-zA-Z]{2,}$"
52+ )
53+
5054@bot .on_message (filters .private & filters .command ("set_site" ))
5155async def set_site (client , message ):
5256 if len (message .command ) < 2 :
53- return await message .reply_text ("❌ Usage: `/set_site https:// example.com`" , quote = True )
57+ return await message .reply_text ("❌ Usage: `/set_site example.com`" , quote = True )
5458
5559 base_url = message .command [1 ]
56- user_id = message .from_user .id
5760
58- await db .set_site (user_id , base_url ) # save in database
61+ # Agar https:// ya http:// diya toh hatao
62+ base_url = re .sub (r'^https?://' , '' , base_url )
63+ base_url = base_url .rstrip ("/" ) # last / hatao
64+
65+ # Validation: check ki sirf domain ho
66+ if not DOMAIN_REGEX .match (base_url ):
67+ return await message .reply_text ("❌ Only domain link is allowed!\n \n ✅ Example: `example.com`" , quote = True )
68+
69+ user_id = message .from_user .id
70+ await db .set_site (user_id , base_url )
5971 await message .reply_text (f"✅ Base site has been saved!\n \n <code>{ base_url } </code>" , quote = True )
6072
6173# Regex pattern for valid http or https URL
0 commit comments