"use server"; import { prisma } from '@/lib/prisma'; import { revalidatePath } from 'next/cache'; export async function getSiteSettings() { try { const settings = await prisma.siteSetting.findUnique({ where: { id: 'singleton' } }); // Default fallback values if not initialized const defaultSettings = { siteName: "Afrohub", siteSlogan: "La plateforme de référence pour l'entrepreneuriat africain.", contactEmail: "support@afrohub.com", contactPhone: "+225 00 00 00 00 00", address: "Abidjan, Côte d'Ivoire", facebookUrl: "", twitterUrl: "", instagramUrl: "", linkedinUrl: "", footerText: "© 2025 Afrohub. Tous droits réservés.", homeBlogShow: true, homeBlogTitle: "Derniers Articles", homeBlogSubtitle: "Toutes les actualités de l'entrepreneuriat africain.", homeBlogCount: 3, homeBlogSelection: "latest", homeBlogIds: [], homeBlogCategories: [], homeCategories: ["Technologie & IT", "Agriculture & Agrobusiness", "Mode & Textile", "Cosmétique & Beauté"] }; if (!settings) return defaultSettings; return settings; } catch (error) { console.error("Failed to fetch settings:", error); return null; } } export async function updateSiteSettings(data: any) { try { const settings = await prisma.siteSetting.upsert({ where: { id: 'singleton' }, update: data, create: { id: 'singleton', ...data } }); revalidatePath('/settings'); revalidatePath('/', 'layout'); return { success: true, settings }; } catch (error) { console.error("Failed to update settings:", error); return { success: false, error: "Erreur lors de la mise à jour des paramètres" }; } }