diff --git a/packages/frontend/views/templates/post/default.eta b/packages/frontend/views/templates/post/default.eta
new file mode 100644
index 0000000..92f7600
--- /dev/null
+++ b/packages/frontend/views/templates/post/default.eta
@@ -0,0 +1,11 @@
+{{# layout('layout') }}
+
+
+
+
+
+ {{! it.parseMarkdown(it.page.data.content) }}
+
+
+
+
\ No newline at end of file
diff --git a/packages/server/eta/parseMarkdown.js b/packages/server/eta/parseMarkdown.js
index 13e2c5e..8c8d59e 100644
--- a/packages/server/eta/parseMarkdown.js
+++ b/packages/server/eta/parseMarkdown.js
@@ -7,5 +7,12 @@ import { marked } from 'marked'
*/
export default function parseMarkdown(value) {
- return marked.parse(value)
+
+ let result = ''
+
+ if (value) {
+ result = marked.parse(value)
+ }
+
+ return result
}
\ No newline at end of file
diff --git a/packages/server/http/notfound.js b/packages/server/http/notfound.js
index 2804823..218833e 100644
--- a/packages/server/http/notfound.js
+++ b/packages/server/http/notfound.js
@@ -18,6 +18,7 @@ export default async function(fastify, opts) {
*/
fastify.get('/404', async function(request, response) {
+ // create object for handling in template
const page = {
data: {
title: '404'
@@ -26,7 +27,7 @@ export default async function(fastify, opts) {
return response
.code(404)
- .view('../frontend/views/404', {
+ .view('../views/404', {
page: page
})
})
diff --git a/packages/server/http/page.js b/packages/server/http/page.js
index aac8895..51f158a 100644
--- a/packages/server/http/page.js
+++ b/packages/server/http/page.js
@@ -5,7 +5,7 @@ import directusResponseHandler from './../handlers/directusResponse.js'
/**
- * page
+ * Page
*
* @author Björn Hase
* @license http://opensource.org/licenses/MIT The MIT License
@@ -43,4 +43,5 @@ export default async function(fastify, opts) {
fastify.get('/*', async function(request, response) {
return response.view('../views/templates/page/' + response.locals.page.data.template)
})
+
}
\ No newline at end of file
diff --git a/packages/server/http/post.js b/packages/server/http/post.js
index 0f726fe..084e98e 100644
--- a/packages/server/http/post.js
+++ b/packages/server/http/post.js
@@ -1,4 +1,6 @@
-import PageStore from './../stores/post.js'
+import PostStore from './../stores/post.js'
+import directusResponseHandler from './../handlers/directusResponse.js'
+
import path from 'path'
/**
@@ -25,8 +27,8 @@ export default async function(fastify, opts) {
const postStore = new PostStore()
// getting single page
- let post = await store.findOneBySlug(request.params.slug)
- directusResponseHandler.one(post, response)
+ let post = await postStore.findOneBySlug(request.params.slug)
+ directusResponseHandler.single(post, response)
})
diff --git a/packages/server/stores/post.js b/packages/server/stores/post.js
index b0e7152..0c7c718 100644
--- a/packages/server/stores/post.js
+++ b/packages/server/stores/post.js
@@ -1,14 +1,18 @@
import DirectusAbstractStore from './directusAbstract.js'
/**
- * Posts from Directus
+ * Posts from posts
*
+ * @author Björn Hase
+ * @license http://opensource.org/licenses/MIT The MIT License
+ * @link https://gitea.node001.net/HerrHase/super-fastify-directus.git
*
*/
class PostStore extends DirectusAbstractStore {
/**
+ * set name of endpoint
*
*
* @param {string} endpoint
@@ -41,8 +45,8 @@ class PostStore extends DirectusAbstractStore {
'teaser_media.description',
],
filter: {
- status : 'published',
- published_at : {
+ status : 'published',
+ published_at : {
'_nnull': true
}
},
@@ -59,7 +63,7 @@ class PostStore extends DirectusAbstractStore {
* @return {object}
*/
findOneBySlug(slug) {
- return this.items.readOne({
+ return this.items.readByQuery({
fields: [
'title',
'slug',
diff --git a/packages/server/stores/settings.js b/packages/server/stores/settings.js
index 43b737a..264c07f 100644
--- a/packages/server/stores/settings.js
+++ b/packages/server/stores/settings.js
@@ -1,7 +1,7 @@
import DirectusAbstractStore from './directusAbstract.js'
/**
- * Settings
+ * Settings from directus_settings
*
* @author Björn Hase
* @license http://opensource.org/licenses/MIT The MIT License
@@ -11,7 +11,7 @@ import DirectusAbstractStore from './directusAbstract.js'
class SettingsStore extends DirectusAbstractStore {
/**
- *
+ * set name of endpoint
*
* @param {string} endpoint
*
@@ -21,7 +21,7 @@ class SettingsStore extends DirectusAbstractStore {
}
/**
- * getting setting
+ * get settings from endpoint
*
*
* @return {object}