|
|
var express = require('express'); let res = require('express/lib/response'); var router = express.Router(); //fileStream ermöglicht Lesen und Schreiben auf Festplatte
var fs = require('fs'); const { ServerResponse } = require('http');
//let blog = [];
//erstellt JSONObjekt
let rawdata = fs.readFileSync('./public/models/blog.json'); //wandelt JSONObjekt in JsObjekt
let blogInhalt = JSON.parse(rawdata);
/* GET home page. */ router.route('/') .get((req, res, next) => { // => Pfeilfunktion: ersetzt function()
for (i = 0; i < blogInhalt.length; i++) { console.log(blogInhalt[i].id, ".", blogInhalt[i].title); } res.send({ blogInhalt }); }) .post((req, res, next) => {
/*let blogeintrag = []; let title = req.body.title; let username = req.body.username; let date = req.body.date; let text = req.body.text; console.log(title); blogeintrag.push(title, username, date, text); blog.push(blogeintrag); */ let blogID;
if (blogInhalt.length == 0) { blogID = 1; } else { blogID = (blogInhalt[blogInhalt.length - 1].id) + 1; }
try { if (!req.body.file) { res.send({ status: false, message: "No file received" }); } else { let file = req.body.file; file.mv('./uploads/' + file.name); res.send('freude...' + file.name); console.log("Datei empfangen"); } } catch (err) { res.status(500).send(err); }
let blogeintrag = { id: blogID, title: req.body.title, username: req.body.username, date: req.body.date, text: req.body.text, file: req.body.file }
console.log(blogeintrag);
//hänge blogeintrag an blogInhalt
blogInhalt.push(blogeintrag);
let date = JSON.stringify(blogInhalt, null, 2);
fs.writeFileSync('./public/models/blog.json', date);
res.render('blogPost', { title: 'Nächster Post' }) });
router.get('/newPost', function (req, res, next) { res.render('blogPost', { title: 'BlogEintrag' }); });
router.get('/:postID', function (req, res, next) { let blogID = req.params.postID;
for (i = 0; i < blogInhalt.length; i++) { if (blogInhalt[i].id == blogID) { console.log(blogInhalt[i].id, blogInhalt[i].title); res.send({ ID: blogInhalt[i].id, Titel: blogInhalt[i].title }); } } res.send({ "text: ": "Kein entsprechender Eintrag gefunden!" }) console.log('Kein entsprechender Eintrag gefunden.');
});
module.exports = router;
|