コード例 #1
0
        public ResultadoCambioContrasena Cambiar(string idUsuario, string nuevaContrasena,
                                                 IServicioNotificacion <NotificacionCambioContrasena> servicioNotificacion)
        {
            Usuario usuario = BuscarUsuario(idUsuario);

            if (ValidarContrasenaEsRepetida(usuario, nuevaContrasena))
            {
                return
                    (CrearRespuestaCambioContrasenaInvalida(ErrorCambioContrasena.ContrasenaRepetida));
            }

            if (ValidarContrasenaTieneLongitudMinima(nuevaContrasena))
            {
                return
                    (CrearRespuestaCambioContrasenaInvalida(ErrorCambioContrasena.LongitudMinimaInvalida));
            }

            if (ValidarContrasenaEsCompleja(nuevaContrasena))
            {
                return
                    (CrearRespuestaCambioContrasenaInvalida(ErrorCambioContrasena.ComplejidadIncorrecta));
            }

            ActualizarContrasena(idUsuario, nuevaContrasena);

            servicioNotificacion.Enviar(new NotificacionCambioContrasena {
                Usuario = usuario
            });

            return(new ResultadoCambioContrasena {
                ContrasenaActualizada = true
            });
        }
コード例 #2
0
        public ResultadoCambioContrasena Cambiar(string idUsuario, string nuevaContrasena,
            IServicioNotificacion<NotificacionCambioContrasena> servicioNotificacion)
        {
            Usuario usuario = BuscarUsuario(idUsuario);

            if (ValidarContrasenaEsRepetida(usuario, nuevaContrasena))
            {
                return
                    CrearRespuestaCambioContrasenaInvalida(ErrorCambioContrasena.ContrasenaRepetida);
            }

            if (ValidarContrasenaTieneLongitudMinima(nuevaContrasena))
            {
                return 
                    CrearRespuestaCambioContrasenaInvalida(ErrorCambioContrasena.LongitudMinimaInvalida);
            }
            
            if (ValidarContrasenaEsCompleja(nuevaContrasena))
            {
                return 
                    CrearRespuestaCambioContrasenaInvalida(ErrorCambioContrasena.ComplejidadIncorrecta);
            }

            ActualizarContrasena(idUsuario, nuevaContrasena);

            servicioNotificacion.Enviar(new NotificacionCambioContrasena{Usuario = usuario});

            return new ResultadoCambioContrasena { ContrasenaActualizada = true };
        }
コード例 #3
0
        public void Resetear(string idUsuario, IServicioNotificacion <NotificacionReseteoContrasena> servicioNotificacion)
        {
            Usuario usuario = BuscarUsuario(idUsuario);

            string nuevaContrasena = ServicioGeneracionContrasena.Generar();

            ActualizarContrasena(idUsuario, nuevaContrasena);

            servicioNotificacion.Enviar(new NotificacionReseteoContrasena {
                Usuario = usuario
            });
        }
コード例 #4
0
        public void Resetear(string idUsuario, IServicioNotificacion<NotificacionReseteoContrasena> servicioNotificacion)
        {
            Usuario usuario = BuscarUsuario(idUsuario);

            string nuevaContrasena = ServicioGeneracionContrasena.Generar();
            
            ActualizarContrasena(idUsuario, nuevaContrasena);

            servicioNotificacion.Enviar(new NotificacionReseteoContrasena{Usuario = usuario});
        }