- aggiunto componenti per Home Template... ma ancora da provare

- sistemato catprods
- Sistemato menu
This commit is contained in:
Surya Paolo
2025-09-22 19:09:02 +02:00
parent 4a05ddee50
commit 08cf4b6d9f
31 changed files with 475 additions and 31 deletions

10
src/server/db/connect.js Normal file
View File

@@ -0,0 +1,10 @@
// @ts-check
const mongoose = require('mongoose');
const { env } = require('../config/env');
export async function connectDB() {
if (mongoose.connection.readyState === 1) return;
mongoose.set('strictQuery', true);
await mongoose.connect(env.MONGO_URI);
console.log('[mongo] connected');
}

59
src/server/db/seed.js Normal file
View File

@@ -0,0 +1,59 @@
const fs = require('fs');
const path = require('path');
const url = require('url');
// const { connectDB } = require('./connect');
const { HomeModel } = require('../models/Home');
const { EventModel } = require('../models/Event');
const { PostModel } = require('../models/Post');
const __dirname = path.dirname(url.fileURLToPath(import.meta.url));
async function run() {
// await connectDB();
// Adatta il percorso se frontend e backend sono separati
const samplePath = path.resolve(__dirname, '../../../src/server/mocks/home.sample.json');
const raw = fs.readFileSync(samplePath, 'utf-8');
const json = JSON.parse(raw);
// Home snapshot
await HomeModel.deleteMany({});
await HomeModel.create({
hero: json.hero,
pillars: json.pillars,
testimonials: json.testimonials,
gallery: json.gallery,
faq: json.faq,
partners: json.partners,
posts: json.posts
});
// Events
await EventModel.deleteMany({});
await EventModel.insertMany(json.events.map((e) => ({
title: e.title,
start: new Date(e.start),
end: e.end ? new Date(e.end) : undefined,
place: e.place,
teaser: e.teaser,
cover: e.cover,
to: e.to
})));
// Posts
await PostModel.deleteMany({});
await PostModel.insertMany(json.posts.map((p) => ({
title: p.title,
date: new Date(p.date),
category: p.category,
teaser: p.teaser,
cover: p.cover,
to: p.to,
bodyMd: `# ${p.title}\n\n${p.teaser}\n`
})));
console.log('[seed] done');
process.exit(0);
}
run().catch((e) => { console.error(e); process.exit(1); });