From 2c9118e781dd3ca6964e0cd2b41d802fc0093c76 Mon Sep 17 00:00:00 2001 From: Piyush Vijay Date: Fri, 13 Jul 2018 09:16:06 +0530 Subject: [PATCH] Edit codemirror sql plugin for modular code. Signed-Off-By: Piyush Vijay --- js/src/plugins/codemirror/sql-lint.js | 41 +++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 js/src/plugins/codemirror/sql-lint.js diff --git a/js/src/plugins/codemirror/sql-lint.js b/js/src/plugins/codemirror/sql-lint.js new file mode 100644 index 0000000000..e52c0e2ced --- /dev/null +++ b/js/src/plugins/codemirror/sql-lint.js @@ -0,0 +1,41 @@ +import CodeMirror from 'codemirror'; +import CommonParams from '../../variables/common_params'; + +CodeMirror.sqlLint = function (text, updateLinting, options, cm) { + // Skipping check if text box is empty. + if (text.trim() === '') { + updateLinting(cm, []); + return; + } + + function handleResponse (response) { + var found = []; + for (var idx in response) { + found.push({ + from: CodeMirror.Pos( + response[idx].fromLine, response[idx].fromColumn + ), + to: CodeMirror.Pos( + response[idx].toLine, response[idx].toColumn + ), + messageHTML: response[idx].message, + severity : response[idx].severity + }); + } + + updateLinting(cm, found); + } + + $.ajax({ + method: 'POST', + url: 'lint.php', + dataType: 'json', + data: { + sql_query: text, + server: CommonParams.get('server'), + options: options.lintOptions, + no_history: true, + }, + success: handleResponse + }); +};