const SiteSettings = require('../models/siteSettingsModel'); exports.getSettings = async (req, res) => { try { const settings = await SiteSettings.getSettings(); res.status(200).json({ status: 'success', data: { settings }, }); } catch (err) { res.status(500).json({ status: 'error', message: err.message, }); } }; exports.updateSettings = async (req, res) => { try { // getSettings handles finding or creating let settings = await SiteSettings.getSettings(); // Update fields if (req.body.checkout) { settings.checkout = { ...settings.checkout.toObject(), ...req.body.checkout }; } // Add other settings updates here as needed (topBar, footer, etc.) if (req.body.topBar) settings.topBar = { ...settings.topBar.toObject(), ...req.body.topBar }; if (req.body.footer) settings.footer = { ...settings.footer.toObject(), ...req.body.footer }; await settings.save(); res.status(200).json({ status: 'success', data: { settings }, }); } catch (err) { res.status(500).json({ status: 'error', message: err.message, }); } };