From 8ecae8170347f6ac734a197ddf1a5bd732f8d1bf Mon Sep 17 00:00:00 2001 From: Krystie Date: Thu, 14 May 2026 00:13:50 -0700 Subject: [PATCH] frontend: gate routine console.log behind window.DASHCADDY_DEBUG Suppress noisy module-load and initialization logs in production. Logs still appear when window.DASHCADDY_DEBUG is set (e.g. during dev). --- status/js/dns-template-selector.js | 12 ++++++++---- status/js/onboarding.js | 30 ++++++++++++++++++------------ 2 files changed, 26 insertions(+), 16 deletions(-) diff --git a/status/js/dns-template-selector.js b/status/js/dns-template-selector.js index 845af68..d0f03a8 100644 --- a/status/js/dns-template-selector.js +++ b/status/js/dns-template-selector.js @@ -6,12 +6,16 @@ (function(window) { 'use strict'; + const debug = (...args) => { + if (window.DASHCADDY_DEBUG) console.log(...args); + }; + class DnsTemplateSelector { constructor(progressTracker) { this.progressTracker = progressTracker; this.modal = null; this.onTemplateSelected = null; - console.log('[DnsTemplateSelector] Module loaded'); + debug('[DnsTemplateSelector] Module loaded'); } /** @@ -216,7 +220,7 @@ * @private */ handleTemplateSelection(template) { - console.log(`[DnsTemplateSelector] Template selected: ${template.id}`); + debug(`[DnsTemplateSelector] Template selected: ${template.id}`); // Close modal this.close(); @@ -235,7 +239,7 @@ * @private */ handleSetupLater() { - console.log('[DnsTemplateSelector] DNS setup deferred'); + debug('[DnsTemplateSelector] DNS setup deferred'); // Mark as deferred in progress tracker if (this.progressTracker) { @@ -316,6 +320,6 @@ } window.DnsTemplateSelector = DnsTemplateSelector; - console.log('[DnsTemplateSelector] Module loaded'); + debug('[DnsTemplateSelector] Module loaded'); })(window); diff --git a/status/js/onboarding.js b/status/js/onboarding.js index f690ade..9ff4d8b 100644 --- a/status/js/onboarding.js +++ b/status/js/onboarding.js @@ -9,6 +9,12 @@ (function() { 'use strict'; + const debug = (...args) => { + if (window.DASHCADDY_DEBUG) { + console.log(...args); + } + }; + let progressTracker; let themeAdapter; let tourManager; @@ -20,7 +26,7 @@ */ async function initializeOnboarding() { try { - console.log('[Onboarding] Initializing system...'); + debug('[Onboarding] Initializing system...'); if (window.__dashcaddySiteConfigLoaded) { try { @@ -30,27 +36,27 @@ // Initialize Error Handler first errorHandler = new ErrorHandler(); - console.log('[Onboarding] Error Handler initialized'); + debug('[Onboarding] Error Handler initialized'); // Initialize Progress Tracker progressTracker = new ProgressTracker('dashcaddy_onboarding'); - console.log('[Onboarding] Progress Tracker initialized'); + debug('[Onboarding] Progress Tracker initialized'); // Initialize Theme Adapter themeAdapter = new ThemeAdapter(); - console.log('[Onboarding] Theme Adapter initialized'); + debug('[Onboarding] Theme Adapter initialized'); // Initialize DNS Template Selector dnsTemplateSelector = new DnsTemplateSelector(progressTracker); - console.log('[Onboarding] DNS Template Selector initialized'); + debug('[Onboarding] DNS Template Selector initialized'); // Initialize Tour Manager tourManager = new TourManager(progressTracker, themeAdapter, dnsTemplateSelector); - console.log('[Onboarding] Tour Manager initialized'); + debug('[Onboarding] Tour Manager initialized'); // Check if tour should auto-start if (tourManager.shouldAutoStart()) { - console.log('[Onboarding] Auto-starting tour for first-time install'); + debug('[Onboarding] Auto-starting tour for first-time install'); await progressTracker.markInstallOnboardingCompleted(); // Wait a bit for page to fully load setTimeout(() => { @@ -59,11 +65,11 @@ } else { const tourCompleted = progressTracker.isTourCompleted(); const currentStep = progressTracker.getCurrentStep(); - console.log(`[Onboarding] Tour not auto-starting (completed: ${tourCompleted}, step: ${currentStep})`); + debug(`[Onboarding] Tour not auto-starting (completed: ${tourCompleted}, step: ${currentStep})`); // If tour is in progress, offer to resume if (!tourCompleted && currentStep > 0) { - console.log('[Onboarding] Tour in progress, can be resumed manually'); + debug('[Onboarding] Tour in progress, can be resumed manually'); } } @@ -81,7 +87,7 @@ getErrorStats: () => errorHandler.getStatistics() }; - console.log('[Onboarding] System initialized successfully'); + debug('[Onboarding] System initialized successfully'); } catch (error) { console.error('[Onboarding] Initialization error:', error); @@ -104,7 +110,7 @@ const clickHandler = () => { if (tourManager) { - console.log('[Onboarding] Starting tour via button click'); + debug('[Onboarding] Starting tour via button click'); tourManager.restartTour(); } else { console.error('[Onboarding] Tour manager not initialized'); @@ -179,6 +185,6 @@ waitForDriver(); } - console.log('[Onboarding] System loaded'); + debug('[Onboarding] System loaded'); })();