UNPKG

1.17 kBJavaScriptView Raw
1var router = require("express").Router(),
2 renderer = require('../lib/renderer'),
3 fs = require("fs"),
4 models = require("../lib/models");
5
6models.use(Git);
7
8router.get("/misc/syntax-reference", _getSyntaxReference);
9router.post("/misc/preview", _postPreview);
10router.get("/misc/existence", _getExistence);
11
12function _getSyntaxReference(req, res) {
13 res.render('syntax');
14}
15
16function _postPreview(req, res) {
17 res.render('preview', {
18 content: renderer.render(req.body.data)
19 });
20}
21
22function _getExistence(req, res) {
23
24 if (!req.query.data) {
25 res.send(JSON.stringify({data: []}));
26 return;
27 }
28
29 var result = [],
30 page,
31 n = req.query.data.length;
32
33 req.query.data.forEach(function(pageName, idx) {
34 (function(name, index) {
35 page = new models.Page(name);
36 if (!fs.existsSync(page.pathname)) {
37 result.push(name);
38 }
39 if (index == (n - 1)) {
40 res.send(JSON.stringify({data: result}));
41 }
42 })(pageName, idx);
43 });
44}
45
46router.all('*', function(req, res) {
47 res.locals.title = "404 - Not found";
48 res.statusCode = 404;
49 res.render('404.jade');
50});
51
52module.exports = router;