inserted directory exists check when rendering md and html, completed index and page html rendering sequence chain

pull/20/head
Ro 4 years ago
parent f6fc242d9c
commit 7243e5ec32

@ -82,7 +82,7 @@ export default class Book {
'/' +
moment(body.created).format('MM') +
'/'
);
).then(() => {
if (body.layout !== 'page') layout = body.layout;
if (body.layout === null || body.layout === 'null') layout = 'page';
var pageWrite =
@ -171,6 +171,8 @@ export default class Book {
resolve(response);
}
});
});
break;
case DataEvent.API_PAGE_DELETE:
this.getPage(id)

@ -7,6 +7,7 @@ const tags_list = require('../../site/tags.json');
const pug = require('pug');
const md = require('markdown-it')('commonmark');
const _ = require('lodash');
const moment = require('moment');
export default class Render {
//--------------------------
@ -28,7 +29,21 @@ export default class Render {
let response = [];
for (let index = 0; index < pages.length; index++) {
const page = pages[index];
let writeFile, template;
let path =
'public/' +
moment(page.metadata.created).format('YYYY') +
'/' +
moment(page.metadata.created).format('MM') +
'/';
if (page.metadata.layout === 'index') {
template = 'content/themes/' + theme + '/index.pug';
writeFile = 'public/index.html';
} else {
writeFile = path + page.metadata.slug + '.html';
template = 'content/themes/' + theme + '/page.pug';
}
let buffed = sanitize(page.content, {
allowedTags: ['del', 'a', 'iframe', 'img'],
allowedAttributes: {
@ -47,13 +62,14 @@ export default class Render {
buffed = new StringUtils().decodeHTML(buffed);
let html = md.render(buffed, { html: true, xhtmlOut: true });
let file = pug.renderFile('content/themes/' + theme + '/index.pug', {
let file = pug.renderFile(template, {
title: page.metadata.title,
default_bg: page.metadata.feature,
content_index: html
content: html
});
fs.writeFile('public/index.html', file, err => {
fs.ensureDir(path).then(() => {
fs.writeFile(writeFile, file, err => {
// throws an error, you could also catch it here
if (err) {
@ -68,7 +84,7 @@ export default class Render {
};
resolve(response);
});
}
});
}
});
}

@ -11,7 +11,7 @@ router.get('/', function (req, res) {
.then(obj => {
settings = obj;
})
.catch(err => {
.catch(() => {
//console.error(err);
});
loadThemes().then(themes => {

Loading…
Cancel
Save