Add token validation

This commit is contained in:
2025-08-21 00:49:18 +02:00
parent 626e6b6aee
commit c855fda3dc
4 changed files with 34 additions and 12 deletions

View File

@@ -5,17 +5,20 @@ from models import Users, Role
async def requestaccess(update: Update, context: ContextTypes.DEFAULT_TYPE, users: Users):
assert update.effective_user is not None
assert update.message is not None
user_id = str(update.effective_user.id)
role = users.get_role(user_id)
if role != Role.GUEST:
return await update.message.reply_text("Only guests can request access.")
if not context.args:
return await update.message.reply_text("Usage: `/requestaccess`", parse_mode="Markdown")
if update.callback_query:
await update.callback_query.answer("Only guests can request access.")
elif update.message:
return await update.message.reply_text("Only guests can request access.")
requester = users.get_fullname(user_id) or users.get_username(user_id)
text = (f"Access request: {requester} ({user_id}) requests access.\nUse `/grantaccess {user_id} <gate_id|all> YYYY-MM-DDTHH:MM:SSZ` to grant access.")
await update.message.reply_text("Your request has been submitted.")
if update.callback_query:
await update.callback_query.answer("Your request has been submitted.")
elif update.message:
return await update.message.reply_text("Your request has been submitted.")
admins = users.get_admins()
for admin_id in admins:
try: