master
ifiguero 2024-07-30 13:31:59 -04:00
parent c36dc582ae
commit 324d53ff72
2 changed files with 11 additions and 11 deletions

View File

@ -14,9 +14,9 @@ class ApiMiddleware:
if request.path[0:5] != '/api/': if request.path[0:5] != '/api/':
response = self.get_response(request) response = self.get_response(request)
return response return response
match = resolve(request.path) match = resolve(request.path)
logging.error(match) logging.INFO(match)
# se omite esta regla al mostrar imagen de paradero # se omite esta regla al mostrar imagen de paradero
if match.url_name == 'paradero_imagen-detail' and request.method == 'GET': if match.url_name == 'paradero_imagen-detail' and request.method == 'GET':
@ -56,16 +56,16 @@ class ApiMiddleware:
return HttpResponse('token ya no es valido', status = 400) return HttpResponse('token ya no es valido', status = 400)
except jwt.InvalidTokenError: except jwt.InvalidTokenError:
return HttpResponse('token es invalido', status = 400) return HttpResponse('token es invalido', status = 400)
if decoded['login'] != '0': if decoded['login'] != '0':
usuario = Usuario.objects.filter(login = decoded['login'], vigente = True).values().first() usuario = Usuario.objects.filter(login = decoded['login'], vigente = True).values().first()
if not usuario: if not usuario:
return HttpResponse('Usuario ya no vigente', status = 400) return HttpResponse('Usuario ya no vigente', status = 400)
persona = Persona.objects.filter(rut = usuario['rut_id']).values().first() persona = Persona.objects.filter(rut = usuario['rut_id']).values().first()
if not persona: if not persona:
return HttpResponse('No existe información de la persona', status = 500) return HttpResponse('No existe información de la persona', status = 500)
request.jwt_info = { 'login': usuario['login'], 'persona': persona } request.jwt_info = { 'login': usuario['login'], 'persona': persona }
else: else:
request.jwt_info = { 'login': '0', 'persona': None } request.jwt_info = { 'login': '0', 'persona': None }

View File

@ -41,12 +41,12 @@ def jwt_login(request):
# solo se permite usuario 0 si no existen usuarios vigentes # solo se permite usuario 0 si no existen usuarios vigentes
count = models.Usuario.objects.filter(vigente = True).count() count = models.Usuario.objects.filter(vigente = True).count()
if count > 0: if count > 0:
return HttpResponse('Acceso no valido', status=400) return HttpResponse('Acceso no valido 1', status=400)
else: else:
usuario = models.Usuario.objects.filter(vigente=1, rut__rut=rut, rut__dv=dv).values().first() usuario = models.Usuario.objects.filter(vigente=1, rut__rut=rut, rut__dv=dv).values().first()
if not check_password(input['password'], usuario['clave']): if not check_password(input['password'], usuario['clave']):
return HttpResponse('Acceso no valido', status=400) return HttpResponse('Acceso no valido 2', status=400)
ahora = datetime.utcnow() ahora = datetime.utcnow()
manana = ahora + timedelta(days=1) manana = ahora + timedelta(days=1)
@ -79,10 +79,10 @@ def recuperar(request):
usuario = models.Usuario.objects.filter(rut=rut, vigente=True).first() usuario = models.Usuario.objects.filter(rut=rut, vigente=True).first()
if usuario == None or persona == None: if usuario == None or persona == None:
return HttpResponse('Acceso no valido', status=400) return HttpResponse('Acceso no valido 3', status=400)
if persona.email != input['email'].lower(): if persona.email != input['email'].lower():
return HttpResponse('Acceso no valido', status=400) return HttpResponse('Acceso no valido 4', status=400)
codigo_aleatorio = random.randint(100000, 999999) codigo_aleatorio = random.randint(100000, 999999)
ahora = datetime.utcnow() ahora = datetime.utcnow()
@ -163,7 +163,7 @@ def enviar_correo(destinatario, asunto, contenido):
template = get_template('correo_recuperar.html') # Ruta al template del correo template = get_template('correo_recuperar.html') # Ruta al template del correo
contenido_renderizado = template.render(contenido) contenido_renderizado = template.render(contenido)
mensaje = EmailMultiAlternatives(asunto, contenido, settings.EMAIL_SENDER, [destinatario]) mensaje = EmailMultiAlternatives(asunto, '', settings.EMAIL_SENDER, [destinatario])
mensaje.attach_alternative(contenido_renderizado, 'text/html') mensaje.attach_alternative(contenido_renderizado, 'text/html')
mensaje.send() mensaje.send()
return True return True