Spaces:
Running
Running
| 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, | |
| }); | |
| } | |
| }; | |