bugfix for post

develop
HerrHase 2 years ago
parent 560ba036ca
commit 37671d9040

@ -0,0 +1,11 @@
{{# layout('layout') }}
<div class="container">
<div class="grid">
<div class="col-12">
<div class="content">
{{! it.parseMarkdown(it.page.data.content) }}
</div>
</div>
</div>
</div>

@ -7,5 +7,12 @@ import { marked } from 'marked'
*/ */
export default function parseMarkdown(value) { export default function parseMarkdown(value) {
return marked.parse(value)
let result = ''
if (value) {
result = marked.parse(value)
}
return result
} }

@ -18,6 +18,7 @@ export default async function(fastify, opts) {
*/ */
fastify.get('/404', async function(request, response) { fastify.get('/404', async function(request, response) {
// create object for handling in template
const page = { const page = {
data: { data: {
title: '404' title: '404'
@ -26,7 +27,7 @@ export default async function(fastify, opts) {
return response return response
.code(404) .code(404)
.view('../frontend/views/404', { .view('../views/404', {
page: page page: page
}) })
}) })

@ -5,7 +5,7 @@ import directusResponseHandler from './../handlers/directusResponse.js'
/** /**
* page * Page
* *
* @author Björn Hase <me@herr-hase.wtf> * @author Björn Hase <me@herr-hase.wtf>
* @license http://opensource.org/licenses/MIT The MIT License * @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) { fastify.get('/*', async function(request, response) {
return response.view('../views/templates/page/' + response.locals.page.data.template) return response.view('../views/templates/page/' + response.locals.page.data.template)
}) })
} }

@ -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' import path from 'path'
/** /**
@ -25,8 +27,8 @@ export default async function(fastify, opts) {
const postStore = new PostStore() const postStore = new PostStore()
// getting single page // getting single page
let post = await store.findOneBySlug(request.params.slug) let post = await postStore.findOneBySlug(request.params.slug)
directusResponseHandler.one(post, response) directusResponseHandler.single(post, response)
}) })

@ -1,14 +1,18 @@
import DirectusAbstractStore from './directusAbstract.js' import DirectusAbstractStore from './directusAbstract.js'
/** /**
* Posts from Directus * Posts from posts
* *
* @author Björn Hase <me@herr-hase.wtf>
* @license http://opensource.org/licenses/MIT The MIT License
* @link https://gitea.node001.net/HerrHase/super-fastify-directus.git
* *
*/ */
class PostStore extends DirectusAbstractStore { class PostStore extends DirectusAbstractStore {
/** /**
* set name of endpoint
* *
* *
* @param {string} endpoint * @param {string} endpoint
@ -41,8 +45,8 @@ class PostStore extends DirectusAbstractStore {
'teaser_media.description', 'teaser_media.description',
], ],
filter: { filter: {
status : 'published', status : 'published',
published_at : { published_at : {
'_nnull': true '_nnull': true
} }
}, },
@ -59,7 +63,7 @@ class PostStore extends DirectusAbstractStore {
* @return {object} * @return {object}
*/ */
findOneBySlug(slug) { findOneBySlug(slug) {
return this.items.readOne({ return this.items.readByQuery({
fields: [ fields: [
'title', 'title',
'slug', 'slug',

@ -1,7 +1,7 @@
import DirectusAbstractStore from './directusAbstract.js' import DirectusAbstractStore from './directusAbstract.js'
/** /**
* Settings * Settings from directus_settings
* *
* @author Björn Hase <me@herr-hase.wtf> * @author Björn Hase <me@herr-hase.wtf>
* @license http://opensource.org/licenses/MIT The MIT License * @license http://opensource.org/licenses/MIT The MIT License
@ -11,7 +11,7 @@ import DirectusAbstractStore from './directusAbstract.js'
class SettingsStore extends DirectusAbstractStore { class SettingsStore extends DirectusAbstractStore {
/** /**
* * set name of endpoint
* *
* @param {string} endpoint * @param {string} endpoint
* *
@ -21,7 +21,7 @@ class SettingsStore extends DirectusAbstractStore {
} }
/** /**
* getting setting * get settings from endpoint
* *
* *
* @return {object} * @return {object}

Loading…
Cancel
Save