public async Task <ActionResult> Login(AccountViewModels.LoginViewModel model, string returnUrl)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            // This doesn't count login failures towards account lockout
            // To enable password failures to trigger account lockout, change to shouldLockout: true
            var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout : false);

            switch (result)
            {
            case SignInStatus.Success:
                return(RedirectToLocal(returnUrl));

            case SignInStatus.LockedOut:
                return(View("Lockout"));

            case SignInStatus.RequiresVerification:
                return(RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe }));

            case SignInStatus.Failure:
            default:
                ModelState.AddModelError("", "Invalid login attempt.");
                return(View(model));
            }
        }
Example #2
0
        public bool Login(AccountViewModels.LoginViewModel Acount)
        {
            string m = Request.Url.Host;

            ThanhVien thanhvien = AccoutAPIControl.Login(Acount);

            //SendMailToUserAccessAccount(thanhvien);
            if (thanhvien != null)
            {
                Session["ThanhVien"] = thanhvien;
                return(true);
            }
            return(false);
        }
Example #3
0
        public async Task <ActionResult> Login(AccountViewModels.LoginViewModel model, string returnUrl)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            BearerToken token;

            using (var client = new HttpClient())
            {
                var tokenRequest =
                    new List <KeyValuePair <string, string> >
                {
                    new KeyValuePair <string, string>("grant_type", "password"),
                    new KeyValuePair <string, string>("username", model.Email),
                    new KeyValuePair <string, string>("password", model.Password)
                };

                HttpContent encodedRequest = new FormUrlEncodedContent(tokenRequest);

                var response = await client.PostAsync(BaseUrl + "Token", encodedRequest);


                if (response.IsSuccessStatusCode)
                {
                    token = response.Content.ReadAsAsync <BearerToken>().Result;

                    // Store token in ASP.NET Session State
                    Session[TokenString] = token.AccessToken;
                    Session[AuthService.TokenExpireDate] = token.Expires;

                    //Initialize user (singleton)

                    Models.Domain.User.Instance.Token = token;
                    Models.Domain.User.Instance.Email = token.UserName;

                    User user = await GetTeacherInfo(token.UserName);

                    Models.Domain.User.Instance.Id = user.Id;


                    return(RedirectToLocal(returnUrl));
                }

                ModelState.AddModelError("", "Error while logging user in = " + response.StatusCode);
                return(View(model));
            }
        }
Example #4
0
        public async Task <ActionResult> Login(AccountViewModels.LoginViewModel model, string returnUrl)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            // This doesn't count login failures towards account lockout
            // To enable password failures to trigger account lockout, change to shouldLockout: true
            var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout : false);


            switch (result)
            {
            case SignInStatus.Success:
                var user = await UserManager.FindByEmailAsync(model.Email);

                this.SignInManager.SignIn(user, model.RememberMe, true);
                var identity = User.Identity as ClaimsIdentity;
                identity.AddClaims(new List <Claim>(
                                       new[]
                {
                    new Claim(ClaimTypes.NameIdentifier, user.Id.ToString()),
                    new Claim(ClaimTypes.Name, user.Email)
                }
                                       ));

                var aspnetuserole = GetUserRoles(user.Email);

                aspnetuserole.ForEach(r => identity.AddClaim(new Claim(ClaimTypes.Role, r)));
                return(RedirectToAction("CompleteLogin", new { ReturnUrl = returnUrl }));

            //return RedirectToLocal(returnUrl);
            case SignInStatus.LockedOut:
                return(View("Lockout"));

            case SignInStatus.RequiresVerification:
                return(RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe }));

            case SignInStatus.Failure:
            default:
                ModelState.AddModelError("", "Invalid login attempt.");
                //Danger("Invalid login attempt", false);
                return(View("Login", model));
            }
        }
 //[ValidateAntiForgeryToken]
 public async Task <IHttpActionResult> Login([FromBody] AccountViewModels.LoginViewModel model, string returnUrl = null)
 {
     try
     {
         string passwordhash = "password";
         using (MD5 md5Hash = MD5.Create())
         {
             passwordhash = PasswordHashHelper.GetMd5Hash(md5Hash, model.Password);
         }
         using (Entities db = new Entities())
         {
             var products   = db.products.ToList();
             var aspnetuser =
                 db.AspNetUsers.Where(usr => usr.Email == model.Email && usr.PasswordHash == passwordhash).FirstOrDefault();
             if (aspnetuser != null)
             {
                 //var roleId=db.UserRoleId(aspnetuser.Id);
                 var firstOrDefaultUserRoleId = aspnetuser.AspNetRoles.FirstOrDefault();
                 if (firstOrDefaultUserRoleId != null)
                 {
                     model.RoleId = firstOrDefaultUserRoleId.Id;
                 }
                 model.IsDisable = aspnetuser.IsDisable;
                 model.UserId    = aspnetuser.Id;
                 return(Ok(model));
             }
             else
             {
                 return(Ok(false));
             }
         }
     }
     catch (Exception ex)
     {
         return(Ok(false));
     }
 }
Example #6
0
 public Service.EntityModel.ThanhVien Login(AccountViewModels.LoginViewModel TaiKhoan)
 {
     return(ThanhVienService.KiemTraDangNhap(TaiKhoan.TaiKhoan, TaiKhoan.MatKhau));
 }