public ActionResult Registracion(Usuario usuario)
 {                 //valido model
     if (ModelState.IsValid)
     {             //valido que las contraseñas sean iguales
         if (usuario.Contrasenia == usuario.ContraseniaConfirm)
         {         //valido captcha
             if (this.IsCaptchaValid("Validate your captcha"))
             {     //valido usuario existente
                 if (usuarioServices.VerificarMailExistente(usuario))
                 { //valido que el usuario existente esté este activo
                     if (usuarioServices.VerificarMailExistenteInactivo(usuario))
                     {
                         usuarioServices.ModificarUsuarioActivo(usuario);
                         Login(usuario);
                         return(RedirectToAction("index", "home"));
                     }
                     else
                     {   //si el mail ya existe, vuelve a la vista y se muestra error
                         ViewBag.ErrorMailExistente = "el email ya se encuentra registrado";
                         return(View(usuario));
                     }
                 }
                 else
                 {   //si el mail no existe, se registra el usuario y se loguea
                     usuarioServices.RegistrarUsuario(usuario);
                     Login(usuario);
                     return(RedirectToAction("index"));
                 }
             }
             else
             {   //si el captcha es incorrecto, vuelve a la vista y se muestra error
                 ViewBag.ErrorCaptcha = "Captcha incorrecto";
                 return(View(usuario));
             }
         }
         else
         {   //si las contraseñas no coinciden, vuelve a la vista y muestra error
             ViewBag.ErrorContraseniaConfirm = "Las contraseñas no coinciden";
             return(View(usuario));
         }
     }
     else
     {     //si las validaciones del modelo son incorrectas vuelve a la vista mostrando los mensajes de error
         { //si las validaciones del modelo son incorrectas vuelve a la vista mostrando los mensajes de error
             return(View(usuario));
         }
     }
 }