diff --git a/src/lib/render.js b/src/lib/render.js deleted file mode 100644 index d793e9be..00000000 --- a/src/lib/render.js +++ /dev/null @@ -1,76 +0,0 @@ -import React from 'react' -import Html from '../components/Html' - -const { readFile } = require('async-file') -const handlebars = require('handlebars') - -const renderApp = require('../lib/component').renderApp - -const menuModel = require('../models/menu').default -const buildMenu = require('./menu').buildMenu -const {viewMain, viewEdit} = require('../config') - -const defaultOptions = { - commentsEnabled: false, - showAuthor: false, - menuPadding: false, - templateFile: viewMain, -} - -const defaultMeta = { - title: 'Шлиссельбургская Детская Художественная Школа', - description: 'Сайт Шлиссельбургской художественной школы', - image: 'https://art.shlisselburg.org/entrance.jpg', - imageWidth: 1200, - imageHeight: 630, -} - -const getTitle = meta => 'title' in meta - ? meta.title - : 'Шлиссельбургская художественная школа' - -const isHtml = data => typeof data === 'string' - -async function render(path, data, meta, options = {}) { - const renderOptions = {...defaultOptions, ...options} - - const component = !isHtml(data) ? data : ( - - ) - - const menu = buildMenu(path, menuModel) - const content = renderApp({...renderOptions, menu, component}) - - const source = await readFile(renderOptions.templateFile, 'utf-8') - const template = handlebars.compile(source) - - const metaData = { - ...defaultMeta, - ...meta, - url: `https://art.shlisselburg.org${path}`, - } - - return template({ - content, - options: renderOptions, - title: getTitle(meta), - meta: metaData, - }) -} - -async function renderEdit() { - const renderOptions = { - ...defaultOptions, - templateFile: viewEdit, - } - - const source = await readFile(renderOptions.templateFile, 'utf-8') - const template = handlebars.compile(source) - - return template({}) -} - -exports.render = render -exports.renderEdit = renderEdit