def changeUser(request): """ *Vista para la modificacion de datos del usuario actual en el sistema. Modificación de los datos propios del usuario actual.* :param request: HttpRequest necesario para modificar los datos de usuario, es la solicitud de la acción. :param args: Argumentos para el modelo ``AbstractBaseUser``. :param kwargs: Keyword Arguments para la el modelo ``AbstractBaseUser``. :return: Proporciona la pagina ``changeuser.html`` con el formulario correspondiente """ if request.method == 'POST': postdata = request.POST.copy() userForm = CambiarUsuarioForm(postdata, instance=request.user) if userForm.is_valid(): userForm.save() # logger.info('El usuario ' + request.user.username + ' ha modificado sus datos personales dentro del sistema') return HttpResponseRedirect("/main/") else: userForm = CambiarUsuarioForm(instance=request.user) return render(request, "usuario/changeuser.html", {'userForm': userForm, 'user': request.user})
def changeAnyUser(request, id_usuario): """ *Vista para la modificacion de usuarios en el sistema. Función válida solo para el usuario con rol de Administrador.* :param request: HttpRequest necesario para modificar los datos de usuario, es la solicitud de la acción. :param id_usuario: Identificador del usuario el cual se desea modificar. :return: Proporciona la pagina ``changeanyuser.html`` con el formulario correspondiente. """ usuarios = Usuario.objects.get(pk=id_usuario) if request.method == 'POST': postdata = request.POST.copy() form = CambiarUsuarioForm(postdata, instance=usuarios) if form.is_valid(): form.save() # logger.info('El usuario ' + request.user.username + ' ha modificado el usuario ' + # usuarios.username + ' dentro del sistema') return HttpResponseRedirect("/userlist/") else: form = CambiarUsuarioForm(instance=usuarios) return render(request, "usuario/changeanyuser.html", {'form': form, 'usuario': usuarios, 'user': request.user}, )