Fixed dashboard reloading even if subnodes under a dashboard or server selected.

pull/14/head
Aditya Toshniwal 2018-07-25 13:11:00 +01:00 committed by Dave Page
parent 53b5043520
commit be3f9570e3
1 changed files with 81 additions and 88 deletions

View File

@ -249,8 +249,6 @@ define('pgadmin.dashboard', [
// Handle treeview clicks
object_selected: function(item, itemData, node) {
let self = this;
/* Clear all the interval functions of previous dashboards */
self.clearIntervalId();
if (itemData && itemData._type && dashboardVisible) {
var treeHierarchy = node.getTreeNodeHierarchy(item),
@ -291,6 +289,8 @@ define('pgadmin.dashboard', [
url += self.sid;
cancel_query_url += self.sid + '/';
terminate_session_url += self.sid + '/';
} else {
is_server_dashboard = is_database_dashboard = false;
}
}
@ -306,8 +306,10 @@ define('pgadmin.dashboard', [
if (url !== $(dashboardPanel).data('dashboard_url') || (
url === $(dashboardPanel).data('dashboard_url') &&
$(dashboardPanel).data('server_status') == false)) {
// Clear out everything so any existing timers die off
$(div).empty();
/* Clear all the interval functions of previous dashboards */
self.clearIntervalId();
$.ajax({
url: url,
@ -325,9 +327,6 @@ define('pgadmin.dashboard', [
});
$(dashboardPanel).data('server_status', true);
}
else {
self.init_dashboard();
}
} else {
$(div).empty();
$(div).html(
@ -655,10 +654,6 @@ define('pgadmin.dashboard', [
init_dashboard: function() {
let self = this;
if(self.sid === -1 && self.did === -1) {
return;
}
/* Cache may take time to load for the first time
* Keep trying till available
*/
@ -683,8 +678,20 @@ define('pgadmin.dashboard', [
},
reflectPreferences: function() {
/* Common things can come here */
var self = this;
/* We will use old preferences for selective graph updates on preference change */
if(self.preferences) {
self.old_preferences = self.preferences;
self.preferences = window.top.pgAdmin.Browser.get_preferences_for_module('dashboards');
}
else {
self.preferences = window.top.pgAdmin.Browser.get_preferences_for_module('dashboards');
self.old_preferences = self.preferences;
}
if(is_server_dashboard || is_database_dashboard) {
/* Common things can come here */
var div_sessions = $('.dashboard-container').find('#graph-sessions')[0];
var div_tps = $('.dashboard-container').find('#graph-tps')[0];
var div_ti = $('.dashboard-container').find('#graph-ti')[0];
@ -708,16 +715,6 @@ define('pgadmin.dashboard', [
resolution : 5,
};
/* We will use old preferences for selective graph updates on preference change */
if(self.preferences) {
self.old_preferences = self.preferences;
self.preferences = window.top.pgAdmin.Browser.get_preferences_for_module('dashboards');
}
else {
self.preferences = window.top.pgAdmin.Browser.get_preferences_for_module('dashboards');
self.old_preferences = self.preferences;
}
if(self.preferences.show_graphs && $('#dashboard-graphs').hasClass('dashboard-hidden')) {
$('#dashboard-graphs').removeClass('dashboard-hidden');
}
@ -757,6 +754,13 @@ define('pgadmin.dashboard', [
);
}
if(!self.preferences.show_graphs && !self.preferences.show_activity) {
$('#dashboard-none-show').removeClass('dashboard-hidden');
}
else {
$('#dashboard-none-show').addClass('dashboard-hidden');
}
/* Dashboard specific preferences can be updated in the
* appropriate functions
*/
@ -766,12 +770,6 @@ define('pgadmin.dashboard', [
else if(is_database_dashboard) {
self.reflectPreferencesDatabase();
}
if(!self.preferences.show_graphs && !self.preferences.show_activity) {
$('#dashboard-none-show').removeClass('dashboard-hidden');
}
else {
$('#dashboard-none-show').addClass('dashboard-hidden');
}
},
reflectPreferencesServer: function() {
@ -1313,12 +1311,7 @@ define('pgadmin.dashboard', [
}
},
toggleVisibility: function(flag) {
// let self = this;
dashboardVisible = flag;
// if(dashboardVisible) {
// self.init_dashboard();
// }
},
can_take_action: function(m) {
// We will validate if user is allowed to cancel the active query