const { createCrudRoutes } = require('../database/crud'); let db; function init(database) { db = database; } function setupRoutes(app, auth) { app.get('/api/admin/hero-settings', auth.authenticateToken, auth.requireAdmin, (req, res) => { db.all(`SELECT * FROM hero_settings ORDER BY id`, (err, rows) => { if (err) return res.status(500).json({ error: 'Ошибка БД' }); const obj = {}; rows.forEach(r => { obj[r.key] = r.value; }); res.json(obj); }); }); app.put('/api/admin/hero-settings', auth.authenticateToken, auth.requireAdmin, (req, res) => { const entries = req.body; if (!entries || typeof entries !== 'object') return res.status(400).json({ error: 'Неверные данные' }); const stmt = db.prepare(`UPDATE hero_settings SET value = ? WHERE key = ?`); let count = 0; for (const [key, value] of Object.entries(entries)) { stmt.run(value, key, function() { count++; }); } stmt.finalize(); res.json({ message: 'Обновлено', updated: count }); }); createCrudRoutes(app, auth, 'hero_stats', { fields: ['label', 'value', 'is_dynamic', 'sort_order'] }); } module.exports = { init, setupRoutes };