Ejemplo n.º 1
0
        public LoginPage()
        {
            InitializeComponent();

            LoginPageData = new LoginPageData
            {
                UserName = "",
                Password = "",
                Message  = ""
            };

            BindingContext = this;
        }
        public async Task <IActionResult> Login(string p, string returnUrl = null)
        {
            ViewData["ReturnUrl"] = returnUrl;

            var email    = Request.Form["login-form-username"];
            var password = Request.Form["login-form-password"];

            if (ModelState.IsValid)
            {
                if (email != "" && password != "")
                {
                    if (Convert.ToString(siteConfig["Login"]) == email && Convert.ToString(siteConfig["Password"]) == password)
                    {
                        var claims = new List <Claim> {
                            new Claim(ClaimTypes.NameIdentifier, email)
                        };

                        var userIdentity = new ClaimsIdentity(claims, "login");

                        ClaimsPrincipal principal = new ClaimsPrincipal(userIdentity);

                        await HttpContext.SignInAsync(principal);

                        if (returnUrl == null)
                        {
                            return(Content("<script language='javascript' type='text/javascript'>window.location = '/dashboard';</script>"));
                        }
                        else
                        {
                            return(Content("<script language='javascript' type='text/javascript'>window.location = '" + returnUrl + "';</script>"));//RedirectToLocal(returnUrl);
                        }
                    }
                    else
                    {
                        ModelState.AddModelError("invalid", "Invalid login, please try again.");
                    }
                }
                else
                {
                    ModelState.AddModelError("invalid", "You have empty required fields.");
                }
            }

            var pageData = new LoginPageData()
            {
                Logout = false
            };

            return(PartialView("Response", pageData));
        }