From 3c59bc13959819f2a2f9ab343171d8b915df9915 Mon Sep 17 00:00:00 2001 From: Heitor Louzeiro Date: Thu, 4 Jan 2024 15:13:25 -0300 Subject: [PATCH] Update login page and site views. --- accounts/templates/accounts/pages/login.html | 43 +++++++++++++------ .../static/assets/custom/css/index.css | 5 ++- chatbot/views/site.py | 32 ++++++-------- 3 files changed, 47 insertions(+), 33 deletions(-) diff --git a/accounts/templates/accounts/pages/login.html b/accounts/templates/accounts/pages/login.html index bae1f91..5a865c3 100644 --- a/accounts/templates/accounts/pages/login.html +++ b/accounts/templates/accounts/pages/login.html @@ -39,25 +39,40 @@ border-top-left-radius: 0; border-top-right-radius: 0; } + a { + color: #FFFFFF; + text-decoration: none; + } {% include "../partials/_messeges.html" %}
-
- {% csrf_token %} -

Please sign in

- -
- - + {% if user.is_authenticated %} +

You are already logged in

+
+ Logout + Home
-
- - -
- -

© 2017–2023

- + {% else %} + +

Please sign in

+
+ {% csrf_token %} +
+ + +
+
+ + +
+ +
+ Git Hub / + Linkedin +
+
+ {% endif %}
diff --git a/chatbot/templates/static/assets/custom/css/index.css b/chatbot/templates/static/assets/custom/css/index.css index 2f82630..19bc6bb 100644 --- a/chatbot/templates/static/assets/custom/css/index.css +++ b/chatbot/templates/static/assets/custom/css/index.css @@ -10,7 +10,10 @@ body { color: #FFFFFF; font-family: 'Inter', sans-serif; } - +a { + text-decoration: none; + color: inherit; +} .container { padding: 0 2rem; } diff --git a/chatbot/views/site.py b/chatbot/views/site.py index be82986..7bd45dd 100644 --- a/chatbot/views/site.py +++ b/chatbot/views/site.py @@ -4,7 +4,7 @@ from django.contrib.auth.decorators import login_required from django.http import JsonResponse -from django.shortcuts import render +from django.shortcuts import redirect, render from django.views.decorators.csrf import csrf_exempt from .chatbot import carrega, trata_resposta @@ -16,32 +16,28 @@ def index(request): return render(request, template_name) +@login_required(login_url='accounts:login', redirect_field_name='next') @csrf_exempt def chat(request): if request.method == 'POST': - try: - data = json.loads(request.body.decode('utf-8')) - prompt = data['msg'] - - nome_do_arquivo = request.user.username - - historico = '' - if os.path.exists(nome_do_arquivo): - historico = carrega(nome_do_arquivo) + data = json.loads(request.body.decode('utf-8')) + prompt = data['msg'] - response = list(trata_resposta(prompt, historico, nome_do_arquivo)) + nome_do_arquivo = request.user.username - # Return the result as a JsonResponse - return JsonResponse({'response': response}) + historico = '' + if os.path.exists(nome_do_arquivo): + historico = carrega(nome_do_arquivo) - except json.JSONDecodeError: # noqua - return JsonResponse({'response': 'Invalid JSON format'}, status=400) + response = list(trata_resposta(prompt, historico, nome_do_arquivo)) - # If the request is not a POST request, render a template - template_name = 'pages/index.html' - return render(request, template_name) + # Return the result as a JsonResponse + return JsonResponse({'response': response}) + else: + return redirect('chatbot:index') +@login_required(login_url='accounts:login', redirect_field_name='next') @csrf_exempt def limpar_historico(request): nome_do_arquivo = request.user.username