From fee376102192dc6f24297a7b11324636ace3a07d Mon Sep 17 00:00:00 2001 From: historia <[not public]> Date: Tue, 30 Jun 2026 19:27:37 -0400 Subject: feat: admin gui object CRUD is much nicer --- internal/admin/static/map.js | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'internal/admin/static/map.js') diff --git a/internal/admin/static/map.js b/internal/admin/static/map.js index 85364d5..5bff9d7 100644 --- a/internal/admin/static/map.js +++ b/internal/admin/static/map.js @@ -543,7 +543,12 @@ function renderLocalTab(localObjs) { h += '
'; h += ''; h += ''; - h += ''; + h += '
'; + h += ''; + h += ''; + h += '
'; h += '
'; h += ''; h += ''; @@ -958,6 +963,7 @@ function updateLocalObject(i) { var nameEl = row.querySelector('.local-name'); var descEl = row.querySelector('.local-desc'); var aliasesEl = row.querySelector('.local-aliases'); + var hiddenEl = row.querySelector('.local-hidden'); localObjs[i].name = nameEl ? nameEl.value : ''; var descVal = descEl ? descEl.value : ''; if (descVal) { @@ -970,6 +976,7 @@ function updateLocalObject(i) { } else { localObjs[i].aliases = []; } + localObjs[i].hidden = hiddenEl ? hiddenEl.checked : false; var refObjs = objs.filter(function(o) { return !!o.id; }); setRoomObjects(localObjs.concat(refObjs)); } @@ -1159,7 +1166,10 @@ async function doSavePanel() { } function deleteRoom(id) { - if (!confirm('Delete room #' + id + '?')) return; + var cb = document.getElementById('confirmDelete'); + if (!cb || cb.checked) { + if (!confirm('Delete room #' + id + '?')) return; + } if (mapData && mapData.rooms) { var neighbors = []; if (mapData.links) { @@ -1567,6 +1577,7 @@ function initPanelResize() { var panel = $('#sidePanel'); if (!panel) return; panel.appendChild(handle); + panel.style.width = Math.min(800, window.innerWidth / 3) + 'px'; var startX, startW; handle.addEventListener('mousedown', function(e) { e.preventDefault(); -- cgit v1.2.3