Conjunto de cambios 5d13782 en consulta_publica para users


Ignorar:
Fecha y hora:
15/05/2017 13:39:28 (hace 7 años)
Autor:
rudmanmrrod <rudman22@…>
Branches:
master, base, constituyente, estudiantes, general, plan_patria, sala
Children:
f1079be
Parents:
a459423
Mensaje:

Agregado el módulo de recuperación de contraseña, los correos se muestran por la consola

Ubicación:
users
Ficheros:
4 añadidos
3 editados

Leyenda

No modificado
Añadido
Eliminado
  • users/forms.py

    rbe8d917 r5d13782  
    2323    PasswordInput, CheckboxInput
    2424)
    25 
     25from django.contrib.auth.forms import PasswordResetForm, SetPasswordForm
    2626from base.fields import CedulaField
    2727from base.functions import (
     
    274274        model = Perfil
    275275        exclude = ['user','parroquia']
     276       
     277       
     278class PasswordResetForm(PasswordResetForm):
     279    """!
     280    Clase del formulario de resetear contraseña
     281
     282    @author Ing. Leonel P. Hernandez M. (lhernandez at cenditel.gob.ve)
     283    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     284    @date 02-05-2017
     285    @version 1.0.0
     286    """
     287
     288    def __init__(self, *args, **kwargs):
     289        super(PasswordResetForm, self).__init__(*args, **kwargs)
     290        self.fields['email'].widget.attrs.update({'class': 'form-control',
     291                                                  'placeholder': 'Correo'})
     292
     293    def clean(self):
     294        cleaned_data = super(PasswordResetForm, self).clean()
     295        email = cleaned_data.get("email")
     296
     297        if email:
     298            msg = "Error no existe el email"
     299            try:
     300                User.objects.get(email=email)
     301            except:
     302                self.add_error('email', msg)
     303               
     304               
     305
     306class PasswordConfirmForm(SetPasswordForm):
     307    """!
     308    Formulario para confirmar la constraseña
     309
     310    @author Rodrigo Boet (rboet at cenditel.gob.ve)
     311    @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a>
     312    @date 15-05-2017
     313    @version 1.0.0
     314    """
     315    def __init__(self, *args, **kwargs):
     316        super(PasswordConfirmForm, self).__init__(*args, **kwargs)
     317        self.fields['new_password1'].widget.attrs.update({'class': 'form-control',
     318                                                  'placeholder': 'Contraseña Nueva'})
     319        self.fields['new_password2'].widget.attrs.update({'class': 'form-control',
     320                                                  'placeholder': 'Repita su Contraseña'})
  • users/templates/user.login.html

    rbf6bc0b r5d13782  
    2424          </div>
    2525          <div class="row text-center">
    26             <a href="#">¿Olvido su contraseña?</a>
     26            <a href="{% url 'reset' %}">¿Olvido su contraseña?</a>
    2727          </div>
    2828          <div class="row">
  • users/urls.py

    rbe8d917 r5d13782  
    1414# @version 1.0
    1515from django.conf.urls import url
     16from django.contrib.auth.views import *
     17from .forms import PasswordResetForm, PasswordConfirmForm
    1618from .views import *
    1719
     
    2123    url(r'^register$', RegisterView.as_view(), name = "register"),
    2224    url(r'^update/(?P<pk>\d+)$', PerfilUpdate.as_view(), name = "update"),
     25    url(r'^password/reset/$', password_reset,
     26        {'post_reset_redirect': '/password/done/',
     27         'template_name': 'user.reset.html', 'password_reset_form':PasswordResetForm}, name="reset"),
     28    url(r'^password/done/$', password_reset_done,
     29        {'template_name': 'user.passwordreset.done.html'},
     30        name='reset_done'),
     31    url(r'^password/reset/(?P<uidb64>[0-9A-Za-z]+)-(?P<token>.+)/$',
     32        password_reset_confirm,
     33        {'template_name': 'user.passwordreset.confirm.html', 'set_password_form':PasswordConfirmForm,
     34         'post_reset_redirect': '/password/end/'},
     35        name='password_reset_confirm'),
     36    url(r'^password/end/$', password_reset_done,
     37        {'template_name': 'user.passwordreset.end.html'},
     38        name='reset_end'),
    2339]
Nota: Vea TracChangeset para ayuda en el uso del visor de conjuntos de cambios.