forked from Adleraci/adlerka.top
		
	
		
			
				
	
	
		
			115 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			115 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<script>
 | 
						|
    function changePassword() {
 | 
						|
        const oldPassword = document.getElementById("changeoldPassword").value;
 | 
						|
        const newPassword = document.getElementById("changeNewPassword").value;
 | 
						|
 | 
						|
        const data = new URLSearchParams();
 | 
						|
        data.append("action", "change_password");
 | 
						|
        data.append("old_password", oldPassword);
 | 
						|
        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 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("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.");
 | 
						|
    }
 | 
						|
 | 
						|
    function populateUserInfoFields(userData) {
 | 
						|
        document.getElementById("updateFirstName").value = userData.FirstName || "";
 | 
						|
        document.getElementById("updateLastName").value = userData.LastName || "";
 | 
						|
        document.getElementById("updateNickname").value = userData.Nickname || "";
 | 
						|
        document.getElementById("updateMinecraftNick").value = userData.MinecraftNick || "";
 | 
						|
        document.getElementById("updateNewEmail").value = userData.Email || "";
 | 
						|
    }
 | 
						|
 | 
						|
    async function getUserInfo() {
 | 
						|
        const data = new URLSearchParams();
 | 
						|
        data.append("action", "get_user_info");
 | 
						|
 | 
						|
        const result = await doAccountAction(data, "User info retrieved Successfully!", "User info retrieval failed.", true);
 | 
						|
 | 
						|
        if (result && result.Status === "Success") {
 | 
						|
            populateUserInfoFields(result.UserInfo);
 | 
						|
        }
 | 
						|
    }
 | 
						|
</script>
 | 
						|
 | 
						|
<script defer>
 | 
						|
    getUserInfo();
 | 
						|
</script>
 | 
						|
 | 
						|
<!-- Centralized Status Message -->
 | 
						|
<p id="StatusMessage"></p>
 | 
						|
 | 
						|
<button type="button" onclick="logout()">Logout</button><br>
 | 
						|
 | 
						|
<div class="form-container" id="updateUserProfileForm">
 | 
						|
    <h1>Update User</h1>
 | 
						|
 | 
						|
    <h2>Profile</h2>
 | 
						|
    <label for="updateFirstName">First Name:</label>
 | 
						|
    <input type="text" id="updateFirstName" name="updateFirstName" required><br>
 | 
						|
 | 
						|
    <label for="updateLastName">Last Name:</label>
 | 
						|
    <input type="text" id="updateLastName" name="updateLastName" required><br>
 | 
						|
 | 
						|
    <label for="updateNickname">Nickname:</label>
 | 
						|
    <input type="text" id="updateNickname" name="updateNickname" required><br>
 | 
						|
 | 
						|
    <label for="updateMinecraftNick">Minecraft Nick:</label>
 | 
						|
    <input type="text" id="updateMinecraftNick" name="updateMinecraftNick" required><br>
 | 
						|
 | 
						|
    <button type="button" onclick="updateUserProfile()">Update Profile</button>
 | 
						|
 | 
						|
    <br><br>
 | 
						|
 | 
						|
    <h2>Email</h2>
 | 
						|
 | 
						|
    <label for="updateNewEmail">New Email:</label>
 | 
						|
    <input type="email" id="updateNewEmail" name="updateNewEmail" required><br>
 | 
						|
 | 
						|
    <button type="button" onclick="updateEmail()">Update Email</button>
 | 
						|
 | 
						|
    <br><br>
 | 
						|
 | 
						|
    <h2>Password</h2>
 | 
						|
 | 
						|
    <label for="changeOldPassword">Old Password:</label>
 | 
						|
    <input type="password" id="changeOldPassword" name="changeOldPassword" required><br>
 | 
						|
 | 
						|
    <label for="changeNewPassword">New Password:</label>
 | 
						|
    <input type="password" id="changeNewPassword" name="changeNewPassword" required><br>
 | 
						|
 | 
						|
    <button type="button" onclick="changePassword()">Change Password</button>
 | 
						|
</div>
 | 
						|
 | 
						|
<hr>
 | 
						|
 |