summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xlib/response.js2
-rw-r--r--lib/utils.js9
-rw-r--r--public/views/slide.ejs4
3 files changed, 15 insertions, 0 deletions
diff --git a/lib/response.js b/lib/response.js
index a9abd1d4..cda484e7 100755
--- a/lib/response.js
+++ b/lib/response.js
@@ -13,6 +13,7 @@ var moment = require('moment')
var config = require('./config')
var logger = require('./logger')
var models = require('./models')
+var utils = require('./utils')
// public
var response = {
@@ -574,6 +575,7 @@ function showPublishSlide (req, res, next) {
updatetime: updatetime,
url: origin,
body: markdown,
+ theme: utils.isRevealTheme(meta.slideOptions.theme),
meta: JSON.stringify(extracted.meta),
useCDN: config.usecdn,
owner: note.owner ? note.owner.id : null,
diff --git a/lib/utils.js b/lib/utils.js
index d9289dca..247f85f2 100644
--- a/lib/utils.js
+++ b/lib/utils.js
@@ -1,4 +1,6 @@
'use strict'
+const fs = require('fs')
+const path = require('path')
exports.isSQLite = function isSQLite (sequelize) {
return sequelize.options.dialect === 'sqlite'
@@ -23,3 +25,10 @@ exports.getImageMimeType = function getImageMimeType (imagePath) {
return undefined
}
}
+
+exports.isRevealTheme = function isRevealTheme (theme) {
+ if (fs.existsSync(path.join(__dirname, '..', 'public', 'build', 'reveal.js', 'css', 'theme', theme + '.css'))) {
+ return theme
+ }
+ return undefined
+}
diff --git a/public/views/slide.ejs b/public/views/slide.ejs
index 26c38bba..7ff5016e 100644
--- a/public/views/slide.ejs
+++ b/public/views/slide.ejs
@@ -30,7 +30,11 @@
<% } %>
<!-- For reveal.js theme -->
+ <% if(typeof theme !== 'undefined' && theme) { %>
+ <link rel="stylesheet" href="<%- url %>/build/reveal.js/css/theme/<%= theme %>.css" id="theme">
+ <% } else { %>
<link rel="stylesheet" href="<%- url %>/build/reveal.js/css/theme/black.css" id="theme">
+ <% } %>
<!-- For syntax highlighting -->
<link rel="stylesheet" href="<%- url %>/build/reveal.js/lib/css/zenburn.css">
<!-- For overwrite reveal.js -->