176 lines
7.1 KiB
JavaScript
176 lines
7.1 KiB
JavaScript
/**
|
|
* Verificador de Status do Sistema de Persistência
|
|
* Verifica se os módulos foram carregados corretamente
|
|
*/
|
|
|
|
(function verificarStatusPersistencia() {
|
|
console.log('🔍 Verificando status do sistema de persistência...');
|
|
|
|
// Verificar após um delay para garantir que tudo foi carregado
|
|
setTimeout(() => {
|
|
const status = {
|
|
AdminConfigManager: typeof AdminConfigManager !== 'undefined',
|
|
BackupManager: typeof BackupManager !== 'undefined',
|
|
ToastManager: typeof ToastManager !== 'undefined',
|
|
adminConfigManager: window.adminConfigManager !== null,
|
|
backupManager: window.backupManager !== null,
|
|
toastManager: window.toastManager !== null
|
|
};
|
|
|
|
console.log('📊 Status do Sistema de Persistência:');
|
|
console.table(status);
|
|
|
|
// Verificar localStorage
|
|
const localStorageKeys = Object.keys(localStorage).filter(key =>
|
|
key.includes('admin') || key.includes('backup') || key.includes('config')
|
|
);
|
|
|
|
console.log('📁 Chaves no localStorage:', localStorageKeys);
|
|
|
|
// Tentar criar instâncias se não existirem
|
|
if (typeof AdminConfigManager !== 'undefined' && !window.adminConfigManager) {
|
|
try {
|
|
window.adminConfigManager = new AdminConfigManager();
|
|
console.log('✅ AdminConfigManager inicializado manualmente');
|
|
} catch (error) {
|
|
console.error('❌ Erro ao inicializar AdminConfigManager:', error);
|
|
}
|
|
}
|
|
|
|
if (typeof BackupManager !== 'undefined' && !window.backupManager) {
|
|
try {
|
|
window.backupManager = new BackupManager();
|
|
console.log('✅ BackupManager inicializado manualmente');
|
|
} catch (error) {
|
|
console.error('❌ Erro ao inicializar BackupManager:', error);
|
|
}
|
|
}
|
|
|
|
if (typeof ToastManager !== 'undefined' && !window.toastManager) {
|
|
try {
|
|
window.toastManager = new ToastManager();
|
|
console.log('✅ ToastManager inicializado manualmente');
|
|
} catch (error) {
|
|
console.error('❌ Erro ao inicializar ToastManager:', error);
|
|
}
|
|
}
|
|
|
|
// Testar funcionalidade básica
|
|
if (window.adminConfigManager) {
|
|
try {
|
|
const config = window.adminConfigManager.getConfig();
|
|
console.log('✅ Configuração atual:', config);
|
|
|
|
// Testar salvamento
|
|
window.adminConfigManager.updateConfig('test.verification', new Date().toISOString());
|
|
console.log('✅ Teste de salvamento realizado');
|
|
|
|
} catch (error) {
|
|
console.error('❌ Erro ao testar AdminConfigManager:', error);
|
|
}
|
|
}
|
|
|
|
// Mostrar resumo
|
|
const totalModulos = Object.keys(status).length;
|
|
const modulosOk = Object.values(status).filter(v => v).length;
|
|
const percentual = (modulosOk / totalModulos * 100).toFixed(1);
|
|
|
|
console.log(`📈 Sistema de Persistência: ${modulosOk}/${totalModulos} módulos OK (${percentual}%)`);
|
|
|
|
if (window.toastManager) {
|
|
if (percentual === '100.0') {
|
|
window.toastManager.success('✅ Sistema de persistência totalmente operacional!');
|
|
} else if (percentual >= '66.7') {
|
|
window.toastManager.warning(`⚠️ Sistema de persistência parcial (${percentual}%)`);
|
|
} else {
|
|
window.toastManager.error(`❌ Sistema de persistência com problemas (${percentual}%)`);
|
|
}
|
|
}
|
|
|
|
}, 3000); // Aguardar 3 segundos para garantir carregamento
|
|
|
|
// Também verificar após 10 segundos (backup)
|
|
setTimeout(() => {
|
|
console.log('🔍 Verificação de backup do sistema de persistência:');
|
|
|
|
if (window.adminConfigManager) {
|
|
try {
|
|
const config = window.adminConfigManager.getConfig();
|
|
console.log('✅ Config após 10s:', {
|
|
appName: config.app.name,
|
|
theme: config.theme.name,
|
|
version: config.version
|
|
});
|
|
} catch (error) {
|
|
console.error('❌ AdminConfigManager ainda com problemas:', error);
|
|
}
|
|
} else {
|
|
console.error('❌ AdminConfigManager não disponível após 10s');
|
|
}
|
|
}, 10000);
|
|
|
|
})();
|
|
|
|
// Função para debug detalhado
|
|
window.debugPersistencia = function() {
|
|
console.group('🔍 Debug Detalhado do Sistema de Persistência');
|
|
|
|
// Verificar cada módulo
|
|
console.log('1. Verificando AdminConfigManager:');
|
|
console.log(' - Tipo:', typeof AdminConfigManager);
|
|
console.log(' - Disponível:', typeof AdminConfigManager !== 'undefined');
|
|
|
|
if (typeof AdminConfigManager !== 'undefined') {
|
|
try {
|
|
const tempManager = new AdminConfigManager();
|
|
console.log(' - Instância criada com sucesso');
|
|
console.log(' - Config padrão:', tempManager.getConfig());
|
|
|
|
// Testar localStorage
|
|
const key = tempManager.configKey;
|
|
const data = localStorage.getItem(key);
|
|
console.log(' - localStorage key:', key);
|
|
console.log(' - Dados no localStorage:', data ? 'Presentes' : 'Ausentes');
|
|
|
|
} catch (error) {
|
|
console.error(' - Erro ao criar instância:', error);
|
|
}
|
|
}
|
|
|
|
console.log('2. Verificando BackupManager:');
|
|
console.log(' - Tipo:', typeof BackupManager);
|
|
console.log(' - Disponível:', typeof BackupManager !== 'undefined');
|
|
|
|
console.log('3. Verificando ToastManager:');
|
|
console.log(' - Tipo:', typeof ToastManager);
|
|
console.log(' - Disponível:', typeof ToastManager !== 'undefined');
|
|
|
|
console.log('4. Verificando variáveis globais:');
|
|
console.log(' - window.adminConfigManager:', window.adminConfigManager);
|
|
console.log(' - window.backupManager:', window.backupManager);
|
|
console.log(' - window.toastManager:', window.toastManager);
|
|
|
|
console.log('5. Verificando localStorage:');
|
|
const relevantKeys = Object.keys(localStorage).filter(key =>
|
|
key.includes('admin') || key.includes('backup') || key.includes('config')
|
|
);
|
|
console.log(' - Chaves relevantes:', relevantKeys);
|
|
relevantKeys.forEach(key => {
|
|
try {
|
|
const data = JSON.parse(localStorage.getItem(key));
|
|
console.log(` - ${key}:`, {
|
|
type: typeof data,
|
|
hasVersion: !!data.version,
|
|
hasAppConfig: !!(data.app || data.application),
|
|
hasTheme: !!(data.theme || data.themes),
|
|
size: JSON.stringify(data).length
|
|
});
|
|
} catch (e) {
|
|
console.log(` - ${key}: (dados inválidos)`);
|
|
}
|
|
});
|
|
|
|
console.groupEnd();
|
|
};
|
|
|
|
console.log('🔍 Sistema de verificação de persistência carregado'); |