Skip to content

Commit ec7f0ba

Browse files
author
Vicky
committed
fix: lint errors in admin.js and admin.html
Signed-off-by: Vicky <[email protected]>
1 parent 324a1f1 commit ec7f0ba

File tree

2 files changed

+57
-88
lines changed

2 files changed

+57
-88
lines changed

mcpgateway/static/admin.js

Lines changed: 54 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -6899,63 +6899,73 @@ window.loadAuthHeaders = loadAuthHeaders;
68996899

69006900
console.log("🛡️ ContextForge MCP Gateway admin.js initialized");
69016901

6902-
69036902
// ===================================================================
69046903
// BULK IMPORT MODAL WIRING
69056904
// ===================================================================
69066905

69076906
function clearBulkImportResult() {
6908-
const resultEl = safeGetElement("import-result", true);
6909-
if (resultEl) resultEl.innerHTML = "";
6910-
const indicator = safeGetElement("import-indicator", true);
6911-
if (indicator) indicator.classList.add("hidden");
6907+
const resultEl = safeGetElement("import-result", true);
6908+
if (resultEl) {
6909+
resultEl.innerHTML = "";
6910+
}
6911+
const indicator = safeGetElement("import-indicator", true);
6912+
if (indicator) {
6913+
indicator.classList.add("hidden");
6914+
}
69126915
}
69136916

69146917
function setupBulkImportModal() {
6915-
const openBtn = safeGetElement("open-bulk-import", true);
6916-
const modal = safeGetElement("bulk-import-modal", true);
6917-
const backdrop = safeGetElement("bulk-import-backdrop", true);
6918-
const closeBtn = safeGetElement("close-bulk-import", true);
6919-
6920-
if (!openBtn || !modal) return;
6921-
if (openBtn.dataset.wired === "1") return; // prevent double wiring
6922-
openBtn.dataset.wired = "1";
6923-
6924-
// OPEN → clear results, open modal, focus JSON/FILE
6925-
openBtn.addEventListener("click", (e) => {
6926-
e.preventDefault();
6927-
clearBulkImportResult();
6928-
openModal("bulk-import-modal");
6929-
setTimeout(() => {
6930-
const ta = modal.querySelector('textarea[name="tools_json"]');
6931-
const file = modal.querySelector('input[type="file"]');
6932-
(ta || file)?.focus?.();
6933-
}, 0);
6918+
const openBtn = safeGetElement("open-bulk-import", true);
6919+
const modal = safeGetElement("bulk-import-modal", true);
6920+
const backdrop = safeGetElement("bulk-import-backdrop", true);
6921+
const closeBtn = safeGetElement("close-bulk-import", true);
6922+
6923+
if (!openBtn || !modal) {
6924+
return;
6925+
}
6926+
if (openBtn.dataset.wired === "1") {
6927+
return; // prevent double wiring
6928+
}
6929+
openBtn.dataset.wired = "1";
6930+
6931+
// OPEN → clear results, open modal, focus JSON/FILE
6932+
openBtn.addEventListener("click", (e) => {
6933+
e.preventDefault();
6934+
clearBulkImportResult();
6935+
openModal("bulk-import-modal");
6936+
setTimeout(() => {
6937+
const ta = modal.querySelector('textarea[name="tools_json"]');
6938+
const file = modal.querySelector('input[type="file"]');
6939+
(ta || file)?.focus?.();
6940+
}, 0);
6941+
});
6942+
6943+
// CLOSE BUTTON → close & clear
6944+
if (closeBtn) {
6945+
closeBtn.addEventListener("click", (e) => {
6946+
e.preventDefault();
6947+
closeModal("bulk-import-modal", "import-result");
69346948
});
6949+
}
69356950

6936-
// CLOSE BUTTON → close & clear
6937-
if (closeBtn) {
6938-
closeBtn.addEventListener("click", (e) => {
6939-
e.preventDefault();
6940-
closeModal("bulk-import-modal", "import-result");
6941-
});
6942-
}
6951+
// BACKDROP → close & clear
6952+
if (backdrop) {
6953+
backdrop.addEventListener("click", () => {
6954+
closeModal("bulk-import-modal", "import-result");
6955+
});
6956+
}
69436957

6944-
// BACKDROP → close & clear
6945-
if (backdrop) {
6946-
backdrop.addEventListener("click", () => {
6947-
closeModal("bulk-import-modal", "import-result");
6948-
});
6958+
// ESC → close & clear
6959+
document.addEventListener("keydown", (e) => {
6960+
if (e.key === "Escape" && AppState.isModalActive("bulk-import-modal")) {
6961+
closeModal("bulk-import-modal", "import-result");
69496962
}
6950-
6951-
// ESC → close & clear
6952-
document.addEventListener("keydown", (e) => {
6953-
if (e.key === "Escape" && AppState.isModalActive("bulk-import-modal")) {
6954-
closeModal("bulk-import-modal", "import-result");
6955-
}
6956-
});
6963+
});
69576964
}
69586965

69596966
document.addEventListener("DOMContentLoaded", () => {
6960-
try { setupBulkImportModal(); } catch (_) { /* no-op */ }
6967+
try {
6968+
setupBulkImportModal();
6969+
} catch (_) {
6970+
}
69616971
});

mcpgateway/templates/admin.html

Lines changed: 3 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -966,49 +966,7 @@ <h3 class="text-lg font-bold dark:text-gray-200">Add New Tool</h3>
966966
>
967967
+ Bulk Import Tools
968968
</button>
969-
<!-- Right before </body> tag -->
970-
<script>
971-
// Super simple version - no dependencies
972-
window.addEventListener('load', function() {
973-
console.log('Setting up bulk import...');
974-
975-
const button = document.getElementById('open-bulk-import');
976-
const modal = document.getElementById('bulk-import-modal');
977-
978-
console.log('Button found:', !!button);
979-
console.log('Modal found:', !!modal);
980-
981-
if (button && modal) {
982-
button.onclick = function(e) {
983-
e.preventDefault();
984-
console.log('Button clicked!');
985-
modal.style.display = 'block';
986-
modal.classList.remove('hidden');
987-
return false;
988-
};
989-
990-
// Close button
991-
const closeBtn = document.getElementById('close-bulk-import');
992-
if (closeBtn) {
993-
closeBtn.onclick = function() {
994-
modal.style.display = 'none';
995-
modal.classList.add('hidden');
996-
};
997-
}
998-
999-
// Click backdrop to close
1000-
const backdrop = document.getElementById('bulk-import-backdrop');
1001-
if (backdrop) {
1002-
backdrop.onclick = function() {
1003-
modal.style.display = 'none';
1004-
modal.classList.add('hidden');
1005-
};
1006-
}
1007-
} else {
1008-
console.error('Missing elements!', {button: !!button, modal: !!modal});
1009-
}
1010-
});
1011-
</script>
969+
1012970

1013971
</div>
1014972

@@ -1266,7 +1224,7 @@ <h3 class="text-base font-semibold dark:text-gray-100">Bulk Import Tools</h3>
12661224
<textarea id="tools_json" name="tools_json" rows="8"
12671225
class="mt-1 block w-full rounded-md border border-gray-300 font-mono text-sm shadow-sm
12681226
focus:border-indigo-500 focus:ring-indigo-500 dark:border-gray-700 dark:bg-gray-900 dark:text-gray-300"
1269-
placeholder='[{"name":"tool_name","url":"https://...","integration_type":"REST","request_type":"GET"}]'></textarea>
1227+
placeholder="[{&quot;name&quot;:&quot;tool_name&quot;,&quot;url&quot;:&quot;https://...&quot;,&quot;integration_type&quot;:&quot;REST&quot;,&quot;request_type&quot;:&quot;GET&quot;}]"></textarea>
12701228

12711229
<div>
12721230
<label class="block text-sm font-medium dark:text-gray-300" for="tools_file">Or upload JSON file</label>
@@ -3877,6 +3835,7 @@ <h3 class="text-lg font-medium text-gray-900 dark:text-gray-100">
38773835
</div>
38783836
</div>
38793837
</div>
3838+
</div>
38803839
<!-- Scripts -->
38813840
<script>
38823841
// Build mapping objects using your existing tools, resources, and prompts arrays

0 commit comments

Comments
 (0)