public IHttpActionResult GenerateToken() { int userId = UserSecurity.GetUserId(Thread.CurrentPrincipal.Identity.Name); string token = TokenHandler.GenerateRandomNumber(20); TokenHandler.StoreToken(userId, token); AuthReturnObject response = new AuthReturnObject(token, DateTime.Now, DateTime.Now.AddHours(24), "TokenHandler", "84900"); return(Ok(response)); }
public IHttpActionResult ResetPassword(ResetPasswordRequest request) { int userId = UserSecurity.GetUserId(request.UserName); if (request.SecretCode != null && request.SecretCode == secretResetCode) { ResetUserPassword(request.NewPassword, userId); return(Ok()); } else if (UserSecurity.Login(request.UserName, request.OldPassword)) { //password matches user ResetUserPassword(request.NewPassword, userId); return(Ok()); } return(Content(HttpStatusCode.Unauthorized, "Password or secret code does not match.")); }
/// <summary> /// After user has logged in do some actions /// </summary> public static void OnPostLogon(string userName, string csrUserName = null) { var customerId = UserSecurity.GetUserId(userName); var contact = UserClient.GetCustomer(customerId.ToString(CultureInfo.InvariantCulture), false); if (!string.IsNullOrEmpty(csrUserName)) { CustomerSession.CsrUsername = csrUserName; } if (contact != null) { var lastVisited = contact.ContactPropertyValues.FirstOrDefault(x => x.Name == ContactPropertyValueName.LastVisit); if (lastVisited != null) { lastVisited.DateTimeValue = DateTime.UtcNow; } else { lastVisited = new ContactPropertyValue { Name = ContactPropertyValueName.LastVisit, DateTimeValue = DateTime.UtcNow, ValueType = PropertyValueType.DateTime.GetHashCode() }; contact.ContactPropertyValues.Add(lastVisited); } if (!string.IsNullOrEmpty(csrUserName)) { var lastVisitedByCsr = new ContactPropertyValue { Name = ContactPropertyValueName.LastVisitCSR, DateTimeValue = DateTime.UtcNow, ShortTextValue = string.Format("CSR username: {0}", csrUserName), ValueType = PropertyValueType.DateTime.GetHashCode() }; contact.ContactPropertyValues.Add(lastVisitedByCsr); } UserClient.SaveCustomerChanges(contact.MemberId); } }