Exemplo n.º 1
0
        public UserLogin Login(UserEmailPass user)
        {
            string decodeEmail = HttpUtility.UrlDecode(user.Email);

            var    userSalt     = GetSalt(user.Email);
            string passwordHash = _cryptographyService.Hash(user.Password, userSalt.Salt, HASH_ITERATION_COUNT);

            UserLogin response = null;

            if (!String.IsNullOrEmpty(userSalt.Email) && userSalt.Password == passwordHash)
            {
                response = Get(user.Email, passwordHash);

                if (response != null)
                {
                    _authenticationService.LogIn(response);
                }
            }
            return(response);
        }
Exemplo n.º 2
0
        public HttpResponseMessage Login(UserEmailPass user)
        {
            var loginUser = _userService.Login(user);

            if (loginUser != null)
            {
                if (user.Email == null || user.Password == null)
                {
                    string errMsg = "User email or password is not valid, please try again.";
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, new ErrorResponse(errMsg)));
                }
                if (loginUser.UserTypeId == (int)UserTypes.Coach_Mentor && loginUser.IsMentorApproved == null)
                {
                    return(Request.CreateErrorResponse(HttpStatusCode.Unauthorized, " STATUS: Pending Approval"));
                }
                if (!loginUser.IsConfirmed)
                {
                    ModelState.AddModelError("User", "User is not confirmed!");
                    return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
                }

                var response = Request.CreateResponse(HttpStatusCode.OK, new SuccessResponse());

                var tempuserCookie = HttpContext.Current.Request.Cookies["tempuser"];
                if (tempuserCookie != null)
                {
                    var cookie = new CookieHeaderValue("tempuser", "0");
                    cookie.Expires = DateTimeOffset.Now.AddDays(-1);
                    cookie.Domain  = Request.RequestUri.Host;
                    cookie.Path    = "/";
                    response.Headers.AddCookies(new CookieHeaderValue[] { cookie });
                }
                return(response);
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, ModelState));
            }
        }