dodata validacija koda na payment page, 10 second delay za ispisivanje provere
This commit is contained in:
@@ -1,5 +1,8 @@
|
||||
import logging
|
||||
import yaml
|
||||
import os
|
||||
import json
|
||||
import time
|
||||
|
||||
from django.shortcuts import render, redirect , get_object_or_404
|
||||
from .forms import OrganizationForm
|
||||
@@ -9,15 +12,14 @@ from django.contrib.admin.views.decorators import staff_member_required
|
||||
from .utils import generate_pdf, generate_risk_graph, generate_residual_risk_graph
|
||||
from .tables import risk_matrix_table ,get_risk_table, get_safeguard_summary_table
|
||||
from django.conf import settings
|
||||
site_domain = settings.SITE_DOMAIN
|
||||
from .processors import render_template
|
||||
from django.http import JsonResponse, FileResponse, Http404, HttpResponse
|
||||
from django.core.exceptions import ValidationError
|
||||
from django.core.validators import validate_email
|
||||
import os
|
||||
from django.utils import timezone
|
||||
from weasyprint import HTML
|
||||
from django.template.loader import render_to_string
|
||||
from django.views.decorators.csrf import csrf_exempt
|
||||
|
||||
|
||||
# @login_required
|
||||
@@ -25,6 +27,7 @@ from django.template.loader import render_to_string
|
||||
# return HttpResponse('<h1>Django</h1><p>Página simples.</p>')
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
site_domain = settings.SITE_DOMAIN
|
||||
|
||||
# @login_required
|
||||
def index(request):
|
||||
@@ -134,7 +137,7 @@ def payment_page(request):
|
||||
send_document_email(email, url, document)
|
||||
return redirect(url)
|
||||
except PaymentCode.DoesNotExist:
|
||||
error = "CODE INVALID"
|
||||
error = "❌ Invalid code"
|
||||
return render(request, 'payment.html', {'error': error})
|
||||
|
||||
def no_confidential_data(request):
|
||||
@@ -161,4 +164,18 @@ def payment_codes_pdf_view(request):
|
||||
pdf_content = HTML(string=html_string, base_url=request.build_absolute_uri('/')).write_pdf()
|
||||
response = HttpResponse(pdf_content, content_type='application/pdf')
|
||||
response['Content-Disposition'] = f'inline; filename=payment_codes_{timezone.now().strftime("%Y%m%d_%H%M%S")}.pdf'
|
||||
return response
|
||||
return response
|
||||
|
||||
@csrf_exempt
|
||||
def validate_code(request):
|
||||
if request.method == "POST":
|
||||
try:
|
||||
data = json.loads(request.body)
|
||||
code = data.get("code", "").strip().upper()
|
||||
from .models import PaymentCode
|
||||
valid = PaymentCode.objects.filter(code=code, used=False).exists()
|
||||
time.sleep(10)
|
||||
return JsonResponse({"valid": valid})
|
||||
except Exception:
|
||||
return JsonResponse({"valid": False})
|
||||
return JsonResponse({"valid": False})
|
||||
Reference in New Issue
Block a user