コード例 #1
0
        public ActionResult Registrar(ModUsuarioRegistro modelo)
        {
            if (modelo.ListaPreguntas == null || modelo.ListaPreguntas.Any(x => x.IdPregunta == 0))
            {
                throw new ControllerException(RecErrores.Err_UnaMasPreguntasInvalidas);
            }
            var distinct = modelo.ListaPreguntas.DistinctBy(m => m.IdPregunta).Count();

            if (distinct != modelo.ListaPreguntas.Count)
            {
                throw new ControllerException(RecErrores.Err_RegistrarPreguntas);
            }
            var usuarioTmp = SeguridadDelegate.UsuarioTemporal;

            modelo.IdUsuario = usuarioTmp.IdUsuario;
            modelo.ListaPreguntas.Update(m =>
            {
                m.CodUsuario = usuarioTmp.CodUsuario;
                m.Respuesta  = m.Respuesta.ToLower().EncryptPBKDF2();
            });
            MembresiaDelegate.RegistrarPerfil(modelo);
            usuarioTmp.IdEstado = (int)EnumEstadoUsuario.Activo;
            SeguridadDelegate.UsuarioTemporal = usuarioTmp;
            return(Json(new { esvalido = true }));
        }
コード例 #2
0
 public ActionResult RenovarValidaPaso1(ModRenovarContrasenaPaso1 modelo)
 {
     try
     {
         var renovacion = MembresiaDelegate.ValidarRenovacion(
             modelo.AliasUsuario, modelo.Correo);
         return(PartialView("_RenovarPaso2", renovacion));
     }
     catch (Exception)
     {
         throw new ControllerException(RecErrores.Err_RenovarContrasenaPaso1);
     }
 }
コード例 #3
0
        public ActionResult RenovarValidaPaso2(ModRenovarContrasenaPaso2 modelo)
        {
            var preguntas = modelo.ListaPreguntas;

            if (MembresiaDelegate.ComprobarPreguntasUsuario(modelo.CodUsuario, preguntas))
            {
                return(PartialView("_RenovarPaso3", new ModCambioContrasena
                {
                    CodUsuario = modelo.CodUsuario
                }));
            }
            throw new ControllerException(RecErrores.Err_RenovarContrasenaPaso2);
        }
コード例 #4
0
        public ActionResult Index(string pin)
        {
            var user = SeguridadDelegate.UsuarioTemporal;

            if ((user.RequiereOtp && !user.OtpActivo) &&
                string.IsNullOrEmpty(pin))
            {
                var model = SeguridadDelegate.GenerarCodigo(user.CodUsuario);
                SeguridadDelegate.UsuarioTemporal = user;
                ViewBag.Action = "Index";
                return(PartialView("_CrearClaveAut", model));
            }
            if (!string.IsNullOrEmpty(pin))
            {
                var isCorrectPIN = SeguridadDelegate.ValidarPinAutenticacion(user.CodUsuario, pin);
                if (!isCorrectPIN)
                {
                    throw new ControllerException(RecMensajes.Msj_PinInvalido);
                }
            }
            var paises = GeneralesDelegate.ConsultarPaises();

            ViewBag.ListaPaises = paises;
            var idiomas = GeneralesDelegate.ConsultarIdiomas();

            ViewBag.ListaIdiomas = idiomas;
            var preguntas = MembresiaDelegate.ObtenerPreguntas();

            ViewBag.CollectionPreguntas = preguntas;
            return(PartialView("_Registro", new ModUsuarioRegistro
            {
                ListaPreguntas = new List <ModPreguntaUsuario> {
                    new ModPreguntaUsuario(), new ModPreguntaUsuario(),
                    new ModPreguntaUsuario(), new ModPreguntaUsuario(),
                    new ModPreguntaUsuario()
                }
            }));
        }
コード例 #5
0
 public ActionResult RenovarValidaPaso3(ModCambioContrasena modelo)
 {
     MembresiaDelegate.ActualizarContrasena(modelo);
     return(Json(new { esvalido = true }));
 }
コード例 #6
0
 public ActionResult ActualizaSeguridad(ModCambioContrasena modelo)
 {
     MembresiaDelegate.ActualizarContrasena(modelo);
     return(Json(new { esvalido = true }));
 }