diff options
Diffstat (limited to 'source/readfile.js')
| -rw-r--r-- | source/readfile.js | 60 |
1 files changed, 53 insertions, 7 deletions
diff --git a/source/readfile.js b/source/readfile.js index 394ea2d..b0e0ed2 100644 --- a/source/readfile.js +++ b/source/readfile.js @@ -16,13 +16,13 @@ class ReadFile { this.object = { baseUrl: x.baseUrl, mime: '', - main: this.#Build(), + main: '', types: x.mime, layouts: { header: ` <section id='header'> <nav class='menulist' id='menu-list'> - <img src='' alt='logo'/> + <img class='logo' src='' alt='logo'/> <a class='list' href='/'>Home</a> <a class='list' href='/about'>About</a> <a class='list' href='/blog'>Blog</a> @@ -56,13 +56,60 @@ class ReadFile { } } - GetMain() {return this.object.main} + GetMain(x) { + const data = {} + try { + data.header = ` + <html> + <head> + <title>Welcome to my website!</title> + <link rel='stylesheet' href='/css/prism.css'/> + <link rel='stylesheet' href='/css/main.css'/> + <meta name='description' content='${x.description}'> + <meta name='keywords' content='${x.keywords}'> + </head> + <body> + <section id='main'> + `, + data.footer = ` + </section> + <script src='/js/purify.js'></script> + <script src='/js/main.js'></script> + </body> + </html> + ` + } catch { + data.header = ` + <html> + <head> + <title>Welcome to my website!</title> + <link rel='stylesheet' href='/css/main.css'/> + <link rel='stylesheet' href='/css/prism.css'/> + <meta name='description' content=''> + <meta name='keywords' content=''> + </head> + <body> + <section id='main'> + ` + data.footer = ` + </section> + <script src='/js/purify.js'></script> + <script src='/js/main.js'></script> + </body> + </html> + ` + } + return this.#RemoveSpaces(data.header + data.footer) + } async Create(x) { try { return this.#SetData({data: x, mime: this.object.types}) } catch(err) { try { - return await x.then(output => {return this.#SetData({data: output, mime: this.object.types})}) + return await x.then(output => { + console.log(output) + return this.#SetData({data: output, mime: this.object.types}) + }) } catch (err) { logger.Error(`${err.code}: Failed to create HTML`) } @@ -81,7 +128,7 @@ class ReadFile { } GetFavicon() { const object = { - file: fs.createReadStream('./assets/favicon/favicon.ico').on('error', (err) => { + file: fs.createReadStream('./favicon/favicon.ico').on('error', (err) => { logger.Error(`${err.code}: Failed to get 'favicon.ico'`) return null }), @@ -121,9 +168,8 @@ class ReadFile { object.layouts.data = this.#RemoveSpaces(x.data) return object } - async #GetFileType(x) {return this.object.types[path.extname(`./assets/${x[1]}/${x[2]}`).slice(1)] || 'text/plain'} - #Build() {return fs.readFileSync('./views/layouts/header.html', 'utf-8') + fs.readFileSync('./views/layouts/footer.html', 'utf-8')} #RemoveSpaces(x) {return x.replace(/^(\n)\s+/gm, '$1')} + async #GetFileType(x) {return this.object.types[path.extname(`./assets/${x[1]}/${x[2]}`).slice(1)] || 'text/plain'} } module.exports = ReadFile |
