Conjunto 71c82f7 en seiven


Ignorar:
Fecha y hora:
21/08/2017 12:03:01 (hace 7 años)
Autor:
Ing. Roldan D. Vargas G <rvargas@…>
Branches:
master
Children:
eb828eb
Parents:
35822b1
Mensaje:

correcciones en la modificación de datos de perfil debido a contraseña almacenada vacia

Fichero:
1 editado

Leyenda

No modificado
Añadido
Eliminado
  • usuario/views.py

    rda96b55 r71c82f7  
    3232from base.constant import REGISTRO_MESSAGE, UPDATE_MESSAGE, EMAIL_SUBJECT_REGISTRO, CADUCIDAD_LINK_REGISTRO
    3333from base.functions import enviar_correo, calcular_diferencia_fechas
     34from base.models import Institucion
    3435from .forms import AutenticarForm, RegistroForm, OlvidoClaveForm, ModificarClaveForm, PerfilForm
    3536
     
    383384    @version 1.0.0
    384385    """
    385     model = UserProfile
     386    model = User #UserProfile
    386387    form_class = PerfilForm
    387388    template_name = 'usuario.update.html'
     
    414415        @return Retorna el formulario validado y modifica los datos de perfil del usuario
    415416        """
    416         """
     417
    417418        self.object = form.save(commit=False)
    418         usuario = self.request.user
    419         usr = User.objects.get(username=usuario)
    420         institucion = Institucion.objects.get(nombre=form.cleaned_data['institucion'])
    421         cargo = Cargo.objects.get(nombre=form.cleaned_data['cargo'])
    422         correo = form.cleaned_data['correo'].lower()
    423         nombre, apellido = form.cleaned_data['nombre'], form.cleaned_data['apellido']
    424         if usr.first_name!=nombre: usr.first_name = nombre
    425         if usr.last_name!=apellido: usr.last_name = apellido
    426         if usr.email!=correo: usr.email = correo
    427         usr.save()
    428         form.instance.user = usr
    429         form.instance.institucion = institucion
    430         form.instance.cargo = cargo
     419        usr = User.objects.get(username=self.object.username)
     420        self.object.password = usr.password
     421        if self.object.first_name != form.cleaned_data['nombre']:
     422            self.object.first_name = form.cleaned_data['nombre']
     423        if self.object.last_name != form.cleaned_data['apellido']:
     424            self.object.last_name = form.cleaned_data['apellido']
     425        if self.object.email != form.cleaned_data['correo']:
     426            self.object.email = form.cleaned_data['correo']
     427        if form.cleaned_data.get('password', None):
     428            self.object.set_password(form.cleaned_data['password'])
     429
    431430        self.object.save()
    432431
    433         logger.info(u"Se han actualizado los datos del usuario [%s]" % usuario)
    434         """
    435         return super(ModificarPerfilView, self).form_valid(form)
     432        if UserProfile.objects.filter(user__username=str(self.object.username)):
     433            perfil = UserProfile.objects.get(user__username=str(self.object.username))
     434            perfil.ocupacion = form.cleaned_data['ocupacion']
     435            perfil.institucion = Institucion.objects.get(nombre=form.cleaned_data['institucion'])
     436            perfil.save()
     437
     438        messages.info(self.request, UPDATE_MESSAGE)
     439
     440        return HttpResponseRedirect(self.get_success_url())
Nota: Vea TracChangeset para ayuda en el uso del visor de conjuntos de cambios.