Browse Source

Faz mudanças sugeridas

pull/877/head
Eduardo Calil 8 years ago
committed by Leandro Roberto da Silva
parent
commit
d1b2cdc04a
  1. 18
      sapl/base/forms.py
  2. 7
      sapl/base/urls.py
  3. 1
      sapl/templates/base/nova_senha_form.html
  4. 5
      sapl/templates/base/recuperar_senha_completo.html
  5. 2
      sapl/templates/base/recuperar_senha_email.html
  6. 20
      sapl/test_urls.py

18
sapl/base/forms.py

@ -4,7 +4,8 @@ from crispy_forms.layout import HTML, Button, Div, Field, Fieldset, Layout, Row
from django import forms from django import forms
from django.conf import settings from django.conf import settings
from django.contrib.auth import get_user_model from django.contrib.auth import get_user_model
from django.contrib.auth.forms import AuthenticationForm, PasswordResetForm from django.contrib.auth.forms import (AuthenticationForm, PasswordResetForm,
SetPasswordForm)
from django.contrib.auth.models import Group, User from django.contrib.auth.models import Group, User
from django.contrib.auth.password_validation import validate_password from django.contrib.auth.password_validation import validate_password
from django.contrib.contenttypes.models import ContentType from django.contrib.contenttypes.models import ContentType
@ -719,3 +720,18 @@ class RecuperarSenhaForm(PasswordResetForm):
raise ValidationError(msg) raise ValidationError(msg)
return self.cleaned_data return self.cleaned_data
class NovaSenhaForm(SetPasswordForm):
def __init__(self, user, *args, **kwargs):
self.user = user
super(NovaSenhaForm, self).__init__(user, *args, **kwargs)
row1 = to_row(
[('new_password1', 6),
('new_password2', 6)])
self.helper = FormHelper()
self.helper.layout = Layout(
row1,
form_actions(save_label='Enviar'))

7
sapl/base/urls.py

@ -10,7 +10,7 @@ from django.views.generic.base import TemplateView
from sapl.base.views import AutorCrud, ConfirmarEmailView, TipoAutorCrud from sapl.base.views import AutorCrud, ConfirmarEmailView, TipoAutorCrud
from .apps import AppConfig from .apps import AppConfig
from .forms import LoginForm, RecuperarSenhaForm from .forms import LoginForm, NovaSenhaForm, RecuperarSenhaForm
from sapl.settings import EMAIL_SEND_USER from sapl.settings import EMAIL_SEND_USER
from .views import (AppConfigCrud, CasaLegislativaCrud, HelpView, from .views import (AppConfigCrud, CasaLegislativaCrud, HelpView,
RelatorioAtasView, RelatorioHistoricoTramitacaoView, RelatorioAtasView, RelatorioHistoricoTramitacaoView,
@ -39,11 +39,14 @@ recuperar_senha = [
url(r'^recuperar-senha/(?P<uidb64>[0-9A-Za-z_\-]+)/(?P<token>.+)/$', url(r'^recuperar-senha/(?P<uidb64>[0-9A-Za-z_\-]+)/(?P<token>.+)/$',
password_reset_confirm, password_reset_confirm,
{'post_reset_redirect': 'sapl.base:recuperar_senha_completo'}, {'post_reset_redirect': 'sapl.base:recuperar_senha_completo',
'template_name': 'base/nova_senha_form.html',
'set_password_form': NovaSenhaForm},
name='recuperar_senha_confirma'), name='recuperar_senha_confirma'),
url(r'^recuperar-senha/completo/$', url(r'^recuperar-senha/completo/$',
password_reset_complete, password_reset_complete,
{'template_name': 'base/recuperar_senha_completo.html'},
name='recuperar_senha_completo'), name='recuperar_senha_completo'),
] ]

1
sapl/templates/base/nova_senha_form.html

@ -0,0 +1 @@
{% extends "crud/form.html" %}

5
sapl/templates/base/recuperar_senha_completo.html

@ -0,0 +1,5 @@
{% extends "crud/detail.html" %}
{% block table_content %}
A sua senha foi alterada com sucesso! Clique <a href="{% url 'sapl.base:login' %}">aqui</a> e faça seu login.
{% endblock %}

2
sapl/templates/base/recuperar_senha_email.html

@ -4,7 +4,7 @@
<p><a href="{{ protocol }}://{{ domain }}{% url 'sapl.base:recuperar_senha_confirma' uidb64=uid token=token %}"> <p><a href="{{ protocol }}://{{ domain }}{% url 'sapl.base:recuperar_senha_confirma' uidb64=uid token=token %}">
Clique aqui</a></p></br>. Clique aqui</a></p></br>
<p>Caso não tenha solicitado a alteração de sua senha, favor ignorar este e-mail.</p></br> <p>Caso não tenha solicitado a alteração de sua senha, favor ignorar este e-mail.</p></br>

20
sapl/test_urls.py

@ -145,6 +145,7 @@ def test_crudaux_list_do_crud_esta_na_pagina_sistema(url_item, admin_client):
Se encontra em %s.urls Se encontra em %s.urls
""" % (url, app_name) """ % (url, app_name)
apps_url_patterns_prefixs_and_users = { apps_url_patterns_prefixs_and_users = {
'api': { 'api': {
'prefixs': [ 'prefixs': [
@ -158,6 +159,7 @@ apps_url_patterns_prefixs_and_users = {
'/logout', '/logout',
'/ajuda', '/ajuda',
'/email', '/email',
'/recuperar-senha'
]}, ]},
'comissoes': { 'comissoes': {
'users': {'operador_geral': ['/sistema', '/comissao'], 'users': {'operador_geral': ['/sistema', '/comissao'],
@ -235,13 +237,6 @@ apps_url_patterns_prefixs_and_users = {
@pytest.mark.parametrize('url_item', _lista_urls) @pytest.mark.parametrize('url_item', _lista_urls)
def test_urlpatterns(url_item, admin_client): def test_urlpatterns(url_item, admin_client):
urls_reset_password = [
'/recuperar-senha/1/1/',
'/recuperar-senha/completo/',
'/recuperar-senha/email/',
'/recuperar-senha/finalizado/',
]
key, url, var, app_name = url_item key, url, var, app_name = url_item
url = '/' + (url % {v: 1 for v in var}) url = '/' + (url % {v: 1 for v in var})
@ -264,12 +259,11 @@ def test_urlpatterns(url_item, admin_client):
isvalid = True isvalid = True
break break
if url not in urls_reset_password: assert isvalid, """
assert isvalid, """ O prefixo da url (%s) não está no padrão de sua app (%s).
O prefixo da url (%s) não está no padrão de sua app (%s). Os prefixos permitidos são:
Os prefixos permitidos são: %s
%s """ % (url, app_name, prefixs)
""" % (url, app_name, prefixs)
urls_publicas_excecoes = { urls_publicas_excecoes = {

Loading…
Cancel
Save