diff --git a/src/public/javascripts/server.js b/src/public/javascripts/server.js index 0ce445533..1f3950a6d 100644 --- a/src/public/javascripts/server.js +++ b/src/public/javascripts/server.js @@ -36,7 +36,9 @@ const server = (function() { script = script.toString(); } - return await post('script/exec/noteId', { script: script, params: params }); + const ret = await post('script/exec', { script: script, params: params }); + + return ret.executionResult; } let i = 1; diff --git a/src/public/stylesheets/style.css b/src/public/stylesheets/style.css index 5d25127c7..db8901b7e 100644 --- a/src/public/stylesheets/style.css +++ b/src/public/stylesheets/style.css @@ -237,6 +237,7 @@ div.ui-tooltip { .CodeMirror { height: 100%; + font-family: "Liberation Mono", "Lucida Console", monospace; } #note-id-display { diff --git a/src/routes/api/script.js b/src/routes/api/script.js index 81d2b185c..376aaaa97 100644 --- a/src/routes/api/script.js +++ b/src/routes/api/script.js @@ -9,12 +9,12 @@ const attributes = require('../../services/attributes'); const script = require('../../services/script'); const Repository = require('../../services/repository'); -router.post('/exec/:noteId', auth.checkApiAuth, wrap(async (req, res, next) => { - const noteId = req.params.noteId; +router.post('/exec', auth.checkApiAuth, wrap(async (req, res, next) => { + const ret = await script.executeScript(req, req.body.script, req.body.params); - const ret = await script.executeScript(noteId, req, req.body.script, req.body.params); - - res.send(ret); + res.send({ + executionResult: ret + }); })); router.get('/startup', auth.checkApiAuth, wrap(async (req, res, next) => { diff --git a/src/services/repository.js b/src/services/repository.js index 194b8a66f..7f031dd92 100644 --- a/src/services/repository.js +++ b/src/services/repository.js @@ -64,7 +64,7 @@ class Repository { entity.beforeSaving(); } - const clone = {...entity}; + const clone = Object.assign({}, entity); delete clone.dataKey; delete clone.jsonContent; diff --git a/src/services/script.js b/src/services/script.js index 826aa0ec0..ec02f37c9 100644 --- a/src/services/script.js +++ b/src/services/script.js @@ -2,10 +2,10 @@ const log = require('./log'); const sql = require('./sql'); const ScriptContext = require('./script_context'); -async function executeScript(noteId, dataKey, script, params) { +async function executeScript(dataKey, script, params) { log.info('Executing script: ' + script); - const ctx = new ScriptContext(noteId, dataKey); + const ctx = new ScriptContext(dataKey); const paramsStr = getParams(params); diff --git a/src/services/script_context.js b/src/services/script_context.js index a450c99d4..a3a41cbcb 100644 --- a/src/services/script_context.js +++ b/src/services/script_context.js @@ -6,7 +6,6 @@ const date_notes = require('./date_notes'); const Repository = require('./repository'); function ScriptContext(noteId, dataKey) { - this.scriptNoteId = noteId; this.dataKey = protected_session.getDataKey(dataKey); this.repository = new Repository(dataKey); @@ -58,7 +57,7 @@ function ScriptContext(noteId, dataKey) { this.updateEntity = this.repository.updateEntity; this.log = function(message) { - log.info(`Script ${this.scriptNoteId}: ${message}`); + log.info(`Script: ${message}`); }; this.getDateNoteId = date_notes.getDateNoteId;