149 lines
5.3 KiB
HTML
149 lines
5.3 KiB
HTML
<script>
|
|
function changePassword() {
|
|
const userId = document.getElementById("changeUserId").value;
|
|
const newPassword = document.getElementById("changeNewPassword").value;
|
|
|
|
const data = new URLSearchParams();
|
|
data.append("action", "change_password");
|
|
data.append("user_id", userId);
|
|
data.append("new_password", newPassword);
|
|
|
|
doChangePassword(data, "Password change Successful!", "Password change failed.");
|
|
}
|
|
|
|
function doChangePassword(requestData, successMessage, failureMessage) {
|
|
doAccountAction(requestData, successMessage, failureMessage);
|
|
}
|
|
|
|
function updateUserProfile() {
|
|
const userId = document.getElementById("updateUserIdProfile").value;
|
|
const firstName = document.getElementById("updateFirstName").value;
|
|
const lastName = document.getElementById("updateLastName").value;
|
|
const nickname = document.getElementById("updateNickname").value;
|
|
const minecraftNick = document.getElementById("updateMinecraftNick").value;
|
|
|
|
const data = new URLSearchParams();
|
|
data.append("action", "update_user_profile");
|
|
data.append("user_id", userId);
|
|
data.append("first_name", firstName);
|
|
data.append("last_name", lastName);
|
|
data.append("nickname", nickname);
|
|
data.append("minecraft_nick", minecraftNick);
|
|
|
|
doAccountAction(data, "Profile update Successful!", "Profile update failed.");
|
|
}
|
|
|
|
function updateEmail() {
|
|
const newEmail = document.getElementById("updateNewEmail").value;
|
|
|
|
const data = new URLSearchParams();
|
|
data.append("action", "update_user_email");
|
|
data.append("email", newEmail);
|
|
|
|
doAccountAction(data, "Email update Successful!", "Email update failed.");
|
|
}
|
|
|
|
async function getUserInfo() {
|
|
const userId = document.getElementById("getUserInfoId").value;
|
|
|
|
const data = new URLSearchParams();
|
|
data.append("action", "get_user_info");
|
|
data.append("user_id", userId);
|
|
|
|
const result = await doAccountAction(data, "User info retrieved Successfully!", "User info retrieval failed.");
|
|
|
|
if (result && result.Status === "Success") {
|
|
displayUserInfo(result);
|
|
}
|
|
}
|
|
|
|
function displayUserInfo(userData) {
|
|
const tableContainer = document.getElementById("userInfoTable");
|
|
tableContainer.innerHTML = ""; // Clear previous content
|
|
|
|
const table = document.createElement("table");
|
|
table.border = "1";
|
|
|
|
const headerRow = table.insertRow(0);
|
|
for (const key in userData) {
|
|
const th = document.createElement("th");
|
|
th.appendChild(document.createTextNode(key));
|
|
headerRow.appendChild(th);
|
|
}
|
|
|
|
const dataRow = table.insertRow(1);
|
|
for (const key in userData) {
|
|
const td = document.createElement("td");
|
|
td.appendChild(document.createTextNode(userData[key]));
|
|
dataRow.appendChild(td);
|
|
}
|
|
|
|
tableContainer.appendChild(table);
|
|
}
|
|
</script>
|
|
|
|
<div class="form-container" id="changePasswordForm">
|
|
<h1>Change Password</h1>
|
|
<form>
|
|
<label for="changeUserId">User ID:</label>
|
|
<input type="text" id="changeUserId" name="changeUserId" required>
|
|
|
|
<label for="changeOldPassword">Old Password:</label>
|
|
<input type="password" id="changeOldPassword" name="changeOldPassword" required>
|
|
|
|
<label for="changeNewPassword">New Password:</label>
|
|
<input type="password" id="changeNewPassword" name="changeNewPassword" required>
|
|
|
|
<button type="button" onclick="changePassword()">Change Password</button>
|
|
</form>
|
|
</div>
|
|
|
|
<div class="form-container" id="updateUserProfileForm">
|
|
<h1>Update User Profile</h1>
|
|
<form>
|
|
<label for="updateUserIdProfile">User ID:</label>
|
|
<input type="text" id="updateUserIdProfile" name="updateUserIdProfile" required>
|
|
|
|
<label for="updateFirstName">First Name:</label>
|
|
<input type="text" id="updateFirstName" name="updateFirstName" required>
|
|
|
|
<label for="updateLastName">Last Name:</label>
|
|
<input type="text" id="updateLastName" name="updateLastName" required>
|
|
|
|
<label for="updateNickname">Nickname:</label>
|
|
<input type="text" id="updateNickname" name="updateNickname" required>
|
|
|
|
<label for="updateMinecraftNick">Minecraft Nick:</label>
|
|
<input type="text" id="updateMinecraftNick" name="updateMinecraftNick" required>
|
|
|
|
<button type="button" onclick="updateUserProfile()">Update Profile</button>
|
|
</form>
|
|
</div>
|
|
|
|
<div class="form-container" id="getUserInfoForm">
|
|
<h1>Get User Info</h1>
|
|
<form>
|
|
<label for="getUserInfoId">User ID:</label>
|
|
<input type="text" id="getUserInfoId" name="getUserInfoId" required>
|
|
|
|
<button type="button" onclick="getUserInfo()">Get User Info</button>
|
|
</form>
|
|
</div>
|
|
|
|
<div class="form-container" id="updateUserEmailForm">
|
|
<h1>Update User Email</h1>
|
|
<form>
|
|
<label for="updateNewEmail">New Email:</label>
|
|
<input type="email" id="updateNewEmail" name="updateNewEmail" required>
|
|
|
|
<button type="button" onclick="updateEmail()">Update Email</button>
|
|
</form>
|
|
</div>
|
|
|
|
<button type="button" onclick="logout()">Logout</button>
|
|
|
|
<!-- Include other user action forms similarly -->
|
|
|
|
<!-- Centralized Status Message -->
|
|
<p id="StatusMessage"></p>
|