'use server'; import { backupService } from '@/services/data-management/backup'; import { revalidatePath } from 'next/cache'; export async function createBackupAction(force: boolean = false) { try { const result = await backupService.createBackup('manual', force); // Invalider le cache de la page pour forcer le rechargement des données SSR revalidatePath('/settings/backup'); if (result === null) { return { success: true, skipped: true, message: 'Sauvegarde sautée : aucun changement détecté. Utilisez "Forcer" pour créer malgré tout.' }; } return { success: true, data: result, message: `Sauvegarde créée : ${result.filename}` }; } catch (error) { console.error('Failed to create backup:', error); return { success: false, error: error instanceof Error ? error.message : 'Erreur lors de la création de la sauvegarde' }; } } export async function verifyDatabaseAction() { try { await backupService.verifyDatabaseHealth(); return { success: true, message: 'Intégrité vérifiée' }; } catch (error) { console.error('Database verification failed:', error); return { success: false, error: error instanceof Error ? error.message : 'Vérification échouée' }; } } export async function refreshBackupStatsAction() { try { // Cette action sert juste à revalider le cache revalidatePath('/settings/backup'); return { success: true }; } catch (error) { console.error('Failed to refresh backup stats:', error); return { success: false }; } }