From c076ee028f59be1851f7db2a27c3098a2e74938e Mon Sep 17 00:00:00 2001 From: overcuriousity Date: Mon, 15 Sep 2025 20:44:45 +0200 Subject: [PATCH] main page refinement --- static/js/main.js | 46 ++++++++++++++++++++++---------------------- templates/index.html | 43 ++++++++++++++++++++++++----------------- 2 files changed, 48 insertions(+), 41 deletions(-) diff --git a/static/js/main.js b/static/js/main.js index 1639714..977c3ea 100644 --- a/static/js/main.js +++ b/static/js/main.js @@ -55,7 +55,7 @@ class DNSReconApp { addToGraph: document.getElementById('add-to-graph'), stopScan: document.getElementById('stop-scan'), exportResults: document.getElementById('export-results'), - configureApiKeys: document.getElementById('configure-api-keys'), + configureSettings: document.getElementById('configure-settings'), // Status elements scanStatus: document.getElementById('scan-status'), @@ -74,9 +74,9 @@ class DNSReconApp { modalDetails: document.getElementById('modal-details'), modalClose: document.getElementById('modal-close'), - // API Key Modal elements - apiKeyModal: document.getElementById('api-key-modal'), - apiKeyModalClose: document.getElementById('api-key-modal-close'), + // Settings Modal elements + settingsModal: document.getElementById('settings-modal'), + settingsModalClose: document.getElementById('settings-modal-close'), apiKeyInputs: document.getElementById('api-key-inputs'), saveApiKeys: document.getElementById('save-api-keys'), resetApiKeys: document.getElementById('reset-api-keys'), @@ -153,7 +153,7 @@ class DNSReconApp { this.exportResults(); }); - this.elements.configureApiKeys.addEventListener('click', () => this.showApiKeyModal()); + this.elements.configureSettings.addEventListener('click', () => this.showSettingsModal()); // Enter key support for target domain input this.elements.targetDomain.addEventListener('keypress', (e) => { @@ -173,13 +173,13 @@ class DNSReconApp { }); } - // API Key Modal interactions - if (this.elements.apiKeyModalClose) { - this.elements.apiKeyModalClose.addEventListener('click', () => this.hideApiKeyModal()); + // Settings Modal interactions + if (this.elements.settingsModalClose) { + this.elements.settingsModalClose.addEventListener('click', () => this.hideSettingsModal()); } - if (this.elements.apiKeyModal) { - this.elements.apiKeyModal.addEventListener('click', (e) => { - if (e.target === this.elements.apiKeyModal) this.hideApiKeyModal(); + if (this.elements.settingsModal) { + this.elements.settingsModal.addEventListener('click', (e) => { + if (e.target === this.elements.settingsModal) this.hideSettingsModal(); }); } if (this.elements.saveApiKeys) { @@ -198,7 +198,7 @@ class DNSReconApp { document.addEventListener('keydown', (e) => { if (e.key === 'Escape') { this.hideModal(); - this.hideApiKeyModal(); + this.hideSettingsModal(); } }); @@ -687,7 +687,7 @@ class DNSReconApp { } if (this.elements.targetDomain) this.elements.targetDomain.disabled = true; if (this.elements.maxDepth) this.elements.maxDepth.disabled = true; - if (this.elements.configureApiKeys) this.elements.configureApiKeys.disabled = true; + if (this.elements.configureSettings) this.elements.configureSettings.disabled = true; break; case 'idle': @@ -710,7 +710,7 @@ class DNSReconApp { } if (this.elements.targetDomain) this.elements.targetDomain.disabled = false; if (this.elements.maxDepth) this.elements.maxDepth.disabled = false; - if (this.elements.configureApiKeys) this.elements.configureApiKeys.disabled = false; + if (this.elements.configureSettings) this.elements.configureSettings.disabled = false; break; } } @@ -1931,20 +1931,20 @@ class DNSReconApp { } /** - * Show API Key modal + * Show Settings modal */ - showApiKeyModal() { - if (this.elements.apiKeyModal) { - this.elements.apiKeyModal.style.display = 'block'; + showSettingsModal() { + if (this.elements.settingsModal) { + this.elements.settingsModal.style.display = 'block'; } } /** - * Hide API Key modal + * Hide Settings modal */ - hideApiKeyModal() { - if (this.elements.apiKeyModal) { - this.elements.apiKeyModal.style.display = 'none'; + hideSettingsModal() { + if (this.elements.settingsModal) { + this.elements.settingsModal.style.display = 'none'; } } @@ -1971,7 +1971,7 @@ class DNSReconApp { const response = await this.apiCall('/api/config/api-keys', 'POST', keys); if (response.success) { this.showSuccess(response.message); - this.hideApiKeyModal(); + this.hideSettingsModal(); this.loadProviders(); // Refresh provider status } else { throw new Error(response.error || 'Failed to save API keys'); diff --git a/templates/index.html b/templates/index.html index de5dd2f..e063ab1 100644 --- a/templates/index.html +++ b/templates/index.html @@ -36,17 +36,6 @@ -
- - -
-
-
@@ -104,6 +93,12 @@
+
+ Reconnaissance on a large domain could take very long. Don´t try to scan Google.com. +
+ The main bottleneck is the request to crt.sh which is subject to harsh rate-limits. + The processing is done via a task-queue which operates by the pronciple of highest-priority-first: Long-running-tasks will be done last. +
@@ -187,16 +182,28 @@ -