diff options
| -rw-r--r-- | source/blog.js | 77 |
1 files changed, 39 insertions, 38 deletions
diff --git a/source/blog.js b/source/blog.js index a45267e..22a7cfc 100644 --- a/source/blog.js +++ b/source/blog.js @@ -19,45 +19,46 @@ class Blog { fs.readdir('./blog/', (err, files) => { if (err) { logger.Error(`Error reading directory ${err}`) - rej(false) - } - - this.blog = new Map() - files.forEach(file => { - try { - this.blog.set(file.replace('.md', ''), fs.readFileSync(path.resolve(`./blog/${file}`), 'utf-8', (err, data) => { - if (err) { - logger.Error(err) - return - } - return data - })) - } catch (err) { - logger.Error(err) - } - }) - this.blog.forEach((value, key) => { - const regex = /# (.*)\nDate: (.*)\n---(.*?)---/s - const match = value.match(regex) + rej(null) + } else { + this.blog = new Map() + files.forEach(file => { + try { + this.blog.set(file.replace('.md', ''), fs.readFileSync(path.resolve(`./blog/${file}`), 'utf-8', (err, data) => { + if (err) { + logger.Error(err) + return + } + return data + })) + } catch (err) { + logger.Error(err) + rej(null) + } + }) + this.blog.forEach((value, key) => { + const regex = /# (.*)\nDate: (.*)\n---(.*?)---/s + const match = value.match(regex) - if (match) { - const [, title, date, description] = match - this.blog.set(key, { - title: title, - date: new Date(date), - short: description, - body: md.render(value) - }) - } else { - this.blog.set(key, { - title: undefined, - date: undefined, - short: undefined, - body: md.render(value) - }) - } - }) - res(this.#OrderByDate(this.blog)) + if (match) { + const [, title, date, description] = match + this.blog.set(key, { + title: title, + date: new Date(date), + short: description, + body: md.render(value) + }) + } else { + this.blog.set(key, { + title: undefined, + date: undefined, + short: undefined, + body: md.render(value) + }) + } + }) + res(this.#OrderByDate(this.blog)) + } }) }) } |
