From 162f4bf8288904c2ea8a0200c93b8207cd1b03bb Mon Sep 17 00:00:00 2001 From: adevopg <133045315+adevopg@users.noreply.github.com> Date: Sun, 16 Feb 2025 19:02:46 +0100 Subject: [PATCH] Ahora la descripcion del pago de Stripe se muestra correctamente --- home/pagos_stripe.py | 4 +-- home/templates/partials/footer.html | 2 +- home/templates/partials/rename_character.html | 1 + home/templates/partials/send_gift.html | 2 +- home/views.py | 25 +++++++++++-------- 5 files changed, 20 insertions(+), 14 deletions(-) diff --git a/home/pagos_stripe.py b/home/pagos_stripe.py index 9d4f5d0..d4b9522 100644 --- a/home/pagos_stripe.py +++ b/home/pagos_stripe.py @@ -3,14 +3,14 @@ from django.conf import settings stripe.api_key = settings.STRIPE_SECRET_KEY -def create_checkout_session(amount, currency="eur", success_url=None, cancel_url=None): +def create_checkout_session(amount, currency="eur", success_url=None, cancel_url=None, product_name=""): try: session = stripe.checkout.Session.create( payment_method_types=["card"], line_items=[{ "price_data": { "currency": currency, - "product_data": {"name": "Renombrar personaje"}, + "product_data": {"name": product_name}, "unit_amount": int(amount * 100), }, "quantity": 1, diff --git a/home/templates/partials/footer.html b/home/templates/partials/footer.html index 65020e8..fb25426 100644 --- a/home/templates/partials/footer.html +++ b/home/templates/partials/footer.html @@ -7,5 +7,5 @@ Contáctanos


© Copyright {{ NOMBRE_SERVIDOR }}™ {{ ANIO_ACTUAL }}. Todos los derechos reservados

-

Diseño: "Torete apesta" Por Ryuzaki

+

Diseño: "{{ NOMBRE_SERVIDOR }}" Por Inna Hoover Brown

\ No newline at end of file diff --git a/home/templates/partials/rename_character.html b/home/templates/partials/rename_character.html index 99b3b6f..f48b17c 100644 --- a/home/templates/partials/rename_character.html +++ b/home/templates/partials/rename_character.html @@ -17,6 +17,7 @@ +


diff --git a/home/templates/partials/send_gift.html b/home/templates/partials/send_gift.html index 111b5e0..dc074ee 100644 --- a/home/templates/partials/send_gift.html +++ b/home/templates/partials/send_gift.html @@ -74,7 +74,7 @@ Contáctanos


© Copyright {{ NOMBRE_SERVIDOR }}™ 2025. Todos los derechos reservados

-

Diseño: "Torete apesta" Por Ryuzaki

+

Diseño: "{{ NOMBRE_SERVIDOR }}" Por Inna Hoover Brown

diff --git a/home/views.py b/home/views.py index 9b05316..0a446c6 100644 --- a/home/views.py +++ b/home/views.py @@ -1179,7 +1179,7 @@ def rename_character_view(request): # Crear sesión de pago con Stripe success_url = request.build_absolute_uri(reverse('rename-success')) cancel_url = request.build_absolute_uri(reverse('rename-cancel')) - stripe_response = create_checkout_session(price, success_url=success_url, cancel_url=cancel_url) + stripe_response = create_checkout_session(price, success_url=success_url, cancel_url=cancel_url, product_name=f"Renombrar personaje: {character_name}") if stripe_response["success"]: request.session['rename_character'] = character_name @@ -1275,7 +1275,8 @@ def customize_character_view(request): # Crear sesión de pago con Stripe success_url = request.build_absolute_uri(reverse('customize-success')) cancel_url = request.build_absolute_uri(reverse('customize-cancel')) - stripe_response = create_checkout_session(price, success_url=success_url, cancel_url=cancel_url) + stripe_response = create_checkout_session(price, success_url=success_url, cancel_url=cancel_url, product_name=f"Personalizar personaje: {character_name}") + if stripe_response["success"]: # Guardar temporalmente el nombre del personaje en la sesión @@ -1348,7 +1349,7 @@ def change_race_character_view(request): # Crear sesión de pago con Stripe success_url = request.build_absolute_uri(reverse('change-race-success')) cancel_url = request.build_absolute_uri(reverse('change-race-cancel')) - stripe_response = create_checkout_session(price, success_url=success_url, cancel_url=cancel_url) + stripe_response = create_checkout_session(price, success_url=success_url, cancel_url=cancel_url, product_name=f"Cambio de Raza del personaje: {character_name}") if stripe_response["success"]: # Guardar el personaje en la sesión para el cambio @@ -1420,8 +1421,8 @@ def change_faction_character_view(request): # Crear sesión de pago con Stripe success_url = request.build_absolute_uri(reverse('change-faction-success')) - cancel_url = request.build_absolute_uri(reverse('change-faction-cancel')) - stripe_response = create_checkout_session(price, success_url=success_url, cancel_url=cancel_url) + cancel_url = request.build_absolute_uri(reverse('change-faction-cancel')) + stripe_response = create_checkout_session(price, success_url=success_url, cancel_url=cancel_url, product_name=f"Cambiar Faccion del personaje: {character_name}") if stripe_response["success"]: # Guardar el personaje seleccionado en la sesión @@ -1495,7 +1496,7 @@ def level_up_character_view(request): # Crear sesión de pago con Stripe success_url = request.build_absolute_uri(reverse('level-up-success')) cancel_url = request.build_absolute_uri(reverse('level-up-cancel')) - stripe_response = create_checkout_session(price, success_url=success_url, cancel_url=cancel_url) + stripe_response = create_checkout_session(price, success_url=success_url, cancel_url=cancel_url, product_name=f"Subir el Nivel 80 del personaje: {character_name}") if stripe_response["success"]: # Guardar el personaje en la sesión para usarlo después del pago @@ -1587,7 +1588,7 @@ def gold_character_view(request): # Crear sesión de pago con Stripe success_url = request.build_absolute_uri(reverse('gold-success')) cancel_url = request.build_absolute_uri(reverse('gold-cancel')) - stripe_response = create_checkout_session(stripe_price, success_url=success_url, cancel_url=cancel_url) + stripe_response = create_checkout_session(price, success_url=success_url, cancel_url=cancel_url, product_name=f"Aumentar el Oro: {gold_amount} al Personaje: {character_name}") if stripe_response["success"]: # Guardar en sesión los datos para el callback tras el pago @@ -1721,7 +1722,7 @@ def transfer_character_view(request): # Crear sesión de pago con Stripe success_url = request.build_absolute_uri(reverse('transfer-success')) cancel_url = request.build_absolute_uri(reverse('transfer-cancel')) - stripe_response = create_checkout_session(price, success_url=success_url, cancel_url=cancel_url) + stripe_response = create_checkout_session(price, success_url=success_url, cancel_url=cancel_url, product_name=f"Trasnferir el personaje: {character_name} a la cuenta de destino: {destination_account}") if stripe_response["success"]: # Guardar los datos de la transferencia en la sesión para usarlos después del pago @@ -1829,11 +1830,15 @@ def store_novawow_view(request): if character_name not in characters: return JsonResponse({'success': False, 'message': 'No tienes permiso para renombrar este personaje.'}) + # ✅ Definir siempre `product_description` antes de usarlo + product_description = ", ".join([f"{item.get('nombre', 'Ítem desconocido')} x{item.get('cantidad', 1)}" for item in carrito]) + + # Crear sesión de pago con Stripe success_url = request.build_absolute_uri(reverse('store-novawow/success')) cancel_url = request.build_absolute_uri(reverse('store-novawow/cancel')) - stripe_response = create_checkout_session(total_price_with_iva, success_url=success_url, cancel_url=cancel_url) - + stripe_response = create_checkout_session(total_price_with_iva, success_url=success_url, cancel_url=cancel_url, product_name=f"Compra de items del personaje: {character_name} : {product_description}") + if stripe_response["success"]: request.session['store_novawow'] = character_name return JsonResponse({