Did some other modifications

This commit is contained in:
Joan
2025-09-16 23:00:28 +02:00
parent 2bfdb539be
commit 65b8542791
4 changed files with 80 additions and 7 deletions

View File

@@ -34,7 +34,7 @@ async def start(update: Update, context: ContextTypes.DEFAULT_TYPE):
madrid_tz = pytz.timezone("Europe/Madrid")
current_time = datetime.now(madrid_tz)
if current_time.time() >= dtime(20, 55) and current_time.time() <= dtime(22, 0):
await update.message.reply_text("No puedes unirte al sorteo en este momento.")
await update.message.reply_text("Lo siento, no puedes unirte a sorteos entre las 20:55 y las 22:00 (hora de España) para evitar conflictos con el sorteo en directo. Inténtalo de nuevo más tarde.")
return
if len(get_reserved_numbers(user.id, raffle_id)) > 0:
await update.message.reply_text("Ya tienes participaciones reservadas para este sorteo. Por favor, completa la donación o espera a que caduquen antes de unirte de nuevo.")
@@ -433,6 +433,7 @@ async def number_callback(update: Update, context: CallbackContext):
participant_user_id = participant_data['user_id']
participant_step = participant_data['step']
participant_db_id = participant_data['id'] # The ID from the participants table
user_name = participant_data['user_name'] or participant_data['user_id']
if participant_user_id == user_id:
# User clicked a number they already interact with
@@ -440,7 +441,7 @@ async def number_callback(update: Update, context: CallbackContext):
# User clicked a number they have reserved -> Deselect it
remove_reserved_number(participant_db_id, number_string)
await query.answer(f"Has quitado la reserva de la participación {number_string}.")
logger.info(f"User {user_id} deselected reserved number {number_string} for raffle {raffle_id}")
logger.info(f"User {user_id} (Name: {user_name}) deselected reserved number {number_string} for raffle {raffle_id}")
# Refresh keyboard
keyboard = generate_numbers_keyboard(raffle_id, user_id, page=page)
await query.edit_message_reply_markup(reply_markup=keyboard)
@@ -463,7 +464,7 @@ async def number_callback(update: Update, context: CallbackContext):
# Number is free -> Reserve it for the user
reserve_number(user_id, username, raffle_id, number_string)
await query.answer(f"Participación {number_string} reservada para ti. Confirma tu selección cuando termines.")
logger.info(f"User {user_id} reserved number {number_string} for raffle {raffle_id}")
logger.info(f"User {user_id} (Name: {username}) reserved number {number_string} for raffle {raffle_id}")
# Refresh keyboard to show the lock icon
keyboard = generate_numbers_keyboard(raffle_id, user_id, page=page)
await query.edit_message_reply_markup(reply_markup=keyboard)