KyrosDev's picture
新增 AutoCAD 版本管理支援
0db726e
/**
* Configuration for KSTools License & Version Manager
* Loads dual Supabase configuration from backend API
*/
// 應用程式配置(從 API 動態載入)
window.APP_CONFIG = {
// 應用程式資訊
APP_NAME: 'KSTools License & Version Manager',
VERSION: '2.1.0',
// 授權系統 Supabase 配置 (Project 1)
SUPABASE_LICENSE_URL: null,
SUPABASE_LICENSE_ANON_KEY: null,
// 版本系統 Supabase 配置 (Project 2)
SUPABASE_VERSION_URL: null,
SUPABASE_VERSION_ANON_KEY: null,
// 載入狀態
CONFIG_LOADED: false
};
// 簡單直接的配置載入
async function loadConfig() {
try {
// 檢測是否為本機開發環境
const isLocalDev = window.location.hostname === 'localhost' ||
window.location.hostname === '127.0.0.1';
console.log('🔄 Loading dual Supabase config...');
const response = await fetch('/api/frontend-config');
if (response.ok) {
const config = await response.json();
window.APP_CONFIG = { ...window.APP_CONFIG, ...config };
window.APP_CONFIG.CONFIG_LOADED = true;
console.log('✅ Config loaded:', {
hasLicenseUrl: !!config.SUPABASE_LICENSE_URL,
hasLicenseKey: !!config.SUPABASE_LICENSE_ANON_KEY,
hasVersionUrl: !!config.SUPABASE_VERSION_URL,
hasVersionKey: !!config.SUPABASE_VERSION_ANON_KEY
});
// 發送配置載入完成事件
window.dispatchEvent(new CustomEvent('configLoaded', { detail: config }));
} else {
// 只在本機開發環境允許沒有配置
if (isLocalDev) {
console.warn('⚠️ Config load failed - using dev mode');
window.APP_CONFIG.CONFIG_LOADED = true;
window.dispatchEvent(new CustomEvent('configLoaded', { detail: {} }));
} else {
console.error('❌ Config load failed in production');
window.APP_CONFIG.CONFIG_LOADED = false;
}
}
} catch (error) {
// 檢測是否為本機開發環境
const isLocalDev = window.location.hostname === 'localhost' ||
window.location.hostname === '127.0.0.1';
// 只在本機開發環境允許沒有配置
if (isLocalDev) {
console.error('❌ Config error - using dev mode:', error);
window.APP_CONFIG.CONFIG_LOADED = true;
window.dispatchEvent(new CustomEvent('configLoaded', { detail: {} }));
} else {
console.error('❌ Config error in production:', error);
window.APP_CONFIG.CONFIG_LOADED = false;
}
}
}
// 立即載入配置
loadConfig();