// controllers/pageController.js
const { Page } = require('../models');

exports.getMenuData = async (req, res) => {
  try {
    const pages = await Page.findAll({
      attributes: ['link', 'name']
    });
    res.json(pages);
  } catch (error) {
    console.error('Fehler beim Abrufen der Seiten:', error);
    res.status(500).json({ message: 'Fehler beim Abrufen der Seiten' });
  }
};

exports.getPageContent = async (req, res) => {
  try {
    const page = await Page.findOne({
      where: { link: req.query.link }
    });
    if (page) {
      res.json({ content: page.content });
    } else {
      res.json({ content: "" });
    }
  } catch (error) {
    console.error('Fehler beim Laden des Seiteninhalts:', error);
    res.status(500).json({ message: 'Fehler beim Laden des Seiteninhalts' });
  }
};

exports.savePageContent = async (req, res) => {
  try {
    const { link, name, content } = req.body;
    let page = await Page.findOne({ where: { link } });
    if (page) {
      page.content = content;
      page.name = name;
    } else {
      page = await Page.create({ link, name, content });
    }
    await page.save();
    res.json({ message: 'Seiteninhalt gespeichert', page });
  } catch (error) {
    console.error('Fehler beim Speichern des Seiteninhalts:', error);
    res.status(500).json({ message: 'Fehler beim Speichern des Seiteninhalts' });
  }
};
