Assign codeMirrorEditor global var to the window object
Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
This commit is contained in:
parent
ef299ea809
commit
2341139e3d
@ -23,7 +23,7 @@ let ajaxMessageCount = 0;
|
||||
* Object containing CodeMirror editor of the query editor in SQL tab.
|
||||
* @type {(object|boolean|null)}
|
||||
*/
|
||||
var codeMirrorEditor = false;
|
||||
window.codeMirrorEditor = false;
|
||||
|
||||
/**
|
||||
* Object containing CodeMirror editor of the inline query editor.
|
||||
@ -744,9 +744,9 @@ Functions.confirmQuery = function (theForm1, sqlQuery1) {
|
||||
Functions.checkSqlQuery = function (theForm) {
|
||||
// get the textarea element containing the query
|
||||
var sqlQuery;
|
||||
if (codeMirrorEditor) {
|
||||
codeMirrorEditor.save();
|
||||
sqlQuery = codeMirrorEditor.getValue();
|
||||
if (window.codeMirrorEditor) {
|
||||
window.codeMirrorEditor.save();
|
||||
sqlQuery = window.codeMirrorEditor.getValue();
|
||||
} else {
|
||||
sqlQuery = theForm.elements.sql_query.value;
|
||||
}
|
||||
@ -768,8 +768,8 @@ Functions.checkSqlQuery = function (theForm) {
|
||||
alert(Messages.strFormEmpty);
|
||||
}
|
||||
|
||||
if (codeMirrorEditor) {
|
||||
codeMirrorEditor.focus();
|
||||
if (window.codeMirrorEditor) {
|
||||
window.codeMirrorEditor.focus();
|
||||
} else if (codeMirrorInlineEditor) {
|
||||
codeMirrorInlineEditor.focus();
|
||||
}
|
||||
@ -1107,7 +1107,7 @@ Functions.setSelectOptions = function (theForm, theSelect, doCheck) {
|
||||
*/
|
||||
Functions.updateQueryParameters = function () {
|
||||
if ($('#parameterized').is(':checked')) {
|
||||
var query = codeMirrorEditor ? codeMirrorEditor.getValue() : $('#sqlquery').val();
|
||||
var query = window.codeMirrorEditor ? window.codeMirrorEditor.getValue() : $('#sqlquery').val();
|
||||
|
||||
var allParameters = query.match(/:[a-zA-Z0-9_]+/g);
|
||||
var parameters = [];
|
||||
@ -1193,8 +1193,8 @@ Functions.teardownSqlQueryEditEvents = () => {
|
||||
$(document).off('click', 'a.inline_edit_sql');
|
||||
$(document).off('click', 'input#sql_query_edit_save');
|
||||
$(document).off('click', 'input#sql_query_edit_discard');
|
||||
if (codeMirrorEditor) {
|
||||
codeMirrorEditor.off('blur');
|
||||
if (window.codeMirrorEditor) {
|
||||
window.codeMirrorEditor.off('blur');
|
||||
} else {
|
||||
$(document).off('blur', '#sqlquery');
|
||||
}
|
||||
@ -1209,8 +1209,8 @@ Functions.teardownSqlQueryEditEvents = () => {
|
||||
codeMirrorInlineEditor.toTextArea();
|
||||
codeMirrorInlineEditor = false;
|
||||
}
|
||||
if (codeMirrorEditor) {
|
||||
$(codeMirrorEditor.getWrapperElement()).off('keydown');
|
||||
if (window.codeMirrorEditor) {
|
||||
$(window.codeMirrorEditor.getWrapperElement()).off('keydown');
|
||||
}
|
||||
};
|
||||
|
||||
@ -3636,9 +3636,9 @@ Functions.onloadCodeMirrorEditor = () => {
|
||||
}
|
||||
if ($elm.length > 0) {
|
||||
if (typeof CodeMirror !== 'undefined') {
|
||||
codeMirrorEditor = Functions.getSqlEditor($elm);
|
||||
codeMirrorEditor.focus();
|
||||
codeMirrorEditor.on('blur', Functions.updateQueryParameters);
|
||||
window.codeMirrorEditor = Functions.getSqlEditor($elm);
|
||||
window.codeMirrorEditor.focus();
|
||||
window.codeMirrorEditor.on('blur', Functions.updateQueryParameters);
|
||||
} else {
|
||||
// without codemirror
|
||||
$elm.trigger('focus').on('blur', Functions.updateQueryParameters);
|
||||
@ -3651,10 +3651,10 @@ Functions.onloadCodeMirrorEditor = () => {
|
||||
* @return {void}
|
||||
*/
|
||||
Functions.teardownCodeMirrorEditor = () => {
|
||||
if (codeMirrorEditor) {
|
||||
$('#sqlquery').text(codeMirrorEditor.getValue());
|
||||
codeMirrorEditor.toTextArea();
|
||||
codeMirrorEditor = false;
|
||||
if (window.codeMirrorEditor) {
|
||||
$('#sqlquery').text(window.codeMirrorEditor.getValue());
|
||||
window.codeMirrorEditor.toTextArea();
|
||||
window.codeMirrorEditor = false;
|
||||
}
|
||||
};
|
||||
|
||||
@ -3779,7 +3779,7 @@ Functions.onloadCreateView = function () {
|
||||
}
|
||||
|
||||
if ($('textarea[name="view[as]"]').length !== 0) {
|
||||
codeMirrorEditor = Functions.getSqlEditor($('textarea[name="view[as]"]'));
|
||||
window.codeMirrorEditor = Functions.getSqlEditor($('textarea[name="view[as]"]'));
|
||||
}
|
||||
};
|
||||
|
||||
@ -3793,7 +3793,7 @@ Functions.createViewModal = function ($this) {
|
||||
Functions.ajaxRemoveMessage($msg);
|
||||
$('#createViewModalGoButton').on('click', function () {
|
||||
if (typeof CodeMirror !== 'undefined') {
|
||||
codeMirrorEditor.save();
|
||||
window.codeMirrorEditor.save();
|
||||
}
|
||||
$msg = Functions.ajaxShowMessage();
|
||||
$.post('index.php?route=/view/create', $('#createViewModal').find('form').serialize(), function (data) {
|
||||
@ -3810,7 +3810,7 @@ Functions.createViewModal = function ($this) {
|
||||
$('#createViewModal').find('.modal-body').first().html(data.message);
|
||||
// Attach syntax highlighted editor
|
||||
$('#createViewModal').on('shown.bs.modal', function () {
|
||||
codeMirrorEditor = Functions.getSqlEditor($('#createViewModal').find('textarea'));
|
||||
window.codeMirrorEditor = Functions.getSqlEditor($('#createViewModal').find('textarea'));
|
||||
$('input:visible[type=text]', $('#createViewModal')).first().trigger('focus');
|
||||
$('#createViewModal').off('shown.bs.modal');
|
||||
});
|
||||
|
||||
@ -8,7 +8,6 @@
|
||||
*/
|
||||
|
||||
/* global isStorageSupported */ // js/config.js
|
||||
/* global codeMirrorEditor:writable */ // js/functions.js
|
||||
/* global firstDayOfCalendar, themeImagePath */ // templates/javascript/variables.twig
|
||||
/* global variableNames */ // templates/server/status/monitor/index.twig
|
||||
|
||||
@ -139,10 +138,10 @@ window.AJAX.registerOnload('server/status/monitor.js', function () {
|
||||
$('div.tabLinks').show();
|
||||
$('#loadingMonitorIcon').remove();
|
||||
// Codemirror is loaded on demand so we might need to initialize it
|
||||
if (! codeMirrorEditor) {
|
||||
if (! window.codeMirrorEditor) {
|
||||
var $elm = $('#sqlquery');
|
||||
if ($elm.length > 0 && typeof CodeMirror !== 'undefined') {
|
||||
codeMirrorEditor = CodeMirror.fromTextArea(
|
||||
window.codeMirrorEditor = CodeMirror.fromTextArea(
|
||||
$elm[0],
|
||||
{
|
||||
lineNumbers: true,
|
||||
@ -2012,14 +2011,14 @@ window.AJAX.registerOnload('server/status/monitor.js', function () {
|
||||
var rowData = $(this).parent().data('query');
|
||||
var query = rowData.argument || rowData.sql_text;
|
||||
|
||||
if (codeMirrorEditor) {
|
||||
if (window.codeMirrorEditor) {
|
||||
// TODO: somehow Functions.sqlPrettyPrint messes up the query, needs be fixed
|
||||
// query = Functions.sqlPrettyPrint(query);
|
||||
codeMirrorEditor.setValue(query);
|
||||
window.codeMirrorEditor.setValue(query);
|
||||
// Codemirror is bugged, it doesn't refresh properly sometimes.
|
||||
// Following lines seem to fix that
|
||||
setTimeout(function () {
|
||||
codeMirrorEditor.refresh();
|
||||
window.codeMirrorEditor.refresh();
|
||||
}, 50);
|
||||
} else {
|
||||
$('#sqlquery').val(query);
|
||||
@ -2045,8 +2044,8 @@ window.AJAX.registerOnload('server/status/monitor.js', function () {
|
||||
profilingChart.destroy();
|
||||
}
|
||||
$('#queryAnalyzerDialog').find('div.placeHolder').html('');
|
||||
if (codeMirrorEditor) {
|
||||
codeMirrorEditor.setValue('');
|
||||
if (window.codeMirrorEditor) {
|
||||
window.codeMirrorEditor.setValue('');
|
||||
} else {
|
||||
$('#sqlquery').val('');
|
||||
}
|
||||
@ -2065,7 +2064,7 @@ window.AJAX.registerOnload('server/status/monitor.js', function () {
|
||||
|
||||
$.post('index.php?route=/server/status/monitor/query', {
|
||||
'ajax_request': true,
|
||||
'query': codeMirrorEditor ? codeMirrorEditor.getValue() : $('#sqlquery').val(),
|
||||
'query': window.codeMirrorEditor ? window.codeMirrorEditor.getValue() : $('#sqlquery').val(),
|
||||
'database': db,
|
||||
'server': window.CommonParams.get('server')
|
||||
}, function (responseData) {
|
||||
|
||||
@ -8,7 +8,6 @@
|
||||
*/
|
||||
|
||||
/* global isStorageSupported */ // js/config.js
|
||||
/* global codeMirrorEditor */ // js/functions.js
|
||||
/* global makeGrid */ // js/makegrid.js
|
||||
/* global themeImagePath */ // templates/javascript/variables.twig
|
||||
|
||||
@ -95,8 +94,8 @@ Sql.setShowThisQuery = function () {
|
||||
&& window.localStorage.showThisQuery === '1') {
|
||||
$('input[name="show_query"]').prop('checked', true);
|
||||
if (db === storedDb && table === storedTable) {
|
||||
if (codeMirrorEditor) {
|
||||
codeMirrorEditor.setValue(storedQuery);
|
||||
if (window.codeMirrorEditor) {
|
||||
window.codeMirrorEditor.setValue(storedQuery);
|
||||
} else if (document.sqlform) {
|
||||
document.sqlform.sql_query.value = storedQuery;
|
||||
}
|
||||
@ -202,8 +201,8 @@ const handleSimulateQueryButton = function () {
|
||||
const deleteRegExp = new RegExp('^\\s*DELETE\\s+FROM\\s', 'i');
|
||||
let query = '';
|
||||
|
||||
if (codeMirrorEditor) {
|
||||
query = codeMirrorEditor.getValue();
|
||||
if (window.codeMirrorEditor) {
|
||||
query = window.codeMirrorEditor.getValue();
|
||||
} else {
|
||||
query = $('#sqlquery').val();
|
||||
}
|
||||
@ -248,9 +247,9 @@ const selectContent = function (element) {
|
||||
* @return {void}
|
||||
*/
|
||||
const setQuery = function (query) {
|
||||
if (codeMirrorEditor) {
|
||||
codeMirrorEditor.setValue(query);
|
||||
codeMirrorEditor.focus();
|
||||
if (window.codeMirrorEditor) {
|
||||
window.codeMirrorEditor.setValue(query);
|
||||
window.codeMirrorEditor.focus();
|
||||
} else if (document.sqlform) {
|
||||
document.sqlform.sql_query.value = query;
|
||||
document.sqlform.sql_query.focus();
|
||||
@ -269,13 +268,13 @@ const insertQuery = function (queryType) {
|
||||
setQuery('');
|
||||
return;
|
||||
} else if (queryType === 'format') {
|
||||
if (codeMirrorEditor) {
|
||||
if (window.codeMirrorEditor) {
|
||||
$('#querymessage').html(Messages.strFormatting +
|
||||
' <img class="ajaxIcon" src="' +
|
||||
themeImagePath + 'ajax_clock_small.gif" alt="">');
|
||||
var params = {
|
||||
'ajax_request': true,
|
||||
'sql': codeMirrorEditor.getValue(),
|
||||
'sql': window.codeMirrorEditor.getValue(),
|
||||
'server': window.CommonParams.get('server')
|
||||
};
|
||||
$.ajax({
|
||||
@ -284,7 +283,7 @@ const insertQuery = function (queryType) {
|
||||
data: params,
|
||||
success: function (data) {
|
||||
if (data.success) {
|
||||
codeMirrorEditor.setValue(data.sql);
|
||||
window.codeMirrorEditor.setValue(data.sql);
|
||||
}
|
||||
$('#querymessage').html('');
|
||||
},
|
||||
@ -373,9 +372,9 @@ const insertValueQuery = function () {
|
||||
}
|
||||
|
||||
/* CodeMirror support */
|
||||
if (codeMirrorEditor) {
|
||||
codeMirrorEditor.replaceSelection(columnsList);
|
||||
codeMirrorEditor.focus();
|
||||
if (window.codeMirrorEditor) {
|
||||
window.codeMirrorEditor.replaceSelection(columnsList);
|
||||
window.codeMirrorEditor.focus();
|
||||
// IE support
|
||||
} else if (document.selection) {
|
||||
myQuery.focus();
|
||||
@ -418,8 +417,8 @@ window.AJAX.registerTeardown('sql.js', function () {
|
||||
$(document).off('click', 'th.column_heading.marker');
|
||||
$(document).off('scroll', window);
|
||||
$(document).off('keyup', '.filter_rows');
|
||||
if (codeMirrorEditor) {
|
||||
codeMirrorEditor.off('change');
|
||||
if (window.codeMirrorEditor) {
|
||||
window.codeMirrorEditor.off('change');
|
||||
} else {
|
||||
$('#sqlquery').off('input propertychange');
|
||||
}
|
||||
@ -452,13 +451,13 @@ window.AJAX.registerTeardown('sql.js', function () {
|
||||
* @memberOf jQuery
|
||||
*/
|
||||
window.AJAX.registerOnload('sql.js', function () {
|
||||
if (codeMirrorEditor || document.sqlform) {
|
||||
if (window.codeMirrorEditor || document.sqlform) {
|
||||
Sql.setShowThisQuery();
|
||||
}
|
||||
$(function () {
|
||||
if (codeMirrorEditor) {
|
||||
codeMirrorEditor.on('change', function () {
|
||||
Sql.autoSave(codeMirrorEditor.getValue());
|
||||
if (window.codeMirrorEditor) {
|
||||
window.codeMirrorEditor.on('change', function () {
|
||||
Sql.autoSave(window.codeMirrorEditor.getValue());
|
||||
});
|
||||
} else {
|
||||
$('#sqlquery').on('input propertychange', function () {
|
||||
@ -683,8 +682,8 @@ window.AJAX.registerOnload('sql.js', function () {
|
||||
var db = $('input[name="db"]').val();
|
||||
var table = $('input[name="table"]').val();
|
||||
var query;
|
||||
if (codeMirrorEditor) {
|
||||
query = codeMirrorEditor.getValue();
|
||||
if (window.codeMirrorEditor) {
|
||||
query = window.codeMirrorEditor.getValue();
|
||||
} else {
|
||||
query = $('#sqlquery').val();
|
||||
}
|
||||
@ -756,8 +755,8 @@ window.AJAX.registerOnload('sql.js', function () {
|
||||
event.preventDefault();
|
||||
|
||||
var $form = $(this);
|
||||
if (codeMirrorEditor) {
|
||||
$form[0].elements.sql_query.value = codeMirrorEditor.getValue();
|
||||
if (window.codeMirrorEditor) {
|
||||
$form[0].elements.sql_query.value = window.codeMirrorEditor.getValue();
|
||||
}
|
||||
if (! Functions.checkSqlQuery($form[0])) {
|
||||
return false;
|
||||
@ -946,8 +945,8 @@ window.AJAX.registerOnload('sql.js', function () {
|
||||
var delimiter = $('#id_sql_delimiter').val();
|
||||
var dbName = $form.find('input[name="db"]').val();
|
||||
|
||||
if (codeMirrorEditor) {
|
||||
query = codeMirrorEditor.getValue();
|
||||
if (window.codeMirrorEditor) {
|
||||
query = window.codeMirrorEditor.getValue();
|
||||
} else {
|
||||
query = $('#sqlquery').val();
|
||||
}
|
||||
@ -1243,7 +1242,7 @@ window.AJAX.registerOnload('sql.js', function () {
|
||||
/**
|
||||
* Check if there is any saved query
|
||||
*/
|
||||
if (codeMirrorEditor || document.sqlform) {
|
||||
if (window.codeMirrorEditor || document.sqlform) {
|
||||
Sql.checkSavedQuery();
|
||||
}
|
||||
});
|
||||
|
||||
@ -1,6 +1,5 @@
|
||||
|
||||
/* global ColumnType, DataTable, JQPlotChartFactory */ // js/chart.js
|
||||
/* global codeMirrorEditor */ // js/functions.js
|
||||
|
||||
var chartData = {};
|
||||
var tempChartTitle;
|
||||
@ -362,8 +361,8 @@ window.AJAX.registerOnload('table/chart.js', function () {
|
||||
// handler for ajax form submission
|
||||
$('#tblchartform').on('submit', function () {
|
||||
var $form = $(this);
|
||||
if (codeMirrorEditor) {
|
||||
$form[0].elements.sql_query.value = codeMirrorEditor.getValue();
|
||||
if (window.codeMirrorEditor) {
|
||||
$form[0].elements.sql_query.value = window.codeMirrorEditor.getValue();
|
||||
}
|
||||
if (!Functions.checkSqlQuery($form[0])) {
|
||||
return false;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user