1.0
This commit is contained in:
@@ -205,19 +205,29 @@ class VNCServerApp {
|
||||
const modal = document.getElementById('serverModal');
|
||||
const title = document.getElementById('modalTitle');
|
||||
const form = document.getElementById('serverForm');
|
||||
|
||||
console.log('서버 정보2:', server); // 디버깅용
|
||||
|
||||
|
||||
if (server) {
|
||||
title.textContent = '서버 편집';
|
||||
document.getElementById('serverUser').value = server.user;
|
||||
document.getElementById('serverIp').value = server.ip;
|
||||
document.getElementById('serverCategory').value = server.category || '';
|
||||
document.getElementById('serverTitle').value = server.title || '';
|
||||
document.getElementById('serverDescription').value = server.description || '';
|
||||
document.getElementById('serverPassword').value = server.password || '';
|
||||
document.getElementById('serverArgument').value = server.argument || '';
|
||||
document.getElementById('serverIp').value = server.IP;
|
||||
document.getElementById('serverCategory').value = server.Category || '';
|
||||
document.getElementById('serverTitle').value = server.Title || '';
|
||||
document.getElementById('serverDescription').value = server.Description || '';
|
||||
document.getElementById('serverPassword').value = server.Password || '';
|
||||
document.getElementById('serverArgument').value = server.Argument || '';
|
||||
// 편집 모드 플래그 설정
|
||||
modal.dataset.editMode = 'true';
|
||||
modal.dataset.editUser = server.User;
|
||||
modal.dataset.editIp = server.IP;
|
||||
} else {
|
||||
title.textContent = '서버 추가';
|
||||
form.reset();
|
||||
// 추가 모드 플래그 설정
|
||||
modal.dataset.editMode = 'false';
|
||||
delete modal.dataset.editUser;
|
||||
delete modal.dataset.editIp;
|
||||
}
|
||||
|
||||
modal.classList.remove('hidden');
|
||||
@@ -346,10 +356,18 @@ class VNCServerApp {
|
||||
}
|
||||
|
||||
async saveServer() {
|
||||
const serverUser = document.getElementById('serverUser').value;
|
||||
const serverIp = document.getElementById('serverIp').value;
|
||||
const userName = document.getElementById('userName')?.value || '';
|
||||
const modal = document.getElementById('serverModal');
|
||||
const isEditMode = modal.dataset.editMode === 'true';
|
||||
|
||||
if (!userName) {
|
||||
this.showError('사용자 이름이 설정되지 않았습니다. 먼저 설정에서 사용자 이름을 입력해주세요.');
|
||||
return;
|
||||
}
|
||||
|
||||
const serverData = {
|
||||
user: serverUser,
|
||||
user: userName,
|
||||
ip: serverIp,
|
||||
category: document.getElementById('serverCategory').value,
|
||||
title: document.getElementById('serverTitle').value,
|
||||
@@ -359,8 +377,19 @@ class VNCServerApp {
|
||||
};
|
||||
|
||||
try {
|
||||
const url = serverUser && serverIp ? `${this.apiBase}/update` : `${this.apiBase}/add`;
|
||||
const method = serverUser && serverIp ? 'PUT' : 'POST';
|
||||
let url, method;
|
||||
|
||||
if (isEditMode) {
|
||||
// 편집 모드: 원본 사용자명과 IP를 쿼리 파라미터로 전달
|
||||
const originalUser = modal.dataset.editUser;
|
||||
const originalIp = modal.dataset.editIp;
|
||||
url = `${this.apiBase}/update/${encodeURIComponent(originalUser)}/${encodeURIComponent(originalIp)}`;
|
||||
method = 'PUT';
|
||||
} else {
|
||||
// 추가 모드
|
||||
url = `${this.apiBase}/add`;
|
||||
method = 'POST';
|
||||
}
|
||||
|
||||
const response = await fetch(url, {
|
||||
method: method,
|
||||
@@ -382,13 +411,16 @@ class VNCServerApp {
|
||||
}
|
||||
|
||||
async editServer(user, ip) {
|
||||
console.log('편집 서버 호출:', { user, ip }); // 디버깅용
|
||||
try {
|
||||
const response = await fetch(`${this.apiBase}/get/${encodeURIComponent(user)}/${encodeURIComponent(ip)}`);
|
||||
if (!response.ok) throw new Error('서버 정보를 불러올 수 없습니다.');
|
||||
|
||||
const server = await response.json();
|
||||
console.log('서버 정보:', server); // 디버깅용
|
||||
this.showServerModal(server);
|
||||
} catch (error) {
|
||||
console.error('편집 서버 오류:', error); // 디버깅용
|
||||
this.showError('서버 정보를 불러오는 중 오류가 발생했습니다: ' + error.message);
|
||||
}
|
||||
}
|
||||
@@ -533,6 +565,7 @@ class VNCServerApp {
|
||||
// 서버 목록 렌더링
|
||||
if (hasServers) {
|
||||
categoryData.servers.forEach(server => {
|
||||
console.log('서버 데이터:', server); // 디버깅용
|
||||
const serverData = {
|
||||
serverName: `${server.User || server.user}@${server.Title || server.title}`,
|
||||
userName: server.User || server.user,
|
||||
@@ -542,6 +575,7 @@ class VNCServerApp {
|
||||
serverDescription: server.Description || server.description,
|
||||
serverArgument: server.Argument || server.argument
|
||||
};
|
||||
console.log('렌더링할 서버 데이터:', serverData); // 디버깅용
|
||||
html += this.renderTemplate('serverItemTemplate', serverData);
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user