summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWu Cheng-Han2016-08-01 00:08:22 +0800
committerWu Cheng-Han2016-08-01 00:08:22 +0800
commitb367e110b639ab707e848d1d6de70bb094cd0edd (patch)
tree926d1272bbd8c773e266a1723dbc7c90bf6f27f4
parent7ea56c78a2dd06889faa1192a515fcb39a51b362 (diff)
Update to support slideOptions in the YAML metadata
-rw-r--r--lib/models/note.js2
-rw-r--r--lib/response.js1
-rw-r--r--public/js/slide.js5
-rw-r--r--public/views/slide.ejs2
4 files changed, 9 insertions, 1 deletions
diff --git a/lib/models/note.js b/lib/models/note.js
index 5ee5c7de..05babb42 100644
--- a/lib/models/note.js
+++ b/lib/models/note.js
@@ -237,6 +237,8 @@ module.exports = function (sequelize, DataTypes) {
_meta.robots = meta.robots;
if (meta.GA && (typeof meta.GA == "string" || typeof meta.GA == "number"))
_meta.GA = meta.GA;
+ if (meta.slideOptions && (typeof meta.slideOptions == "object"))
+ _meta.slideOptions = meta.slideOptions;
}
return _meta;
}
diff --git a/lib/response.js b/lib/response.js
index 1a6d1137..9df2ee9f 100644
--- a/lib/response.js
+++ b/lib/response.js
@@ -555,6 +555,7 @@ function showPublishSlide(req, res, next) {
title: title,
description: meta.description,
slides: slides,
+ slideOptions: JSON.stringify(meta.slideOptions || {}),
GA: meta.GA,
useCDN: config.usecdn
};
diff --git a/public/js/slide.js b/public/js/slide.js
index 074e4df9..996610fb 100644
--- a/public/js/slide.js
+++ b/public/js/slide.js
@@ -44,10 +44,13 @@ var defaultOptions = {
dependencies: deps
};
+// options from yaml meta
+var options = JSON.parse($("#options").text());
+
// options from URL query string
var queryOptions = Reveal.getQueryHash() || {};
-var options = extend(defaultOptions, queryOptions);
+var options = extend(defaultOptions, options, queryOptions);
Reveal.initialize(options);
viewAjaxCallback = function () {
diff --git a/public/views/slide.ejs b/public/views/slide.ejs
index b8ec00ff..5817a200 100644
--- a/public/views/slide.ejs
+++ b/public/views/slide.ejs
@@ -50,6 +50,8 @@
<div class="slides"><%- slides %></div>
</div>
+ <div id="options" class="hidden"><%- slideOptions %></div>
+
<script type="text/x-mathjax-config">
MathJax.Hub.Config({ messageStyle: "none", skipStartupTypeset: true ,tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']], processEscapes: true }});
</script>