From 83be3465ccd4bdc43cdfc14f253c236e2f44379e Mon Sep 17 00:00:00 2001 From: Yukai Huang <yukaihuangtw@gmail.com> Date: Thu, 13 Oct 2016 13:59:34 +0800 Subject: [PATCH 01/12] Fix scrollspy --- bower.json | 3 ++- package.json | 1 - public/views/foot.ejs | 1 + public/views/pretty.ejs | 3 ++- webpackBaseConfig.js | 3 +-- 5 files changed, 6 insertions(+), 5 deletions(-) diff --git a/bower.json b/bower.json index d9923e2..7b5e05a 100644 --- a/bower.json +++ b/bower.json @@ -30,7 +30,8 @@ "velocity": "^1.3.1", "randomcolor": "randomColor#^0.4.4", "Idle.Js": "idle.js#^1.0.0", - "gist-embed": "*" + "gist-embed": "*", + "jquery-scrollspy": "softwarespot/jquery-scrollspy" }, "resolutions": { "jquery": "~3.1.1" diff --git a/package.json b/package.json index 03333fb..6b313be 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,6 @@ "imgur": "git+https://github.com/hackmdio/node-imgur.git", "jquery": "^3.1.1", "jquery-mousewheel": "^3.1.13", - "jquery-scrollspy": "github:softwarespot/jquery-scrollspy", "jquery-textcomplete": "^1.7.3", "jquery-ui": "^1.12.1", "js-cookie": "^2.1.3", diff --git a/public/views/foot.ejs b/public/views/foot.ejs index 696fe3b..4ba18e3 100644 --- a/public/views/foot.ejs +++ b/public/views/foot.ejs @@ -20,6 +20,7 @@ <script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.16.4/lodash.min.js" defer></script> +<script src="<% url %>/vendor/jquery-scrollspy/jquery-scrollspy.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/socket.io/1.5.0/socket.io.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/viz.js/1.3.0/viz.js" defer></script> <%- include build/index-scripts %> diff --git a/public/views/pretty.ejs b/public/views/pretty.ejs index 0cd9e01..b0eb568 100644 --- a/public/views/pretty.ejs +++ b/public/views/pretty.ejs @@ -99,8 +99,9 @@ <script src="<%- url %>/vendor/moment/min/moment-with-locales.js" defer></script> <script src="<%- url %>/vendor/mermaid/dist/mermaid.min.js" defer></script> <% } %> -<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" defer></script> <script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> +<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" defer></script> +<script src="<% url %>/vendor/jquery-scrollspy/jquery-scrollspy.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.16.4/lodash.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/viz.js/1.3.0/viz.js" defer></script> <%- include build/pretty-scripts %> diff --git a/webpackBaseConfig.js b/webpackBaseConfig.js index e38213b..7bf3657 100644 --- a/webpackBaseConfig.js +++ b/webpackBaseConfig.js @@ -78,8 +78,7 @@ module.exports = { slide: path.join(__dirname, 'public/js/slide.js'), locale: path.join(__dirname, 'public/js/locale.js'), vendor: [ - "jquery-mousewheel", - "jquery-scrollspy/jquery-scrollspy", + "imports?$=jquery!jquery-mousewheel", "jquery-ui/ui/widgets/resizable", "jquery-ui/ui/widgets/tooltip", "jquery-ui/ui/widgets/controlgroup", From 4713b4f2aacab5bbc6ed557bd3f382df3af962df Mon Sep 17 00:00:00 2001 From: Yukai Huang <yukaihuangtw@gmail.com> Date: Thu, 13 Oct 2016 14:03:02 +0800 Subject: [PATCH 02/12] Fix syncscroll --- public/js/syncscroll.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/public/js/syncscroll.js b/public/js/syncscroll.js index 511c500..a9cfb5a 100644 --- a/public/js/syncscroll.js +++ b/public/js/syncscroll.js @@ -109,7 +109,8 @@ md.use(markdownitContainer, 'info', { render: renderContainer }); md.use(markdownitContainer, 'warning', { render: renderContainer }); md.use(markdownitContainer, 'danger', { render: renderContainer }); -var syncscroll = true; +// FIXME: expose syncscroll to window +window.syncscroll = true; var preventSyncScrollToEdit = false; var preventSyncScrollToView = false; From 440ad3506c22791fb58c1cc7888518ab93de3662 Mon Sep 17 00:00:00 2001 From: Yukai Huang <yukaihuangtw@gmail.com> Date: Thu, 13 Oct 2016 15:13:03 +0800 Subject: [PATCH 03/12] Fix lastchangeui and moment timestamps --- public/js/extra.js | 14 +++++--------- public/js/index.js | 3 --- public/js/pretty.js | 1 - public/js/slide.js | 15 +-------------- public/views/foot.ejs | 1 + public/views/pretty.ejs | 1 + public/views/slide.ejs | 1 + webpackBaseConfig.js | 7 ++----- 8 files changed, 11 insertions(+), 32 deletions(-) diff --git a/public/js/extra.js b/public/js/extra.js index 24d53fe..1a1caf8 100644 --- a/public/js/extra.js +++ b/public/js/extra.js @@ -5,9 +5,9 @@ var saveAs = require('file-saver').saveAs; require('../vendor/md-toc'); //auto update last change -var createtime = null; -var lastchangetime = null; -var lastchangeui = { +window.createtime = null; +window.lastchangetime = null; +window.lastchangeui = { status: $(".ui-status-lastchange"), time: $(".ui-lastchange"), user: $(".ui-lastchangeuser"), @@ -30,8 +30,8 @@ function updateLastChange() { } setInterval(updateLastChange, 60000); -var lastchangeuser = null; -var lastchangeuserprofile = null; +window.lastchangeuser = null; +window.lastchangeuserprofile = null; function updateLastChangeUser() { if (lastchangeui) { if (lastchangeuser && lastchangeuserprofile) { @@ -1070,11 +1070,7 @@ md.use(pdfPlugin); module.exports = { md: md, - createtime: createtime, - lastchangetime: lastchangetime, updateLastChange: updateLastChange, - lastchangeui: lastchangeui, - lastchangeuser: lastchangeuser, postProcess: postProcess, finishView: finishView, autoLinkify: autoLinkify, diff --git a/public/js/index.js b/public/js/index.js index 20a76ff..82d3ced 100644 --- a/public/js/index.js +++ b/public/js/index.js @@ -38,15 +38,12 @@ var syncScrollToView = syncScroll.syncScrollToView; require('./pretty'); var extra = require('./extra'); var md = extra.md; -var createtime = extra.createtime; var updateLastChange = extra.updateLastChange; var postProcess = extra.postProcess; var finishView = extra.finishView; -var lastchangetime = extra.lastchangetime; var autoLinkify = extra.autoLinkify; var generateToc = extra.generateToc; var smoothHashScroll = extra.smoothHashScroll; -var lastchangeuser = extra.lastchangeuser; var deduplicatedHeaderId = extra.deduplicatedHeaderId; var renderTOC = extra.renderTOC; var renderTitle = extra.renderTitle; diff --git a/public/js/pretty.js b/public/js/pretty.js index 6b551c1..1288225 100644 --- a/public/js/pretty.js +++ b/public/js/pretty.js @@ -7,7 +7,6 @@ var renderTOC = extra.renderTOC; var generateToc = extra.generateToc; var smoothHashScroll = extra.smoothHashScroll; var postProcess = extra.postProcess; -var lastchangeui = extra.lastchangeui; var updateLastChange = extra.updateLastChange; var preventXSS = require('./render').preventXSS; diff --git a/public/js/slide.js b/public/js/slide.js index 257c60b..d90fd43 100644 --- a/public/js/slide.js +++ b/public/js/slide.js @@ -22,23 +22,10 @@ var noteurl = commonModule.noteurl; var extraModule = require('./extra'); var md = extraModule.md; -var createtime = extraModule.createtime; var updateLastChange = extraModule.updateLastChange; -var postProcess = extraModule.postProcess; var finishView = extraModule.finishView; -var lastchangetime = extraModule.lastchangetime; -var lastchangeui = extraModule.lastchangeui; -var autoLinkify = extraModule.autoLinkify; -var generateToc = extraModule.generateToc; -var smoothHashScroll = extraModule.smoothHashScroll; -var lastchangeuser = extraModule.lastchangeuser; -var deduplicatedHeaderId = extraModule.deduplicatedHeaderId; -var renderTOC = extraModule.renderTOC; -var renderTitle = extraModule.renderTitle; -var renderFilename = extraModule.renderFilename; -var scrollToHash = extraModule.scrollToHash; -var render = require('./render'); +require('./render'); var body = $(".slides").html(); $(".slides").html(S(body).unescapeHTML().s); diff --git a/public/views/foot.ejs b/public/views/foot.ejs index 4ba18e3..b51920d 100644 --- a/public/views/foot.ejs +++ b/public/views/foot.ejs @@ -18,6 +18,7 @@ <script src="<%- url %>/vendor/mermaid/dist/mermaid.min.js" defer></script> <% } %> <script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> +<script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.16.4/lodash.min.js" defer></script> <script src="<% url %>/vendor/jquery-scrollspy/jquery-scrollspy.min.js"></script> diff --git a/public/views/pretty.ejs b/public/views/pretty.ejs index b0eb568..09b548a 100644 --- a/public/views/pretty.ejs +++ b/public/views/pretty.ejs @@ -100,6 +100,7 @@ <script src="<%- url %>/vendor/mermaid/dist/mermaid.min.js" defer></script> <% } %> <script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> +<script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" defer></script> <script src="<% url %>/vendor/jquery-scrollspy/jquery-scrollspy.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.16.4/lodash.min.js" defer></script> diff --git a/public/views/slide.ejs b/public/views/slide.ejs index 79d7708..679bed2 100644 --- a/public/views/slide.ejs +++ b/public/views/slide.ejs @@ -102,6 +102,7 @@ <script src="<%- url %>/vendor/mermaid/dist/mermaid.min.js" defer></script> <% } %> <script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> + <script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.16.4/lodash.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/viz.js/1.3.0/viz.js" defer></script> <%- include build/slide-scripts %> diff --git a/webpackBaseConfig.js b/webpackBaseConfig.js index 7bf3657..51eb2ad 100644 --- a/webpackBaseConfig.js +++ b/webpackBaseConfig.js @@ -79,10 +79,6 @@ module.exports = { locale: path.join(__dirname, 'public/js/locale.js'), vendor: [ "imports?$=jquery!jquery-mousewheel", - "jquery-ui/ui/widgets/resizable", - "jquery-ui/ui/widgets/tooltip", - "jquery-ui/ui/widgets/controlgroup", - "jquery-ui/ui/widgets/autocomplete", "script!gist-embed", "expose?filterXSS!xss", "js-url", @@ -129,7 +125,8 @@ module.exports = { "viz.js": "Viz", "socket.io-client": "io", "lodash": "_", - "jquery": "$" + "jquery": "$", + "moment": "moment" }, module: { From bcb12b9ae7d3562a05d007d6bab1042c1e6319fe Mon Sep 17 00:00:00 2001 From: Yukai Huang <yukaihuangtw@gmail.com> Date: Thu, 13 Oct 2016 15:30:26 +0800 Subject: [PATCH 04/12] Remove jquery-scrollspy dependency scrollspy is bootstrap built-in plugin --- bower.json | 3 +-- public/views/foot.ejs | 1 - public/views/pretty.ejs | 1 - 3 files changed, 1 insertion(+), 4 deletions(-) diff --git a/bower.json b/bower.json index 7b5e05a..d9923e2 100644 --- a/bower.json +++ b/bower.json @@ -30,8 +30,7 @@ "velocity": "^1.3.1", "randomcolor": "randomColor#^0.4.4", "Idle.Js": "idle.js#^1.0.0", - "gist-embed": "*", - "jquery-scrollspy": "softwarespot/jquery-scrollspy" + "gist-embed": "*" }, "resolutions": { "jquery": "~3.1.1" diff --git a/public/views/foot.ejs b/public/views/foot.ejs index b51920d..983ce3d 100644 --- a/public/views/foot.ejs +++ b/public/views/foot.ejs @@ -21,7 +21,6 @@ <script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.16.4/lodash.min.js" defer></script> -<script src="<% url %>/vendor/jquery-scrollspy/jquery-scrollspy.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/socket.io/1.5.0/socket.io.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/viz.js/1.3.0/viz.js" defer></script> <%- include build/index-scripts %> diff --git a/public/views/pretty.ejs b/public/views/pretty.ejs index 09b548a..d5814fc 100644 --- a/public/views/pretty.ejs +++ b/public/views/pretty.ejs @@ -102,7 +102,6 @@ <script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" defer></script> -<script src="<% url %>/vendor/jquery-scrollspy/jquery-scrollspy.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.16.4/lodash.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/viz.js/1.3.0/viz.js" defer></script> <%- include build/pretty-scripts %> From f678d9b81451fba0b196332a2d2d97310f2133ab Mon Sep 17 00:00:00 2001 From: Yukai Huang <yukaihuangtw@gmail.com> Date: Thu, 13 Oct 2016 15:54:17 +0800 Subject: [PATCH 05/12] Fix cheatsheet rendering do not process help-modal markdown-body --- public/js/pretty.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/js/pretty.js b/public/js/pretty.js index 1288225..c1c2b4a 100644 --- a/public/js/pretty.js +++ b/public/js/pretty.js @@ -10,7 +10,7 @@ var postProcess = extra.postProcess; var updateLastChange = extra.updateLastChange; var preventXSS = require('./render').preventXSS; -var markdown = $(".markdown-body"); +var markdown = $("#doc.markdown-body"); var text = $('<textarea/>').html(markdown.html()).text(); var lastMeta = md.meta; md.meta = {}; From f4f2497d23ff26caba7673b5de0bc8f61b69efca Mon Sep 17 00:00:00 2001 From: Yukai Huang <yukaihuangtw@gmail.com> Date: Thu, 13 Oct 2016 15:59:22 +0800 Subject: [PATCH 06/12] Expose parseMeta function --- public/js/extra.js | 3 ++- public/js/index.js | 1 + public/js/pretty.js | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/public/js/extra.js b/public/js/extra.js index 1a1caf8..e19a35d 100644 --- a/public/js/extra.js +++ b/public/js/extra.js @@ -1083,5 +1083,6 @@ module.exports = { scrollToHash: scrollToHash, owner: owner, updateLastChangeUser: updateLastChangeUser, - updateOwner: updateOwner + updateOwner: updateOwner, + parseMeta: parseMeta }; diff --git a/public/js/index.js b/public/js/index.js index 82d3ced..4d74532 100644 --- a/public/js/index.js +++ b/public/js/index.js @@ -52,6 +52,7 @@ var scrollToHash = extra.scrollToHash; var owner = extra.owner; var updateLastChangeUser = extra.updateLastChangeUser; var updateOwner = extra.updateOwner; +var parseMeta = extra.parseMeta; var historyModule = require('./history'); var writeHistory = historyModule.writeHistory; diff --git a/public/js/pretty.js b/public/js/pretty.js index c1c2b4a..c521120 100644 --- a/public/js/pretty.js +++ b/public/js/pretty.js @@ -8,6 +8,7 @@ var generateToc = extra.generateToc; var smoothHashScroll = extra.smoothHashScroll; var postProcess = extra.postProcess; var updateLastChange = extra.updateLastChange; +var parseMeta = extra.parseMeta; var preventXSS = require('./render').preventXSS; var markdown = $("#doc.markdown-body"); From 229b947b093e0f88b587a00cfd256b38979c356e Mon Sep 17 00:00:00 2001 From: Yukai Huang <yukaihuangtw@gmail.com> Date: Thu, 13 Oct 2016 16:25:04 +0800 Subject: [PATCH 07/12] Config moment webpack ProvidePlugin --- webpackBaseConfig.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/webpackBaseConfig.js b/webpackBaseConfig.js index 51eb2ad..072ef7b 100644 --- a/webpackBaseConfig.js +++ b/webpackBaseConfig.js @@ -12,7 +12,8 @@ module.exports = { key: "keymaster", $: "jquery", jQuery: "jquery", - "window.jQuery": "jquery" + "window.jQuery": "jquery", + "moment": "moment" }), new ExtractTextPlugin("[name].css"), new webpack.optimize.CommonsChunkPlugin({ From d6003649337c2565e04132a58b42f7a520eb5037 Mon Sep 17 00:00:00 2001 From: Yukai Huang <yukaihuangtw@gmail.com> Date: Thu, 13 Oct 2016 16:25:38 +0800 Subject: [PATCH 08/12] Fix history deletion --- public/js/cover.js | 1 + public/js/history.js | 5 +++-- public/views/index.ejs | 4 +++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/public/js/cover.js b/public/js/cover.js index 30a8e5c..245127d 100644 --- a/public/js/cover.js +++ b/public/js/cover.js @@ -17,6 +17,7 @@ var postHistoryToServer = historyModule.postHistoryToServer; var deleteServerHistory = historyModule.deleteServerHistory; var parseServerToHistory = historyModule.parseServerToHistory; var saveStorageHistoryToServer = historyModule.saveStorageHistoryToServer; +var clearDuplicatedHistory = historyModule.clearDuplicatedHistory; var saveAs = require('file-saver').saveAs; var List = require('list.js'); diff --git a/public/js/history.js b/public/js/history.js index d5082dd..8593bbc 100644 --- a/public/js/history.js +++ b/public/js/history.js @@ -10,7 +10,7 @@ var extra = require('./extra'); var renderFilename = extra.renderFilename; var md = extra.md; -var migrateHistoryFromTempCallback = null; +window.migrateHistoryFromTempCallback = null; migrateHistoryFromTemp(); @@ -417,5 +417,6 @@ module.exports = { postHistoryToServer: postHistoryToServer, deleteServerHistory: deleteServerHistory, parseServerToHistory: parseServerToHistory, - saveStorageHistoryToServer: saveStorageHistoryToServer + saveStorageHistoryToServer: saveStorageHistoryToServer, + clearDuplicatedHistory: clearDuplicatedHistory } diff --git a/public/views/index.ejs b/public/views/index.ejs index 0bc3dd5..e289458 100644 --- a/public/views/index.ejs +++ b/public/views/index.ejs @@ -204,7 +204,9 @@ <script src="<%- url %>/vendor/velocity/velocity.min.js" defer></script> <script src="<%- url %>/vendor/moment/min/moment-with-locales.min.js" defer></script> <% } %> - <script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js" defer></script> + <script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> + <script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> + <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.16.4/lodash.min.js" defer></script> <%- include build/cover-scripts %> </body> From 747502e694efb5131e1f589adcb608580347e1e0 Mon Sep 17 00:00:00 2001 From: Yukai Huang <yukaihuangtw@gmail.com> Date: Thu, 13 Oct 2016 16:35:43 +0800 Subject: [PATCH 09/12] Fix HTML exporting --- public/js/extra.js | 4 +++- public/js/index.js | 4 +++- public/views/foot.ejs | 1 + public/views/pretty.ejs | 1 + webpackBaseConfig.js | 6 ++++-- 5 files changed, 12 insertions(+), 4 deletions(-) diff --git a/public/js/extra.js b/public/js/extra.js index e19a35d..d853bf9 100644 --- a/public/js/extra.js +++ b/public/js/extra.js @@ -1084,5 +1084,7 @@ module.exports = { owner: owner, updateLastChangeUser: updateLastChangeUser, updateOwner: updateOwner, - parseMeta: parseMeta + parseMeta: parseMeta, + exportToHTML: exportToHTML, + exportToRawHTML: exportToRawHTML }; diff --git a/public/js/index.js b/public/js/index.js index 4d74532..de0ba0b 100644 --- a/public/js/index.js +++ b/public/js/index.js @@ -53,6 +53,8 @@ var owner = extra.owner; var updateLastChangeUser = extra.updateLastChangeUser; var updateOwner = extra.updateOwner; var parseMeta = extra.parseMeta; +var exportToHTML = extra.exportToHTML; +var exportToRawHTML = extra.exportToRawHTML; var historyModule = require('./history'); var writeHistory = historyModule.writeHistory; @@ -755,7 +757,7 @@ function updateStatusBar() { } //ui vars -var ui = { +window.ui = { spinner: $(".ui-spinner"), content: $(".ui-content"), toolbar: { diff --git a/public/views/foot.ejs b/public/views/foot.ejs index 983ce3d..4294070 100644 --- a/public/views/foot.ejs +++ b/public/views/foot.ejs @@ -22,6 +22,7 @@ <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.16.4/lodash.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/socket.io/1.5.0/socket.io.min.js" defer></script> +<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.0.5/handlebars.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/viz.js/1.3.0/viz.js" defer></script> <%- include build/index-scripts %> <script src="<%- url %>/js/google-drive-upload.js" defer></script> diff --git a/public/views/pretty.ejs b/public/views/pretty.ejs index d5814fc..8fecb04 100644 --- a/public/views/pretty.ejs +++ b/public/views/pretty.ejs @@ -102,6 +102,7 @@ <script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" defer></script> +<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.0.5/handlebars.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.16.4/lodash.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/viz.js/1.3.0/viz.js" defer></script> <%- include build/pretty-scripts %> diff --git a/webpackBaseConfig.js b/webpackBaseConfig.js index 072ef7b..7648cd8 100644 --- a/webpackBaseConfig.js +++ b/webpackBaseConfig.js @@ -13,7 +13,8 @@ module.exports = { $: "jquery", jQuery: "jquery", "window.jQuery": "jquery", - "moment": "moment" + "moment": "moment", + "Handlebars": "handlebars" }), new ExtractTextPlugin("[name].css"), new webpack.optimize.CommonsChunkPlugin({ @@ -127,7 +128,8 @@ module.exports = { "socket.io-client": "io", "lodash": "_", "jquery": "$", - "moment": "moment" + "moment": "moment", + "handlebars": "Handlebars" }, module: { From ae3e1b972bb4884ebd910ceb9ced1f206ccd9007 Mon Sep 17 00:00:00 2001 From: Yukai Huang <yukaihuangtw@gmail.com> Date: Thu, 13 Oct 2016 16:41:20 +0800 Subject: [PATCH 10/12] Fix spellcheck * also fix spaces width --- public/js/common.js | 2 +- public/js/cover.js | 1 - public/js/extra.js | 1 - public/js/history.js | 1 - public/js/index.js | 1 - public/js/slide.js | 1 - 6 files changed, 1 insertion(+), 6 deletions(-) diff --git a/public/js/common.js b/public/js/common.js index 19455f3..9f81a97 100644 --- a/public/js/common.js +++ b/public/js/common.js @@ -8,7 +8,7 @@ var DROPBOX_APP_KEY = config.DROPBOX_APP_KEY; //common var port = window.location.port; -var serverurl = window.location.protocol + '//' + (domain ? domain : window.location.hostname) + (port ? ':' + port : '') + (urlpath ? '/' + urlpath : ''); +window.serverurl = window.location.protocol + '//' + (domain ? domain : window.location.hostname) + (port ? ':' + port : '') + (urlpath ? '/' + urlpath : ''); var noteid = urlpath ? window.location.pathname.slice(urlpath.length + 1, window.location.pathname.length).split('/')[1] : window.location.pathname.split('/')[1]; var noteurl = serverurl + '/' + noteid; diff --git a/public/js/cover.js b/public/js/cover.js index 245127d..3dd4de0 100644 --- a/public/js/cover.js +++ b/public/js/cover.js @@ -1,7 +1,6 @@ var common = require('./common'); var checkIfAuth = common.checkIfAuth; var urlpath = common.urlpath; -var serverurl = common.serverurl; var resetCheckAuth = common.resetCheckAuth; var getLoginState = common.getLoginState; var clearLoginState = common.clearLoginState; diff --git a/public/js/extra.js b/public/js/extra.js index d853bf9..7cae068 100644 --- a/public/js/extra.js +++ b/public/js/extra.js @@ -544,7 +544,6 @@ function exportToRawHTML(view) { } var common = require('./common.js'); -var serverurl = common.serverurl; //extract markdown body to html and compile to template function exportToHTML(view) { var title = renderTitle(ui.area.markdown); diff --git a/public/js/history.js b/public/js/history.js index 8593bbc..d924eec 100644 --- a/public/js/history.js +++ b/public/js/history.js @@ -3,7 +3,6 @@ var store = require('store'); var common = require('./common'); var checkIfAuth = common.checkIfAuth; var urlpath = common.urlpath; -var serverurl = common.serverurl; var getLoginState = common.getLoginState; var extra = require('./extra'); diff --git a/public/js/index.js b/public/js/index.js index de0ba0b..5246f94 100644 --- a/public/js/index.js +++ b/public/js/index.js @@ -21,7 +21,6 @@ var urlpath = common.urlpath; var noteid = common.noteid; var debug = common.debug; var version = common.version; -var serverurl = common.serverurl; var GOOGLE_API_KEY = common.GOOGLE_API_KEY; var GOOGLE_CLIENT_ID = common.GOOGLE_CLIENT_ID; var DROPBOX_APP_KEY = common.DROPBOX_APP_KEY; diff --git a/public/js/slide.js b/public/js/slide.js index d90fd43..2536c60 100644 --- a/public/js/slide.js +++ b/public/js/slide.js @@ -14,7 +14,6 @@ var urlpath = commonModule.urlpath; var noteid = commonModule.noteid; var debug = commonModule.debug; var version = commonModule.version; -var serverurl = commonModule.serverurl; var GOOGLE_API_KEY = commonModule.GOOGLE_API_KEY; var GOOGLE_CLIENT_ID = commonModule.GOOGLE_CLIENT_ID; var DROPBOX_APP_KEY = commonModule.DROPBOX_APP_KEY; From 47b113d9fee5dce5ae8c84f6740ca0093d56c94a Mon Sep 17 00:00:00 2001 From: Yukai Huang <yukaihuangtw@gmail.com> Date: Thu, 13 Oct 2016 16:45:52 +0800 Subject: [PATCH 11/12] Add handlebars script tag --- public/views/index.ejs | 1 + public/views/slide.ejs | 1 + 2 files changed, 2 insertions(+) diff --git a/public/views/index.ejs b/public/views/index.ejs index e289458..4ab3cde 100644 --- a/public/views/index.ejs +++ b/public/views/index.ejs @@ -207,6 +207,7 @@ <script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" defer></script> + <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.0.5/handlebars.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.16.4/lodash.min.js" defer></script> <%- include build/cover-scripts %> </body> diff --git a/public/views/slide.ejs b/public/views/slide.ejs index 679bed2..398f40b 100644 --- a/public/views/slide.ejs +++ b/public/views/slide.ejs @@ -103,6 +103,7 @@ <% } %> <script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> + <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.0.5/handlebars.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/4.16.4/lodash.min.js" defer></script> <script src="//cdnjs.cloudflare.com/ajax/libs/viz.js/1.3.0/viz.js" defer></script> <%- include build/slide-scripts %> From 2f05e445cca8bf1aa560c7dcce86587297d37d5b Mon Sep 17 00:00:00 2001 From: Yukai Huang <yukaihuangtw@gmail.com> Date: Thu, 13 Oct 2016 19:15:51 +0800 Subject: [PATCH 12/12] Remove uneccesasry serverurl exporting --- public/js/common.js | 47 ++++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 24 deletions(-) diff --git a/public/js/common.js b/public/js/common.js index 9f81a97..b8ff375 100644 --- a/public/js/common.js +++ b/public/js/common.js @@ -93,29 +93,28 @@ function checkIfAuth(yesCallback, noCallback) { } module.exports = { - domain: domain, - urlpath: urlpath, - debug: debug, - GOOGLE_API_KEY: GOOGLE_API_KEY, - GOOGLE_CLIENT_ID: GOOGLE_CLIENT_ID, - DROPBOX_APP_KEY: DROPBOX_APP_KEY, - port: port, - serverurl: serverurl, - noteid: noteid, - noteurl: noteurl, - version: version, - checkAuth: checkAuth, - profile: profile, - lastLoginState: lastLoginState, - lastUserId: lastUserId, - loginStateChangeEvent: loginStateChangeEvent, + domain: domain, + urlpath: urlpath, + debug: debug, + GOOGLE_API_KEY: GOOGLE_API_KEY, + GOOGLE_CLIENT_ID: GOOGLE_CLIENT_ID, + DROPBOX_APP_KEY: DROPBOX_APP_KEY, + port: port, + noteid: noteid, + noteurl: noteurl, + version: version, + checkAuth: checkAuth, + profile: profile, + lastLoginState: lastLoginState, + lastUserId: lastUserId, + loginStateChangeEvent: loginStateChangeEvent, - /* export functions */ - resetCheckAuth: resetCheckAuth, - setLoginState: setLoginState, - checkLoginStateChanged: checkLoginStateChanged, - getLoginState: getLoginState, - getUserId: getUserId, - clearLoginState: clearLoginState, - checkIfAuth: checkIfAuth + /* export functions */ + resetCheckAuth: resetCheckAuth, + setLoginState: setLoginState, + checkLoginStateChanged: checkLoginStateChanged, + getLoginState: getLoginState, + getUserId: getUserId, + clearLoginState: clearLoginState, + checkIfAuth: checkIfAuth };