Update profile modal: username text + publish checkbox + editable fields

This commit is contained in:
Kato
2026-09-02 20:14:25 +00:00
parent 89c8a36d8b
commit 890e6c0ad2
3 changed files with 72 additions and 25 deletions
+22 -13
View File
@@ -267,14 +267,18 @@ async function openProfileModal() {
const response = await fetch(PROFILE_URL + '?sessionid=' + encodeURIComponent(sessionid));
console.log('openProfileModal response:', response.status, await response.clone().json());
if (response.ok) {
const data = await response.json();
console.log('openProfileModal data:', data);
if (data.data && Array.isArray(data.data) && data.data.length > 0) {
const user = data.data[0];
document.getElementById('profile-username').value = user.username || '';
document.getElementById('profile-name').value = user.name || '';
document.getElementById('profile-llc').value = user.company || '';
}
const user = await response.json();
console.log('openProfileModal user:', user);
document.getElementById('profile-username-display').textContent = user.username || '';
document.getElementById('profile-name').value = user.name || '';
document.getElementById('profile-company').value = user.company || '';
document.getElementById('profile-email').value = user.email || '';
document.getElementById('profile-homepage').value = user.homepage || '';
document.getElementById('profile-image').value = user.image || '';
document.getElementById('profile-location').value = user.location || '';
document.getElementById('profile-description').value = user.Description || '';
document.getElementById('profile-publish').checked = true;
document.getElementById('profile-edit-fields').classList.remove('hidden');
}
} catch (error) {
console.error('openProfileModal error:', error);
@@ -295,17 +299,22 @@ function logout() {
async function saveProfile() {
const name = document.getElementById('profile-name').value.trim();
const llc = document.getElementById('profile-llc').value.trim();
if (!name || !llc) { alert('Bitte geben Sie Name und LLC-Namen ein.'); return; }
const company = document.getElementById('profile-company').value.trim();
if (!name || !company) { alert('Bitte geben Sie Name und LLC-Namen ein.'); return; }
try {
const response = await fetch(API_URL, {
const response = await fetch(PROFILE_URL, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
username: document.getElementById('profile-username').value,
username: document.getElementById('profile-username-display').textContent,
name: name,
llc: llc
company: company,
email: document.getElementById('profile-email').value,
homepage: document.getElementById('profile-homepage').value,
image: document.getElementById('profile-image').value,
location: document.getElementById('profile-location').value,
Description: document.getElementById('profile-description').value
})
});
console.log('saveProfile response:', response.status, await response.clone().json());