|
- const express = require("express");
- const router = express.Router();
- const Article = require("../models/article");
- const article = require("../models/article");
- const { findByIdAndDelete } = require("../models/article");
- const config = require("../config");
- pass = config.users.pass;
-
- router.get("/new", (req, res) => {
- res.render("articles/new", { article: new Article() });
- });
-
- router.get("/:slug", async (req, res) => {
- const article = await Article.findOne({ slug: req.params.slug });
- if (article == null) res.redirect("/");
- res.render("articles/show", { article: article });
- });
-
- router.post("/", async (req, res) => {
- let article = new Article({
- title: req.body.title,
- description: req.body.description,
- markdown: req.body.markdown,
- });
- if (req.body.password == pass) {
- try {
- article = await article.save();
- res.redirect("/articles/" + article.slug);
- } catch (e) {
- console.log(e);
- res.render("articles/new", { article: article });
- }
- }
- else {
- res.render("articles/new", { article: article });
- }
- });
-
- router.delete("/:id", async (req, res) => {
- await Article.findByIdAndDelete(req.params.id);
- res.redirect("/");
- });
-
- module.exports = router;
|