From 4b30aa30f5e8c95f577e94bd745127b6beef6bf4 Mon Sep 17 00:00:00 2001 From: Joan Date: Sun, 11 Feb 2024 19:47:44 +0100 Subject: [PATCH] Fixed unlimited conjuntas --- conjuntasbot/conjuntasbot.py | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/conjuntasbot/conjuntasbot.py b/conjuntasbot/conjuntasbot.py index b06cd04..f76758f 100644 --- a/conjuntasbot/conjuntasbot.py +++ b/conjuntasbot/conjuntasbot.py @@ -367,12 +367,15 @@ def quantity_left(conjunta_id): cursor.execute("SELECT limite FROM conjuntas WHERE id = ?", (conjunta_id,)) limit = cursor.fetchone()[0] - cursor.execute("SELECT quantity FROM conjunta_users WHERE conjunta_id = ?", (conjunta_id,)) - total_quantity = 0 - for quantity in cursor.fetchall(): - total_quantity += quantity[0] + if limit: + cursor.execute("SELECT quantity FROM conjunta_users WHERE conjunta_id = ?", (conjunta_id,)) + total_quantity = 0 + for quantity in cursor.fetchall(): + total_quantity += quantity[0] - return limit - total_quantity + return limit - total_quantity + else: + return 1000 # Función para actualizar la cantidad el anclado async def update_conjunta(update: Update, context: CallbackContext, conjunta_id): @@ -394,8 +397,8 @@ async def update_conjunta(update: Update, context: CallbackContext, conjunta_id) else: message += f"✅ No hay límite de productos por usuario.\n" message += f"\n🗒️ {product_description}\n" - message += f"\n💰 Precio para socios: {price_member}€ (envío incluido)\n" - message += f"💰 Precio para NO socios: {price}€ (envío a parte)\n" + message += f"\n💰 Precio para socios: {price_member}€\n" + message += f"💰 Precio para NO socios: {price}€\n" message += f"\nPuedes unirte respondiendo a este mensaje con me apunto {{cantidad}}, en números.\n" message += f"Para borrarte responde a este mensaje y di me borro.\n" @@ -506,7 +509,9 @@ async def handle_conjunta(update: Update, context: CallbackContext): my_quantity_left = quantity_left(conjunta_id) quantity_string = "unidades" if my_quantity_left > 1 else "unidad" message = f"Te has unido a la conjunta para '{product_name}' con {quantity} {quantity_string}." - if my_quantity_left > 0: + if not limit: + message += f"\n\n¡Todavía quedan unidades disponibles!" + elif my_quantity_left > 0: message += f"\n\n¡Todavía quedan {my_quantity_left} {quantity_string} disponibles!" else: message += f"\n\n¡Ya no quedan unidades disponibles!" @@ -555,8 +560,8 @@ async def close_conjunta(update: Update, context: CallbackContext): message += "" message += f"\n\n🗒️ {product_description}\n" - message += f"\n💰 Precio para socios: {price_member}€ (envío incluido)\n" - message += f"💰 Precio para NO socios: {price}€ (envío a parte)\n" + message += f"\n💰 Precio para socios: {price_member}€\n" + message += f"💰 Precio para NO socios: {price}€\n" await context.bot.send_message(chat_id=group_chat_id, text=message, parse_mode=ParseMode.HTML)