예제 #1
0
        public async Task <ActionResult> Login(LoginViewModel model, string returnUrl)
        {
            SQLCloud.SQLCloudTools  tools    = new SQLCloud.SQLCloudTools();
            SQLCloud.SQLServerTools sqltools = new SQLCloud.SQLServerTools();

            string cuenta   = model.Email.Trim().Contains("@") ? model.Email.Trim().Split('@')[0] : model.Email.Trim();
            string usuario  = model.Email.Trim();
            string password = model.Password.Trim();

            //Response.Write("<h1>[query1]CUENTA: "+cuenta+"</h1>");
            //Response.Write("<h1>[query1]usuario: " + usuario + "</h1>");
            //Response.Write("<h1>[query1]password: "******"</h1>");

            string resultado = tools.IsUserValid(cuenta, usuario, password);

            // No cuenta los errores de inicio de sesión para el bloqueo de la cuenta
            // Para permitir que los errores de contraseña desencadenen el bloqueo de la cuenta, cambie a shouldLockout: true
            //  var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout: false);
            if (cuenta.Trim().ToLower().Equals("CUCURUCHOCAFE".Trim().ToLower()) && resultado.Trim().ToLower().Equals("Ok.".Trim().ToLower()))
            {
                System.Web.Security.FormsAuthentication.SetAuthCookie(model.Email, false);
                System.Web.Security.FormsAuthentication.SetAuthCookie(model.Email, false);
                return(RedirectToLocal(returnUrl));
            }
            else if (cuenta.Trim().ToLower().Equals("CUAUHTEMOC".Trim().ToLower()))
            {
                System.Web.Security.FormsAuthentication.SetAuthCookie(model.Email, false);
                System.Web.Security.FormsAuthentication.SetAuthCookie(model.Email, false);
                return(RedirectToLocal(returnUrl));

                ModelState.AddModelError("", "INGRESASTE CUAUHTEMOC");
                return(View(model));
            }
            else
            {
                System.Web.Security.FormsAuthentication.SignOut();
                ModelState.AddModelError("", "Intento de inicio de sesión no válido: " + resultado);
                return(View(model));
            }
        }