Fix an issue where JSON data would not be rendered in the Query Tool. Fixes #4105

This commit is contained in:
Aditya Toshniwal 2019-03-28 08:12:09 -04:00 committed by Dave Page
parent 6fb35f2649
commit fbc6aea497
2 changed files with 25 additions and 24 deletions

View File

@ -58,4 +58,5 @@ Bug fixes
| `Bug #4090 <https://redmine.postgresql.org/issues/4090>`_ - Improve the German translation for Backup Server.
| `Bug #4099 <https://redmine.postgresql.org/issues/4099>`_ - Fix SQL help for EPAS 10+, and refactor the URL generation code into a testable function.
| `Bug #4100 <https://redmine.postgresql.org/issues/4100>`_ - Ensure sequences can be created with increment, start, minimum and maximum options set.
| `Bug #4105 <https://redmine.postgresql.org/issues/4105>`_ - Fix an issue where JSON data would not be rendered in the Query Tool.
| `Bug #4109 <https://redmine.postgresql.org/issues/4109>`_ - Ensure View/Materialized View node should be visible after updating any property.

View File

@ -2422,31 +2422,31 @@ define('tools.querytool', [
if(data.types[0] && data.types[0].typname === 'json') {
/* json is sent as text, parse it */
explain_data_json = JSON.parse(data.result[0]);
}
if (explain_data_json && explain_data_json[0] &&
explain_data_json[0].hasOwnProperty('Plan') &&
_.isObject(explain_data_json[0]['Plan'])
) {
var explain_data = [JSON.stringify(explain_data_json, null, 2)];
explain_data_array.push(explain_data);
// Make sure - the 'Data Output' panel is visible, before - we
// start rendering the grid.
self.gridView.data_output_panel.focus();
setTimeout(
function() {
self.gridView.render_grid(
explain_data_array, self.columns, self.can_edit,
self.client_primary_key
);
// Make sure - the 'Explain' panel is visible, before - we
// start rendering the grid.
self.gridView.explain_panel.focus();
pgExplain.DrawJSONPlan(
$('.sql-editor-explain'), explain_data_json
);
}, 10
);
}
if (explain_data_json && explain_data_json[0] &&
explain_data_json[0].hasOwnProperty('Plan') &&
_.isObject(explain_data_json[0]['Plan'])
) {
var explain_data = [JSON.stringify(explain_data_json, null, 2)];
explain_data_array.push(explain_data);
// Make sure - the 'Data Output' panel is visible, before - we
// start rendering the grid.
self.gridView.data_output_panel.focus();
setTimeout(
function() {
self.gridView.render_grid(
explain_data_array, self.columns, self.can_edit,
self.client_primary_key
);
// Make sure - the 'Explain' panel is visible, before - we
// start rendering the grid.
self.gridView.explain_panel.focus();
pgExplain.DrawJSONPlan(
$('.sql-editor-explain'), explain_data_json
);
}, 10
);
} else {
// Make sure - the 'Data Output' panel is visible, before - we
// start rendering the grid.