private static void ChangePasswordReceived(object sender, JsonClient.JsonMessageResponceArgs e) { LastSessionToken = string.Empty; ChangePasswordResponce responce = e.ResponceMessage as ChangePasswordResponce; if (responce == null) { Console.WriteLine("Invalid responce" + e.ResponceMessage.MessageName); } else { if (responce.OK) { Console.WriteLine("Password Change OK"); Console.WriteLine(responce.Responce); Console.WriteLine(responce.SessionID); LastSessionToken = responce.SessionID; } else { Console.WriteLine("Password Change Failed"); Console.WriteLine(responce.Responce); } } ClearWait(); }
protected ChangePasswordResponce ChangePassword(ChangePasswordRequest request) { ChangePasswordResponce responce = new ChangePasswordResponce(); responce.OK = false; if (Config.AllowRegistration && request != null) { string uid = GetSessionDataS(request.SessionID, ValidLoginString); string tokenSalt = DB.GetTokenSaltFromUID(uid); var crypto = CheckPassword(uid, tokenSalt, request.OldPassword); if (crypto != null) { string newHash = HashPassword(request.NewPassword, Convert.ToBase64String(crypto.IV)); if (DB.UpdateUserPassword(uid, newHash)) { responce.OK = true; responce.Responce = "Updated"; SendUserUpdate(uid); } else { responce.Responce = "Invalid New Password"; } } else { responce.Responce = "Invalid Credentials"; } } return(responce); }