Commit da184f248b267696da636bae7f43a8e465623236
1 parent
b4415117
Exists in
master
and in
5 other branches
Resolvendo bugs de template e fontes em recuperar senha #372
Showing
6 changed files
with
150 additions
and
157 deletions
Show diff stats
core/templates/registration/passwor_reset_complete.html
@@ -3,33 +3,31 @@ | @@ -3,33 +3,31 @@ | ||
3 | 3 | ||
4 | {% block content %} | 4 | {% block content %} |
5 | 5 | ||
6 | - <div class="row"> | ||
7 | - <div class="col-md-4 col-md-offset-4 col-xs-4 col-xs-offset-4 col-sm-4 col-sm-offset-4 col-lg-4 col-lg-offset-4 col-xl-4 col-xl-offset-4"> | ||
8 | - <div class="row"> | ||
9 | - <div class="col-md-offset-2 col-md-8 col-sm-offset-2 col-sm-8 col-xs-offset-2 col-xs-8 col-lg-offset-2 col-lg-8 col-xs-offset-2 col-xs-8"> | ||
10 | - </br> | ||
11 | - </br> | ||
12 | - <img src="{% static 'img/amadeus.png' %}" class="img-responsive center-block " alt="logo amadeus"> | ||
13 | - </br> | ||
14 | - </div> | ||
15 | - </div> | ||
16 | - </div> | ||
17 | - <div class="row "> | ||
18 | - <div class="col-lg-9 col-lg-offset-2 col-xs-9 col-xs-offset-2 col-sm-9 col-sm-offset-2 col-md-9 col-md-offset-2 col-xl-9 col-xl-offset-2"> | ||
19 | - <div class="card"> | ||
20 | - <div class="card-block"> | ||
21 | - <div class="col-md-12 col-xs-12 col-sm-12 col-lg-12 col-xl-12"> | ||
22 | - <form class="form-group " method="post" action=""> | ||
23 | - {% csrf_token %} | ||
24 | - <div class="form-group is-empty"> | ||
25 | - <p>{% trans "Your password has been set. You can go ahead and go now." %}</p> | ||
26 | - </div> | ||
27 | - </form> | ||
28 | - </div> | ||
29 | - </div> | ||
30 | - </div> | ||
31 | - </div> | 6 | +<div class="row"> |
7 | + <div class="col-sm-6 col-sm-offset-4 col-md-6 col-md-offset-4 col-xs-6 col-xs-offset-4 col-lg-6 col-lg-offset-4 col-xl-6 col-xl-offset-4 "> | ||
8 | + <div class="col-sm-8 col-sm-offset-2 col-md-8 col-md-offset-2 col-xs-8 col-xs-offset-2 col-lg-8 col-lg-offset-2 col-xl-8 col-xl-offset-2"> | ||
9 | + <img src="{% static 'img/amadeus.png' %}" class="img-responsive center-block logo-login " alt="logo amadeus"> | ||
32 | </div> | 10 | </div> |
33 | </div> | 11 | </div> |
12 | +</div> | ||
34 | 13 | ||
14 | +<div class="row"> | ||
15 | + <div class="col-md-8 col-md-offset-3 col-sm-10 col-sm-offset-2 col-xs-12 col-xs-offset-1 col-lg-8 col-lg-offset-3 col-xl-8 col-xl-offset-3"> | ||
16 | + <div class="card"> | ||
17 | + <div class="card-block"> | ||
18 | + <div class="row"> | ||
19 | + <div class="col-md-12 text-center"> | ||
20 | + <h2 style="color:#43a251"><strong>{% trans "Your password was reseted successful" %}</strong></h2> | ||
21 | + </div> | ||
22 | + </div> | ||
23 | + <div class="row"> | ||
24 | + <div class="col-md-12 text-center"> | ||
25 | + <a class="btn btn-success btn-raised" href="{% url 'core:home' %}">{% trans "Login" %}</a> | ||
26 | + </div> | ||
27 | + </div> | ||
28 | + </br> | ||
29 | + </div> | ||
30 | + </div> | ||
31 | + </div> | ||
32 | +</div> | ||
35 | {% endblock content %} | 33 | {% endblock content %} |
core/templates/registration/passwor_reset_confirm.html
1 | {% extends "index.html" %} | 1 | {% extends "index.html" %} |
2 | -{% load i18n static %} | 2 | +{% load i18n static widget_tweaks%} |
3 | 3 | ||
4 | - {% block content%} | 4 | +{% block content%} |
5 | 5 | ||
6 | - <div class="row"> | ||
7 | - <div class="col-md-4 col-md-offset-4 col-xs-4 col-xs-offset-4 col-sm-4 col-sm-offset-4 col-lg-4 col-lg-offset-4 col-xl-4 col-xl-offset-4"> | ||
8 | - <div class="row"> | ||
9 | - <div class="col-md-offset-2 col-md-8 col-sm-offset-2 col-sm-8 col-xs-offset-2 col-xs-8 col-lg-offset-2 col-lg-8 col-xs-offset-2 col-xs-8"> | ||
10 | - </br> | ||
11 | - </br> | ||
12 | - <img src="{% static 'img/amadeus.png' %}" class="img-responsive center-block " alt="logo amadeus"> | ||
13 | - </br> | ||
14 | - </div> | ||
15 | - </div> | ||
16 | - </div> | ||
17 | - <div class="row "> | ||
18 | - <div class="col-lg-9 col-lg-offset-2 col-xs-9 col-xs-offset-2 col-sm-9 col-sm-offset-2 col-md-9 col-md-offset-2 col-xl-9 col-xl-offset-2"> | 6 | +<div class="row"> |
7 | + <div class="col-sm-6 col-sm-offset-4 col-md-6 col-md-offset-4 col-xs-6 col-xs-offset-4 col-lg-6 col-lg-offset-4 col-xl-6 col-xl-offset-4 "> | ||
8 | + <div class="col-sm-8 col-sm-offset-2 col-md-8 col-md-offset-2 col-xs-8 col-xs-offset-2 col-lg-8 col-lg-offset-2 col-xl-8 col-xl-offset-2"> | ||
9 | + <img src="{% static 'img/amadeus.png' %}" class="img-responsive center-block logo-login " alt="logo amadeus"> | ||
10 | + </div> | ||
11 | + </div> | ||
12 | +</div> | ||
19 | 13 | ||
14 | +<div class="row"> | ||
15 | + <div class="col-md-8 col-md-offset-3 col-sm-10 col-sm-offset-2 col-xs-12 col-xs-offset-1 col-lg-8 col-lg-offset-3 col-xl-8 col-xl-offset-3"> | ||
16 | + <div class="card"> | ||
17 | + <div class="card-block"> | ||
18 | + <div class="row"> | ||
19 | + <div class="col-md-12 text-center"> | ||
20 | + <h2 style="color:#43a251"><strong>{% trans "Reset Your Password" %}</strong></h2> | ||
21 | + </div> | ||
22 | + </div> | ||
23 | + {% if validlink %} | ||
20 | 24 | ||
21 | - | ||
22 | - {% if validlink %} | ||
23 | - | ||
24 | - <p>{% trans "Please enter your new password twice so we can verify you typed it in correctly." %}</p> | ||
25 | - | ||
26 | - <form method="post">{% csrf_token %} | ||
27 | - {{ form.new_password1.errors }} | ||
28 | - <p class="aligned wide"><label for="id_new_password1">{% trans 'New password:' %}</label>{{ form.new_password1 }}</p> | ||
29 | - {{ form.new_password2.errors }} | ||
30 | - <p class="aligned wide"><label for="id_new_password2">{% trans 'Confirm password:' %}</label>{{ form.new_password2 }}</p> | ||
31 | - <p><input type="submit" value="{% trans 'Change my password' %}" /></p> | ||
32 | - </form> | ||
33 | - | ||
34 | - {% else %} | ||
35 | - | ||
36 | - <p>{% trans "The password reset link was invalid, possibly because it has already been used. Please request a new password reset." %}</p> | ||
37 | - | ||
38 | - {% endif %} | ||
39 | - | ||
40 | - {% endblock %} | 25 | + <div class="row"> |
26 | + <div class="col-md-10 col-md-offset-1 text-justify"> | ||
27 | + <p>{% trans "Please enter your new password twice so we can verify you typed it in correctly." %}</p> | ||
28 | + </div> | ||
29 | + </div> | ||
30 | + <form method="post"> | ||
31 | + {% csrf_token %} | ||
32 | + <div class="col-md-10 col-md-offset-1"> | ||
33 | + {% if form.new_password2.errors %} | ||
34 | + <div class="row"> | ||
35 | + </br> | ||
36 | + <div class="alert alert-danger alert-dismissible" role="alert"> | ||
37 | + <button type="button" class="close" data-dismiss="alert" aria-label="Close"> | ||
38 | + <span aria-hidden="true">×</span> | ||
39 | + </button> | ||
40 | + <ul> | ||
41 | + {% for error in form.new_password2.errors %} | ||
42 | + <li>{{ error }}</li> | ||
43 | + {% endfor %} | ||
44 | + </ul> | ||
45 | + </div> | ||
46 | + </div> | ||
47 | + </div> | ||
48 | + {% endif %} | ||
49 | + {% for field in form %} | ||
50 | + <div class="col-md-10 col-md-offset-1"> | ||
51 | + <div class="form-group {% if form.has_error %} has-error {% endif %}"> | ||
52 | + <label for="{{ field.auto_id }}">{{ field.label }}</label> | ||
53 | + {% render_field field class='form-control' %} | ||
54 | + </div> | ||
55 | + </div> | ||
56 | + {% endfor %} | ||
57 | + <div class="row text-center"> | ||
58 | + <input type="submit" value="{% trans 'Change Password' %}" class="btn btn-primary btn-raised" /> | ||
59 | + </div> | ||
60 | + </form> | ||
61 | + {% else %} | ||
62 | + <div class="row"> | ||
63 | + <div class="col-md-10 col-md-offset-1 text-justify"> | ||
64 | + <p>{% trans "The password reset link was invalid, possibly because it has already been used. Please request a new password reset." %}</p> | ||
65 | + </div> | ||
66 | + </div> | ||
67 | + {% endif %} | ||
68 | + </br> | ||
69 | + </div> | ||
70 | + </div> | ||
71 | + </div> | ||
72 | +</div> | ||
73 | +</br> | ||
74 | +</br> | ||
75 | +{% endblock %} |
core/templates/registration/passwor_reset_done.html
@@ -4,48 +4,33 @@ | @@ -4,48 +4,33 @@ | ||
4 | 4 | ||
5 | <div class="row"> | 5 | <div class="row"> |
6 | <div class="col-sm-6 col-sm-offset-4 col-md-6 col-md-offset-4 col-xs-6 col-xs-offset-4 col-lg-6 col-lg-offset-4 col-xl-6 col-xl-offset-4 "> | 6 | <div class="col-sm-6 col-sm-offset-4 col-md-6 col-md-offset-4 col-xs-6 col-xs-offset-4 col-lg-6 col-lg-offset-4 col-xl-6 col-xl-offset-4 "> |
7 | - <div class="col-sm-8 col-sm-offset-2 col-md-8 col-md-offset-2 col-xs-8 col-xs-offset-2 col-lg-8 col-lg-offset-2 col-xl-8 col-xl-offset-2"> | ||
8 | - <img src="{% static 'img/amadeus.png' %}" class="img-responsive center-block logo-login " alt="logo amadeus"> | ||
9 | - </div> | 7 | + <div class="col-sm-8 col-sm-offset-2 col-md-8 col-md-offset-2 col-xs-8 col-xs-offset-2 col-lg-8 col-lg-offset-2 col-xl-8 col-xl-offset-2"> |
8 | + <img src="{% static 'img/amadeus.png' %}" class="img-responsive center-block logo-login " alt="logo amadeus"> | ||
9 | + </div> | ||
10 | </div> | 10 | </div> |
11 | </div> | 11 | </div> |
12 | <div class="row"> | 12 | <div class="row"> |
13 | <div class="col-md-8 col-md-offset-3 col-sm-10 col-sm-offset-2 col-xs-12 col-xs-offset-1 col-lg-8 col-lg-offset-3 col-xl-8 col-xl-offset-3"> | 13 | <div class="col-md-8 col-md-offset-3 col-sm-10 col-sm-offset-2 col-xs-12 col-xs-offset-1 col-lg-8 col-lg-offset-3 col-xl-8 col-xl-offset-3"> |
14 | - {% if success %} | ||
15 | - <div class="alert alert-success alert-dismissible" role="alert"> | ||
16 | - <button type="button" class="close" data-dismiss="alert" aria-label="Close"> | ||
17 | - <span aria-hidden="true">×</span> | ||
18 | - </button> | ||
19 | - <ul> | ||
20 | - <li>{{ success }}</li> | ||
21 | - </ul> | ||
22 | - </div> | ||
23 | - {% elif danger %} | ||
24 | - <div class="alert alert-danger alert-dismissible" role="alert"> | ||
25 | - <button type="button" class="close" data-dismiss="alert" aria-label="Close"> | ||
26 | - <span aria-hidden="true">×</span> | ||
27 | - </button> | ||
28 | - <ul> | ||
29 | - <li>{{ danger }}</li> | ||
30 | - </ul> | ||
31 | - </div> | ||
32 | - {% endif %} | ||
33 | <div class="card"> | 14 | <div class="card"> |
34 | <div class="card-block"> | 15 | <div class="card-block"> |
35 | - <form class="form-group " method="post" action=""> | ||
36 | - <div class="col-md-12 col-xs-12 col-lg-10 col-lg-offset-1 col-sm-12"> | ||
37 | - {% csrf_token %} | ||
38 | - <div class="form-group is-empty"> | ||
39 | - <p>{% trans "We have sent instructions to set up your password, if an account exists with the email entered. You should receive them soon." %}</p> | ||
40 | - <p>{% trans "If you do not receive an email, please make sure you entered the address you registered, and check the spam folder." %}</p> | ||
41 | - </div> | ||
42 | - <div class="form-group"> | ||
43 | - <a href="{% url 'core:home' %}" class="btn btn-default btn-raised" >{% trans 'Back' %}</a> | ||
44 | - </div> | 16 | + <div class="row"> |
17 | + <div class="col-md-12 text-center"> | ||
18 | + <h2 style="color:#43a251"><strong>{% trans "Reset Your Password" %}</strong></h2> | ||
19 | + </div> | ||
20 | + </div> | ||
21 | + <div class="col-md-12 col-xs-12 col-lg-10 col-lg-offset-1 col-sm-12"> | ||
22 | + <div class="form-group is-empty"> | ||
23 | + <p>{% trans "We have sent instructions to set up your password, if an account exists with the email entered. You should receive them soon." %}</p> | ||
24 | + <p>{% trans "If you do not receive an email, please make sure you entered the address you registered, and check the spam folder." %}</p> | ||
25 | + </div> | ||
26 | + <div class="form-group"> | ||
27 | + <a href="{% url 'core:home' %}" class="btn btn-default btn-raised" >{% trans 'Back' %}</a> | ||
45 | </div> | 28 | </div> |
46 | - </form> | 29 | + </div> |
30 | + </br> | ||
47 | </div> | 31 | </div> |
48 | </div> | 32 | </div> |
49 | </div> | 33 | </div> |
50 | </div> | 34 | </div> |
35 | +</br> | ||
51 | {% endblock content %} | 36 | {% endblock content %} |
core/templates/registration/passwor_reset_form.html
@@ -3,58 +3,58 @@ | @@ -3,58 +3,58 @@ | ||
3 | {% block content%} | 3 | {% block content%} |
4 | 4 | ||
5 | <div class="row"> | 5 | <div class="row"> |
6 | - <div class="col-sm-6 col-sm-offset-4 col-md-6 col-md-offset-4 col-xs-6 col-xs-offset-4 col-lg-6 col-lg-offset-4 col-xl-6 col-xl-offset-4 "> | ||
7 | - <div class="col-sm-8 col-sm-offset-2 col-md-8 col-md-offset-2 col-xs-8 col-xs-offset-2 col-lg-8 col-lg-offset-2 col-xl-8 col-xl-offset-2"> | ||
8 | - <img src="{% static 'img/amadeus.png' %}" class="img-responsive center-block logo-login " alt="logo amadeus"> | ||
9 | - </div> | ||
10 | - </div> | 6 | + <div class="col-sm-6 col-sm-offset-4 col-md-6 col-md-offset-4 col-xs-6 col-xs-offset-4 col-lg-6 col-lg-offset-4 col-xl-6 col-xl-offset-4 "> |
7 | + <div class="col-sm-8 col-sm-offset-2 col-md-8 col-md-offset-2 col-xs-8 col-xs-offset-2 col-lg-8 col-lg-offset-2 col-xl-8 col-xl-offset-2"> | ||
8 | + <img src="{% static 'img/amadeus.png' %}" class="img-responsive center-block logo-login " alt="logo amadeus"> | ||
9 | + </div> | ||
10 | + </div> | ||
11 | </div> | 11 | </div> |
12 | <div class="row"> | 12 | <div class="row"> |
13 | <div class="col-md-8 col-md-offset-3 col-sm-10 col-sm-offset-2 col-xs-12 col-xs-offset-1 col-lg-8 col-lg-offset-3 col-xl-8 col-xl-offset-3"> | 13 | <div class="col-md-8 col-md-offset-3 col-sm-10 col-sm-offset-2 col-xs-12 col-xs-offset-1 col-lg-8 col-lg-offset-3 col-xl-8 col-xl-offset-3"> |
14 | - {% if success %} | ||
15 | - <div class="alert alert-success alert-dismissible" role="alert"> | ||
16 | - <button type="button" class="close" data-dismiss="alert" aria-label="Close"> | ||
17 | - <span aria-hidden="true">×</span> | ||
18 | - </button> | ||
19 | - <ul> | ||
20 | - <li>{{ success }}</li> | ||
21 | - </ul> | ||
22 | - </div> | ||
23 | - {% elif danger %} | ||
24 | - <div class="alert alert-danger alert-dismissible" role="alert"> | ||
25 | - <button type="button" class="close" data-dismiss="alert" aria-label="Close"> | ||
26 | - <span aria-hidden="true">×</span> | ||
27 | - </button> | ||
28 | - <ul> | ||
29 | - <li>{{ danger }}</li> | ||
30 | - </ul> | ||
31 | - </div> | ||
32 | - {% endif %} | ||
33 | <div class="card"> | 14 | <div class="card"> |
34 | <div class="card-block"> | 15 | <div class="card-block"> |
16 | + <div class="row"> | ||
17 | + <div class="col-md-12 text-center"> | ||
18 | + <h2 style="color:#43a251"><strong>{% trans "Reset Your Password" %}</strong></h2> | ||
19 | + </div> | ||
20 | + </div> | ||
35 | <form class="form-group " method="post" action=""> | 21 | <form class="form-group " method="post" action=""> |
36 | - <div class="col-md-12 col-xs-12 col-lg-10 col-lg-offset-1 col-sm-12"> | 22 | + <div class="col-md-10 col-md-offset-1"> |
37 | {% csrf_token %} | 23 | {% csrf_token %} |
24 | + {% if form.email.errors %} | ||
25 | + <div class="row"> | ||
26 | + </br> | ||
27 | + <div class="alert alert-danger alert-dismissible" role="alert"> | ||
28 | + <button type="button" class="close" data-dismiss="alert" aria-label="Close"> | ||
29 | + <span aria-hidden="true">×</span> | ||
30 | + </button> | ||
31 | + <ul> | ||
32 | + {% for error in form.email.errors %} | ||
33 | + <li>{{ error }}</li> | ||
34 | + {% endfor %} | ||
35 | + </ul> | ||
36 | + </div> | ||
37 | + </div> | ||
38 | + {% endif %} | ||
38 | <div class="form-group is-empty"> | 39 | <div class="form-group is-empty"> |
39 | - <label for="inputEmail" class="ccontrol-label"> {% trans 'E-mail' %}</label> | 40 | + <label for="inputEmail" class="ccontrol-label"> {% trans 'E-mail' %}</label> |
40 | <input name="email" type="email" class="form-control" id="inputEmail" placeholder="Email" {% if email %}value="{{form.email}}"{% endif %}> | 41 | <input name="email" type="email" class="form-control" id="inputEmail" placeholder="Email" {% if email %}value="{{form.email}}"{% endif %}> |
41 | - </div> | ||
42 | - <div class="row"> | ||
43 | - <div class="col-md-6"> | ||
44 | - <div class="form-group send-reset-email"> | ||
45 | - <a href="#" type="submite" class="btn btn-raised btn-primary">{% trans 'Send' %}</a> | 42 | + </div> |
43 | + <div class="row"> | ||
44 | + <div class="col-md-6 col-xs-6 col-sm-6 col-lg-6 text-right"> | ||
45 | + <div class="form-group"> | ||
46 | + <button type="submite" class="btn btn-raised btn-primary">{% trans 'Send' %}</button> | ||
46 | </div> | 47 | </div> |
47 | - </div> | ||
48 | - <div class="col-md-6"> | 48 | + </div> |
49 | + <div class="col-md-6 col-xs-6 col-sm-6 col-lg-6 text-left"> | ||
49 | <div class="form-group"> | 50 | <div class="form-group"> |
50 | <a href="{% url 'core:home' %}" class="btn btn-default btn-raised" >{% trans 'Back' %}</a> | 51 | <a href="{% url 'core:home' %}" class="btn btn-default btn-raised" >{% trans 'Back' %}</a> |
51 | </div> | 52 | </div> |
52 | - </div> | ||
53 | - | ||
54 | - </div> | ||
55 | - | 53 | + </div> |
54 | + </div> | ||
56 | </div> | 55 | </div> |
57 | - </form> | 56 | + </form> |
57 | + </br> | ||
58 | </div> | 58 | </div> |
59 | </div> | 59 | </div> |
60 | </div> | 60 | </div> |
core/urls.py
@@ -20,7 +20,6 @@ router.register(r'subjectapi', SubjectViewSet) | @@ -20,7 +20,6 @@ router.register(r'subjectapi', SubjectViewSet) | ||
20 | urlpatterns = [ | 20 | urlpatterns = [ |
21 | url(r'^$', views.login, name='home'), | 21 | url(r'^$', views.login, name='home'), |
22 | url(r'^register/$', views.RegisterUser.as_view(), name='register'), | 22 | url(r'^register/$', views.RegisterUser.as_view(), name='register'), |
23 | - url(r'^remember_password/$', views.remember_password, name='remember_password'), | ||
24 | url(r'^logout/$', auth_views.logout, {'next_page': 'core:home'}, name='logout'), | 23 | url(r'^logout/$', auth_views.logout, {'next_page': 'core:home'}, name='logout'), |
25 | url(r'^notification/([0-9]+)/$', views.processNotification, name='notification_read'), | 24 | url(r'^notification/([0-9]+)/$', views.processNotification, name='notification_read'), |
26 | url(r'^getNotifications/$', views.getNotifications, name='getNotifications'), | 25 | url(r'^getNotifications/$', views.getNotifications, name='getNotifications'), |
@@ -44,5 +43,3 @@ urlpatterns = [ | @@ -44,5 +43,3 @@ urlpatterns = [ | ||
44 | url(r'^done/$', password_reset_complete,{'template_name':'registration/passwor_reset_complete.html'}), | 43 | url(r'^done/$', password_reset_complete,{'template_name':'registration/passwor_reset_complete.html'}), |
45 | 44 | ||
46 | ] | 45 | ] |
47 | - | ||
48 | - |
core/views.py
@@ -52,28 +52,6 @@ class RegisterUser(CreateView, NotificationMixin): | @@ -52,28 +52,6 @@ class RegisterUser(CreateView, NotificationMixin): | ||
52 | def create_account(request): | 52 | def create_account(request): |
53 | return render(request, "create_account.html") | 53 | return render(request, "create_account.html") |
54 | 54 | ||
55 | - | ||
56 | -def remember_password(request): | ||
57 | - context = {} | ||
58 | - if request.POST: | ||
59 | - email = request.POST['email'] | ||
60 | - registration = request.POST['registration'] | ||
61 | - if email and registration: | ||
62 | - subject = _('Recover your password') | ||
63 | - message = _('Hello {0}, \nRecover your password to use your account.\nNumber of registration: {1}\nLink for recuver password.\n\nRespectfully,\nTeam Amadeus.'.format(request.user,registration)) | ||
64 | - try: | ||
65 | - send_mail(subject, message, settings.DEFAULT_FROM_EMAIL, [email],fail_silently=False) | ||
66 | - context['success'] = 'Email successfully sent' | ||
67 | - except BadHeaderError: | ||
68 | - context['email'] = email | ||
69 | - context['registration'] = registration | ||
70 | - context['danger'] = 'E-mail does not send' | ||
71 | - else: | ||
72 | - context['email'] = email | ||
73 | - context['registration'] = registration | ||
74 | - context['danger'] = 'E-mail does not send' | ||
75 | - return render(request, "remember_password.html",context) | ||
76 | - | ||
77 | def login(request): | 55 | def login(request): |
78 | context = {} | 56 | context = {} |
79 | 57 |