mirror of
https://github.com/pgadmin-org/pgadmin4.git
synced 2025-02-25 18:55:31 -06:00
Fixed 'Remove the unnecessary boolean literals' code smell.
This commit is contained in:
parent
ec47a2aa66
commit
3b95a416ca
@ -186,13 +186,13 @@ define('pgadmin.node.server', [
|
||||
// Must be connected & super user & not in recovery mode
|
||||
return (node && node._type == 'server' &&
|
||||
node.connected && node.user.is_superuser
|
||||
&& !node.in_recovery);
|
||||
&& !(node.in_recovery??true));
|
||||
},
|
||||
wal_pause_enabled: function(node) {
|
||||
// Must be connected & is Super user & in Recovery mode
|
||||
return (node && node._type == 'server' &&
|
||||
node.connected && node.user.is_superuser
|
||||
&& node.in_recovery && !node.wal_pause);
|
||||
&& node.in_recovery && !(node.wal_pause??true));
|
||||
},
|
||||
wal_resume_enabled: function(node) {
|
||||
// Must be connected & is Super user & in Recovery mode
|
||||
|
@ -35,21 +35,21 @@ define('pgadmin.browser', [
|
||||
window.jQuery = window.$ = $;
|
||||
// Some scripts do export their object in the window only.
|
||||
// Generally the one, which do no have AMD support.
|
||||
var wcDocker = window.wcDocker;
|
||||
let wcDocker = window.wcDocker;
|
||||
$ = $ || window.jQuery || window.$;
|
||||
var CodeMirror = codemirror.default;
|
||||
let CodeMirror = codemirror.default;
|
||||
|
||||
var pgBrowser = pgAdmin.Browser = pgAdmin.Browser || {};
|
||||
var select_object_msg = gettext('Please select an object in the tree view.');
|
||||
let pgBrowser = pgAdmin.Browser = pgAdmin.Browser || {};
|
||||
let select_object_msg = gettext('Please select an object in the tree view.');
|
||||
|
||||
csrfToken.setPGCSRFToken(pgAdmin.csrf_token_header, pgAdmin.csrf_token);
|
||||
|
||||
Kerberos.validate_kerberos_ticket();
|
||||
|
||||
var panelEvents = {};
|
||||
let panelEvents = {};
|
||||
panelEvents[wcDocker.EVENT.VISIBILITY_CHANGED] = function() {
|
||||
if (this.isVisible()) {
|
||||
var obj = pgAdmin.Browser,
|
||||
let obj = pgAdmin.Browser,
|
||||
i = obj.tree ? obj.tree.selected() : undefined,
|
||||
d = i ? obj.tree.itemData(i) : undefined;
|
||||
|
||||
@ -61,7 +61,7 @@ define('pgadmin.browser', [
|
||||
}
|
||||
};
|
||||
|
||||
var initializeBrowserTree = pgAdmin.Browser.initializeBrowserTree =
|
||||
let initializeBrowserTree = pgAdmin.Browser.initializeBrowserTree =
|
||||
function(b) {
|
||||
InitTree.initBrowserTree(b).then(() => {
|
||||
b.tree.registerDraggableType({
|
||||
@ -306,7 +306,7 @@ define('pgadmin.browser', [
|
||||
},
|
||||
add_panels: function() {
|
||||
/* Add hooked-in panels by extensions */
|
||||
var panels = JSON.parse(pgBrowser.panels_items);
|
||||
let panels = JSON.parse(pgBrowser.panels_items);
|
||||
_.each(panels, function(panel) {
|
||||
if (panel.isIframe) {
|
||||
pgBrowser.frames[panel.name] = new pgBrowser.Frame({
|
||||
@ -361,7 +361,7 @@ define('pgadmin.browser', [
|
||||
},
|
||||
// A callback to load/fetch a script when a certain node is loaded
|
||||
register_script: function(n, m, p) {
|
||||
var scripts = this.scripts;
|
||||
let scripts = this.scripts;
|
||||
scripts[n] = _.isArray(scripts[n]) ? scripts[n] : [];
|
||||
scripts[n].push({'name': m, 'path': p, loaded: false});
|
||||
},
|
||||
@ -369,7 +369,7 @@ define('pgadmin.browser', [
|
||||
// Enable/disable menu options
|
||||
enable_disable_menus: function(item) {
|
||||
// Mechanism to enable/disable menus depending on the condition.
|
||||
var obj = this,
|
||||
let obj = this,
|
||||
// menu navigation bar
|
||||
navbar = $('#navbar-menu > ul').first(),
|
||||
// Drop down menu for objects
|
||||
@ -380,7 +380,7 @@ define('pgadmin.browser', [
|
||||
if (m instanceof pgAdmin.Browser.MenuItem) {
|
||||
m.update(d, item);
|
||||
} else {
|
||||
for (var key in m) {
|
||||
for (let key in m) {
|
||||
update_menuitem(m[key]);
|
||||
}
|
||||
}
|
||||
@ -411,7 +411,7 @@ define('pgadmin.browser', [
|
||||
);
|
||||
} else {
|
||||
// Create a dummy 'no object seleted' menu
|
||||
var create_submenu = pgAdmin.Browser.MenuGroup(
|
||||
let create_submenu = pgAdmin.Browser.MenuGroup(
|
||||
obj.menu_categories['create'], [{
|
||||
$el: $('<li><a class="dropdown-item disabled" href="#" role="menuitem">' + gettext('No object selected') + '</a></li>'),
|
||||
priority: 1,
|
||||
@ -422,7 +422,7 @@ define('pgadmin.browser', [
|
||||
}
|
||||
},
|
||||
init: function() {
|
||||
var obj=this;
|
||||
let obj=this;
|
||||
if (obj.initialized) {
|
||||
return;
|
||||
}
|
||||
@ -453,7 +453,7 @@ define('pgadmin.browser', [
|
||||
});
|
||||
|
||||
// Stored layout in database from the previous session
|
||||
var layout = pgBrowser.utils.layout;
|
||||
let layout = pgBrowser.utils.layout;
|
||||
obj.restore_layout(obj.docker, layout, obj.buildDefaultLayout.bind(obj), true);
|
||||
|
||||
obj.docker.on(wcDocker.EVENT.LAYOUT_CHANGED, function() {
|
||||
@ -503,7 +503,7 @@ define('pgadmin.browser', [
|
||||
selector: '.file-entry',
|
||||
autoHide: false,
|
||||
build: function(element) {
|
||||
var item = obj.tree.itemFrom(element),
|
||||
let item = obj.tree.itemFrom(element),
|
||||
d = obj.tree.itemData(item),
|
||||
menus = obj.menus['context'][d._type],
|
||||
$div = $('<div></div>'),
|
||||
@ -667,7 +667,7 @@ define('pgadmin.browser', [
|
||||
|
||||
// Add menus of module/extension at appropriate menu
|
||||
add_menus: function(menus) {
|
||||
var self = this,
|
||||
let self = this,
|
||||
pgMenu = this.menus,
|
||||
MenuItem = pgAdmin.Browser.MenuItem;
|
||||
_.each(menus, function(m) {
|
||||
@ -676,7 +676,7 @@ define('pgadmin.browser', [
|
||||
if ($.inArray(a, [
|
||||
'context', 'file', 'edit', 'object',
|
||||
'management', 'tools', 'help']) >= 0) {
|
||||
var _menus;
|
||||
let _menus;
|
||||
|
||||
// If current node is not visible in browser tree
|
||||
// then return from here
|
||||
@ -737,8 +737,8 @@ define('pgadmin.browser', [
|
||||
create_menus: function() {
|
||||
|
||||
/* Create menus */
|
||||
var navbar = $('#navbar-menu > ul').first();
|
||||
var obj = this;
|
||||
let navbar = $('#navbar-menu > ul').first();
|
||||
let obj = this;
|
||||
|
||||
_.each([
|
||||
{menu: 'file', id: '#mnu_file'},
|
||||
@ -746,7 +746,7 @@ define('pgadmin.browser', [
|
||||
{menu: 'tools', id: '#mnu_tools'},
|
||||
{menu: 'help', id:'#mnu_help'}],
|
||||
function(o) {
|
||||
var $mnu = navbar.children(o.id).first(),
|
||||
let $mnu = navbar.children(o.id).first(),
|
||||
$dropdown = $mnu.children('.dropdown-menu').first();
|
||||
$dropdown.empty();
|
||||
if(o.menu == 'help'){
|
||||
@ -768,9 +768,9 @@ define('pgadmin.browser', [
|
||||
showHelp: function(type, url, node, item) {
|
||||
if (type == 'object_help') {
|
||||
// Construct the URL
|
||||
var server = pgBrowser.tree.getTreeNodeHierarchy(item).server;
|
||||
var baseUrl = pgBrowser.utils.pg_help_path;
|
||||
var fullUrl = help.getHelpUrl(baseUrl, url, server.version);
|
||||
let server = pgBrowser.tree.getTreeNodeHierarchy(item).server;
|
||||
let baseUrl = pgBrowser.utils.pg_help_path;
|
||||
let fullUrl = help.getHelpUrl(baseUrl, url, server.version);
|
||||
|
||||
window.open(fullUrl, 'postgres_help');
|
||||
} else if(type == 'dialog_help') {
|
||||
@ -784,9 +784,9 @@ define('pgadmin.browser', [
|
||||
$('#live-search-field').focus();
|
||||
},
|
||||
_findTreeChildNode: function(_i, _d, _o) {
|
||||
var loaded = _o.t.wasLoad(_i),
|
||||
let loaded = _o.t.wasLoad(_i),
|
||||
onLoad = function() {
|
||||
var items = _o.t.children(_i),
|
||||
let items = _o.t.children(_i),
|
||||
i, d, n, idx = 0, size = items.length;
|
||||
for (; idx < size; idx++) {
|
||||
i = items[idx];
|
||||
@ -830,7 +830,7 @@ define('pgadmin.browser', [
|
||||
onLoad();
|
||||
},
|
||||
() => {
|
||||
var fail = _o && _o.o && _o.o.fail;
|
||||
let fail = _o && _o.o && _o.o.fail;
|
||||
if (fail && typeof(fail) == 'function') {
|
||||
fail.apply(_o.t, []);
|
||||
}
|
||||
@ -845,7 +845,7 @@ define('pgadmin.browser', [
|
||||
},
|
||||
|
||||
onAddTreeNode: function(_data, _hierarchy, _opts) {
|
||||
var ctx = {
|
||||
let ctx = {
|
||||
b: this, // Browser
|
||||
d: null, // current parent
|
||||
hasId: true,
|
||||
@ -863,7 +863,7 @@ define('pgadmin.browser', [
|
||||
o: _opts,
|
||||
},
|
||||
traversePath = function() {
|
||||
var _ctx = this, data;
|
||||
let _ctx = this, data;
|
||||
|
||||
_ctx.success = traversePath;
|
||||
if (_ctx.p.length) {
|
||||
@ -888,11 +888,11 @@ define('pgadmin.browser', [
|
||||
addItemNode = function() {
|
||||
// Append the new data in the tree under the current item.
|
||||
// We may need to pass it to proper collection node.
|
||||
var _ctx = this,
|
||||
let _ctx = this,
|
||||
first = (_ctx.i || this.t.wasLoad(_ctx.i)) &&
|
||||
this.t.first(_ctx.i),
|
||||
findChildNode = function(success, notFound) {
|
||||
var __ctx = this;
|
||||
let __ctx = this;
|
||||
__ctx.success = success;
|
||||
__ctx.notFound = notFound;
|
||||
|
||||
@ -908,13 +908,13 @@ define('pgadmin.browser', [
|
||||
}
|
||||
}.bind(_ctx),
|
||||
addNode = function() {
|
||||
var __ctx = this,
|
||||
let __ctx = this,
|
||||
items = __ctx.t.children(__ctx.i),
|
||||
s = 0, e = items.length - 1, i,
|
||||
linearSearch = function() {
|
||||
while (e >= s) {
|
||||
i = items[s];
|
||||
var d = __ctx.t.itemData(i);
|
||||
let d = __ctx.t.itemData(i);
|
||||
if (d._type === 'column') {
|
||||
if (pgAdmin.numeric_comparator(d._id, _data._id) == 1)
|
||||
return true;
|
||||
@ -933,7 +933,7 @@ define('pgadmin.browser', [
|
||||
return false;
|
||||
},
|
||||
binarySearch = function() {
|
||||
var d, m;
|
||||
let d, m;
|
||||
// Binary search only outperforms Linear search for n > 44.
|
||||
// Reference:
|
||||
// https://en.wikipedia.org/wiki/Binary_search_algorithm#cite_note-30
|
||||
@ -1007,8 +1007,8 @@ define('pgadmin.browser', [
|
||||
}
|
||||
});
|
||||
} else {
|
||||
var _append = function() {
|
||||
var ___ctx = this,
|
||||
let _append = function() {
|
||||
let ___ctx = this,
|
||||
_parent_data = ___ctx.t.itemData(___ctx.i);
|
||||
|
||||
___ctx.t.append(___ctx.i, _data).then(
|
||||
@ -1073,7 +1073,7 @@ define('pgadmin.browser', [
|
||||
findChildNode(
|
||||
selectNode,
|
||||
function() {
|
||||
var o = this && this.o;
|
||||
let o = this && this.o;
|
||||
if (
|
||||
o && o.fail && typeof(o.fail) == 'function'
|
||||
) {
|
||||
@ -1083,7 +1083,7 @@ define('pgadmin.browser', [
|
||||
);
|
||||
},
|
||||
() => {
|
||||
var o = this && this.o;
|
||||
let o = this && this.o;
|
||||
if (
|
||||
o && o.fail && typeof(o.fail) == 'function'
|
||||
) {
|
||||
@ -1108,7 +1108,7 @@ define('pgadmin.browser', [
|
||||
},
|
||||
|
||||
onUpdateTreeNode: function(_old, _new, _hierarchy, _opts) {
|
||||
var ctx = {
|
||||
let ctx = {
|
||||
b: this, // Browser
|
||||
d: null, // current parent
|
||||
i: null, // current item
|
||||
@ -1130,18 +1130,18 @@ define('pgadmin.browser', [
|
||||
op: null,
|
||||
},
|
||||
errorOut = function() {
|
||||
var fail = this.o && this.o.fail;
|
||||
let fail = this.o && this.o.fail;
|
||||
if (fail && typeof(fail) == 'function') {
|
||||
fail.apply(this.t, [this.i, _new, _old]);
|
||||
}
|
||||
}.bind(ctx),
|
||||
deleteNode = function() {
|
||||
var self = this,
|
||||
let self = this,
|
||||
pathOfTreeItems = this.pathOfTreeItems,
|
||||
findParent = function() {
|
||||
if (pathOfTreeItems.length) {
|
||||
pathOfTreeItems.pop();
|
||||
var length = pathOfTreeItems.length;
|
||||
let length = pathOfTreeItems.length;
|
||||
this.i = (length && pathOfTreeItems[length - 1].item) || null;
|
||||
this.d = (length && pathOfTreeItems[length - 1].d) || null;
|
||||
|
||||
@ -1158,7 +1158,7 @@ define('pgadmin.browser', [
|
||||
}
|
||||
}.bind(this);
|
||||
|
||||
var _item_parent = (this.i
|
||||
let _item_parent = (this.i
|
||||
&& this.t.hasParent(this.i)
|
||||
&& this.t.parent(this.i)) || null,
|
||||
_item_grand_parent = _item_parent ?
|
||||
@ -1172,7 +1172,7 @@ define('pgadmin.browser', [
|
||||
this.i && this.d && this.old._id == this.d._id &&
|
||||
this.old._type == this.d._type
|
||||
) {
|
||||
var _parent = this.t.parent(this.i) || null;
|
||||
let _parent = this.t.parent(this.i) || null;
|
||||
|
||||
// If there is no parent then just update the node
|
||||
if(this.t.isRootNode(_parent) ||
|
||||
@ -1181,7 +1181,7 @@ define('pgadmin.browser', [
|
||||
if(this.t.children().length === 1) {
|
||||
updateNode();
|
||||
} else {
|
||||
var that = this;
|
||||
let that = this;
|
||||
this.t.remove(this.i).then(() => {
|
||||
that.t.before(that.i, that.new).then((new_item) => {
|
||||
that.t.select(new_item);
|
||||
@ -1191,15 +1191,15 @@ define('pgadmin.browser', [
|
||||
});
|
||||
}
|
||||
} else {
|
||||
var postRemove = function() {
|
||||
let postRemove = function() {
|
||||
// If item has parent but no grand parent
|
||||
if (_item_parent.path !== '/browser' && !_item_grand_parent) {
|
||||
var parent = null;
|
||||
let parent = null;
|
||||
// We need to search in all parent siblings (eg: server groups)
|
||||
var parents = this.t.siblings(this.i) || [];
|
||||
let parents = this.t.siblings(this.i) || [];
|
||||
parents.push(this.i);
|
||||
_.each(parents, function (p) {
|
||||
var d = self.t.itemData(p);
|
||||
let d = self.t.itemData(p);
|
||||
// If new server group found then assign it parent
|
||||
if(d._id == self.new._pid) {
|
||||
parent = p;
|
||||
@ -1217,7 +1217,7 @@ define('pgadmin.browser', [
|
||||
// it right now.
|
||||
this.notFound = errorOut;
|
||||
|
||||
var loaded = this.t.wasLoad(parent),
|
||||
let loaded = this.t.wasLoad(parent),
|
||||
onLoad = function() {
|
||||
self.i = parent;
|
||||
self.pathOfTreeItems.push({coll: false, item: parent, d: self.d});
|
||||
@ -1230,7 +1230,7 @@ define('pgadmin.browser', [
|
||||
onLoad();
|
||||
},
|
||||
() => {
|
||||
var fail = self && self.o && self.o.fail;
|
||||
let fail = self && self.o && self.o.fail;
|
||||
if (
|
||||
fail && typeof(fail) == 'function'
|
||||
) {
|
||||
@ -1244,7 +1244,7 @@ define('pgadmin.browser', [
|
||||
}
|
||||
} else {
|
||||
// This is for rest of the nodes
|
||||
var _parentData = this.d;
|
||||
let _parentData = this.d;
|
||||
// Find the grand-parent, or the collection node of parent.
|
||||
findParent();
|
||||
|
||||
@ -1286,12 +1286,12 @@ define('pgadmin.browser', [
|
||||
|
||||
}.bind(ctx),
|
||||
findNewParent = function(_d) {
|
||||
var findParent = function() {
|
||||
var pathOfTreeItems = this.pathOfTreeItems;
|
||||
let findParent = function() {
|
||||
let pathOfTreeItems = this.pathOfTreeItems;
|
||||
|
||||
if (pathOfTreeItems.length) {
|
||||
pathOfTreeItems.pop();
|
||||
var length = pathOfTreeItems.length;
|
||||
let length = pathOfTreeItems.length;
|
||||
this.i = (length && pathOfTreeItems[length - 1].item) || null;
|
||||
this.d = (length && pathOfTreeItems[length - 1].d) || null;
|
||||
|
||||
@ -1338,11 +1338,11 @@ define('pgadmin.browser', [
|
||||
if (
|
||||
this.i && this.d && this.new._type == this.d._type
|
||||
) {
|
||||
var self = this,
|
||||
let self = this,
|
||||
_id = this.d._id;
|
||||
if (this.new._id != this.d._id) {
|
||||
// Found the new oid, update its node_id
|
||||
var node_data = this.t.itemData(ctx.i);
|
||||
let node_data = this.t.itemData(ctx.i);
|
||||
node_data._id = _id = this.new._id;
|
||||
}
|
||||
if (this.new._id == _id) {
|
||||
@ -1365,13 +1365,13 @@ define('pgadmin.browser', [
|
||||
}, 10);
|
||||
}
|
||||
}
|
||||
var success = this.o && this.o.success;
|
||||
let success = this.o && this.o.success;
|
||||
if (success && typeof(success) == 'function') {
|
||||
success.apply(this.t, [this.i, _old, _new]);
|
||||
}
|
||||
}.bind(ctx),
|
||||
traversePath = function() {
|
||||
var _ctx = this, data;
|
||||
let _ctx = this, data;
|
||||
|
||||
_ctx.success = traversePath;
|
||||
if (_ctx.p.length) {
|
||||
@ -1398,11 +1398,11 @@ define('pgadmin.browser', [
|
||||
return true;
|
||||
}.bind(ctx),
|
||||
addItemNode = function() {
|
||||
var _ctx = this,
|
||||
let _ctx = this,
|
||||
first = (_ctx.i || this.t.wasLoad(_ctx.i)) &&
|
||||
this.t.first(_ctx.i),
|
||||
findChildNode = function(success, notFound) {
|
||||
var __ctx = this;
|
||||
let __ctx = this;
|
||||
__ctx.success = success;
|
||||
__ctx.notFound = notFound;
|
||||
|
||||
@ -1418,13 +1418,13 @@ define('pgadmin.browser', [
|
||||
}
|
||||
}.bind(_ctx),
|
||||
addNode = function() {
|
||||
var __ctx = this,
|
||||
let __ctx = this,
|
||||
items = __ctx.t.children(__ctx.i),
|
||||
s = 0, e = items.length - 1, i,
|
||||
linearSearch = function() {
|
||||
while (e >= s) {
|
||||
i = items[s];
|
||||
var d = __ctx.t.itemData(i);
|
||||
let d = __ctx.t.itemData(i);
|
||||
if (d._type === 'column') {
|
||||
if (pgAdmin.numeric_comparator(d._id, _new._id) == 1)
|
||||
return true;
|
||||
@ -1444,7 +1444,7 @@ define('pgadmin.browser', [
|
||||
binarySearch = function() {
|
||||
while (e - s > 22) {
|
||||
i = items[s];
|
||||
var d = __ctx.t.itemData(i);
|
||||
let d = __ctx.t.itemData(i);
|
||||
if (d._type === 'column') {
|
||||
if (pgAdmin.numeric_comparator(d._id, _new._id) != -1)
|
||||
return true;
|
||||
@ -1468,7 +1468,7 @@ define('pgadmin.browser', [
|
||||
i = null;
|
||||
return false;
|
||||
}
|
||||
var m = s + Math.round((e - s) / 2);
|
||||
let m = s + Math.round((e - s) / 2);
|
||||
i = items[m];
|
||||
d = __ctx.t.itemData(i);
|
||||
if(d._type === 'column'){
|
||||
@ -1510,7 +1510,7 @@ define('pgadmin.browser', [
|
||||
}
|
||||
});
|
||||
} else {
|
||||
var _appendNode = function() {
|
||||
let _appendNode = function() {
|
||||
__ctx.t.append(__ctx.i, _new).then(
|
||||
(new_item) => {
|
||||
__ctx.t.openPath(new_item);
|
||||
@ -1550,7 +1550,7 @@ define('pgadmin.browser', [
|
||||
findChildNode(
|
||||
selectNode,
|
||||
function() {
|
||||
var o = this && this.o;
|
||||
let o = this && this.o;
|
||||
if (
|
||||
o && o.fail && typeof(o.fail) == 'function'
|
||||
) {
|
||||
@ -1560,7 +1560,7 @@ define('pgadmin.browser', [
|
||||
);
|
||||
},
|
||||
() => {
|
||||
var o = this && this.o;
|
||||
let o = this && this.o;
|
||||
if (
|
||||
o && o.fail && typeof(o.fail) == 'function'
|
||||
) {
|
||||
@ -1616,7 +1616,7 @@ define('pgadmin.browser', [
|
||||
},
|
||||
|
||||
onRefreshTreeNode: function(_i, _opts) {
|
||||
var _d = _i && this.tree.itemData(_i),
|
||||
let _d = _i && this.tree.itemData(_i),
|
||||
n = _d && _d._type && this.Nodes[_d._type],
|
||||
ctx = {
|
||||
b: this, // Browser
|
||||
@ -1659,7 +1659,7 @@ define('pgadmin.browser', [
|
||||
ctx.b._refreshNode(ctx, ctx.branch);
|
||||
},
|
||||
error: function() {
|
||||
var fail = (_opts.o && _opts.o.fail) || _opts.fail;
|
||||
let fail = (_opts.o && _opts.o.fail) || _opts.fail;
|
||||
|
||||
if (typeof(fail) == 'function') {
|
||||
fail();
|
||||
@ -1668,8 +1668,8 @@ define('pgadmin.browser', [
|
||||
});
|
||||
return;
|
||||
}
|
||||
var fetchNodeInfo = function(__i, __d, __n) {
|
||||
var info = __n.getTreeNodeHierarchy(__i),
|
||||
let fetchNodeInfo = function(__i, __d, __n) {
|
||||
let info = __n.getTreeNodeHierarchy(__i),
|
||||
url = __n.generate_url(__i, 'nodes', __d, true);
|
||||
|
||||
$.ajax({
|
||||
@ -1680,7 +1680,7 @@ define('pgadmin.browser', [
|
||||
})
|
||||
.done(function(res) {
|
||||
// Node information can come as result/data
|
||||
var newData = res.result || res.data;
|
||||
let newData = res.result || res.data;
|
||||
|
||||
newData._label = newData.label;
|
||||
newData.label = _.escape(newData.label);
|
||||
@ -1692,7 +1692,7 @@ define('pgadmin.browser', [
|
||||
ctx.t.setInode(ctx.i, {inode: true});
|
||||
|
||||
// This will update the tree item data.
|
||||
var itemData = ctx.t.itemData(ctx.i);
|
||||
let itemData = ctx.t.itemData(ctx.i);
|
||||
_.extend(itemData, newData);
|
||||
|
||||
if (
|
||||
@ -1704,7 +1704,7 @@ define('pgadmin.browser', [
|
||||
}
|
||||
}
|
||||
ctx.b._refreshNode(ctx, ctx.branch);
|
||||
var success = (ctx.o && ctx.o.success) || ctx.success;
|
||||
let success = (ctx.o && ctx.o.success) || ctx.success;
|
||||
if (success && typeof(success) == 'function') {
|
||||
success();
|
||||
}
|
||||
@ -1713,7 +1713,7 @@ define('pgadmin.browser', [
|
||||
if (!pgHandleItemError(
|
||||
xhr, {item: __i, info: info}
|
||||
)) {
|
||||
var contentType = xhr.getResponseHeader('Content-Type'),
|
||||
let contentType = xhr.getResponseHeader('Content-Type'),
|
||||
jsonResp = (
|
||||
contentType &&
|
||||
contentType.indexOf('application/json') == 0 &&
|
||||
@ -1721,7 +1721,7 @@ define('pgadmin.browser', [
|
||||
) || {};
|
||||
|
||||
if (xhr.status == 410 && jsonResp.success == 0) {
|
||||
var parent = ctx.t.parent(ctx.i);
|
||||
let parent = ctx.t.parent(ctx.i);
|
||||
|
||||
ctx.t.remove(ctx.i, {
|
||||
success: function() {
|
||||
@ -1749,7 +1749,7 @@ define('pgadmin.browser', [
|
||||
}.bind(this);
|
||||
|
||||
if (n && n.collection_node) {
|
||||
var p = ctx.i = this.tree.parent(_i),
|
||||
let p = ctx.i = this.tree.parent(_i),
|
||||
unloadNode = function() {
|
||||
this.tree.unload(_i, {
|
||||
success: function() {
|
||||
@ -1802,11 +1802,10 @@ define('pgadmin.browser', [
|
||||
},
|
||||
|
||||
removeChildTreeNodesById: function(_parentNode, _collType, _childIds) {
|
||||
var tree_local = pgBrowser.tree;
|
||||
let tree_local = pgBrowser.tree, childNode, childNodeData;
|
||||
if(_parentNode && _collType) {
|
||||
var children = tree_local.children(_parentNode),
|
||||
idx = 0, size = children.length,
|
||||
childNode, childNodeData;
|
||||
let children = tree_local.children(_parentNode),
|
||||
idx = 0, size = children.length;
|
||||
|
||||
_parentNode = null;
|
||||
|
||||
@ -1822,9 +1821,8 @@ define('pgadmin.browser', [
|
||||
}
|
||||
|
||||
if (_parentNode) {
|
||||
children = tree_local.children(_parentNode);
|
||||
idx = 0;
|
||||
size = children.length;
|
||||
let children = tree_local.children(_parentNode),
|
||||
idx = 0, size = children.length;
|
||||
|
||||
for (; idx < size; idx++) {
|
||||
childNode = children[idx];
|
||||
@ -1840,7 +1838,7 @@ define('pgadmin.browser', [
|
||||
},
|
||||
|
||||
removeTreeNode: function(_node, _selectNext, _parentNode) {
|
||||
var tree_local = pgBrowser.tree,
|
||||
let tree_local = pgBrowser.tree,
|
||||
nodeToSelect = null;
|
||||
|
||||
if (!_node)
|
||||
@ -1868,7 +1866,7 @@ define('pgadmin.browser', [
|
||||
},
|
||||
|
||||
findSiblingTreeNode: function(_node, _id) {
|
||||
var tree_local = pgBrowser.tree,
|
||||
let tree_local = pgBrowser.tree,
|
||||
parentNode = tree_local.parent(_node),
|
||||
siblings = tree_local.children(parentNode),
|
||||
idx = 0, nodeData, node;
|
||||
@ -1884,7 +1882,7 @@ define('pgadmin.browser', [
|
||||
},
|
||||
|
||||
findParentTreeNodeByType: function(_node, _parentType) {
|
||||
var tree_local = pgBrowser.tree,
|
||||
let tree_local = pgBrowser.tree,
|
||||
nodeData,
|
||||
node = _node;
|
||||
|
||||
@ -1899,7 +1897,7 @@ define('pgadmin.browser', [
|
||||
},
|
||||
|
||||
findChildCollectionTreeNode: function(_node, _collType) {
|
||||
var tree_local = pgBrowser.tree,
|
||||
let tree_local = pgBrowser.tree,
|
||||
nodeData, idx = 0,
|
||||
node,
|
||||
children = _node && tree_local.children(_node);
|
||||
@ -1918,7 +1916,7 @@ define('pgadmin.browser', [
|
||||
},
|
||||
|
||||
addChildTreeNodes: function(_treeHierarchy, _node, _type, _arrayIds, _callback) {
|
||||
var module = _type in pgBrowser.Nodes && pgBrowser.Nodes[_type],
|
||||
let module = _type in pgBrowser.Nodes && pgBrowser.Nodes[_type],
|
||||
childTreeInfo = _arrayIds.length && _.extend(
|
||||
{}, _.mapObject(_treeHierarchy, function(_val) {
|
||||
_val.priority -= 1; return _val;
|
||||
@ -1932,7 +1930,7 @@ define('pgadmin.browser', [
|
||||
return;
|
||||
}
|
||||
|
||||
var childDummyInfo = {
|
||||
let childDummyInfo = {
|
||||
'_id': _arrayIds.pop(), '_type': _type, 'priority': 0,
|
||||
},
|
||||
childNodeUrl;
|
||||
@ -1989,8 +1987,8 @@ define('pgadmin.browser', [
|
||||
},
|
||||
|
||||
_refreshNode: function(_ctx, _d) {
|
||||
var traverseNodes = function(__d) {
|
||||
var __ctx = this, idx = 0, ctx, d,
|
||||
let traverseNodes = function(__d) {
|
||||
let __ctx = this, idx = 0, ctx, d,
|
||||
size = (__d.branch && __d.branch.length) || 0,
|
||||
findNode = function(i_findNode, d_findNode, ctx_findNode) {
|
||||
setTimeout(
|
||||
@ -2002,7 +2000,7 @@ define('pgadmin.browser', [
|
||||
|
||||
for (; idx < size; idx++) {
|
||||
d = __d.branch[idx];
|
||||
var n = __ctx.b.Nodes[d._type];
|
||||
let n = __ctx.b.Nodes[d._type];
|
||||
ctx = {
|
||||
b: __ctx.b,
|
||||
t: __ctx.t,
|
||||
@ -2063,7 +2061,7 @@ define('pgadmin.browser', [
|
||||
|
||||
// This function will return the name and version of the browser.
|
||||
get_browser: function() {
|
||||
var ua=navigator.userAgent,tem,M=ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i) || [];
|
||||
let ua=navigator.userAgent,tem,M=ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i) || [];
|
||||
if(/trident/i.test(M[1])) {
|
||||
tem=/\brv[ :]+(\d+)/g.exec(ua) || [];
|
||||
return {name:'IE', version:(tem[1]||'')};
|
||||
|
@ -24,7 +24,7 @@ define('pgadmin.browser.node', [
|
||||
commonUtils
|
||||
) {
|
||||
|
||||
var wcDocker = window.wcDocker,
|
||||
let wcDocker = window.wcDocker,
|
||||
keyCode = {
|
||||
ENTER: 13,
|
||||
ESCAPE: 27,
|
||||
@ -48,8 +48,8 @@ define('pgadmin.browser.node', [
|
||||
// It is unlikely - we will instantiate an object for this class.
|
||||
// (Inspired by Backbone.extend function)
|
||||
pgBrowser.Node.extend = function(props, initialize) {
|
||||
var parent = this;
|
||||
var child;
|
||||
let parent = this;
|
||||
let child;
|
||||
|
||||
// The constructor function for the new subclass is defined to simply call
|
||||
// the parent's constructor.
|
||||
@ -67,7 +67,7 @@ define('pgadmin.browser.node', [
|
||||
if (!(initialize??true))
|
||||
return child;
|
||||
|
||||
var bindToChild = function(cb) {
|
||||
let bindToChild = function(cb) {
|
||||
if (typeof(child.callbacks[cb]) == 'function') {
|
||||
child.callbacks[cb] = child.callbacks[cb].bind(child);
|
||||
}
|
||||
@ -107,7 +107,7 @@ define('pgadmin.browser.node', [
|
||||
//
|
||||
// NOTE: Override this for each node for initialization purpose
|
||||
Init: function() {
|
||||
var self = this;
|
||||
let self = this;
|
||||
if (self.node_initialized)
|
||||
return;
|
||||
self.node_initialized = true;
|
||||
@ -231,7 +231,7 @@ define('pgadmin.browser.node', [
|
||||
// For each script type create menu
|
||||
_.each(self.hasScriptTypes, function(stype) {
|
||||
|
||||
var type_label = gettext('%s Script',stype.toUpperCase());
|
||||
let type_label = gettext('%s Script',stype.toUpperCase());
|
||||
|
||||
stype = stype.toLowerCase();
|
||||
|
||||
@ -271,7 +271,7 @@ define('pgadmin.browser.node', [
|
||||
if (itemData._type == 'database' && !itemData.allowConn)
|
||||
return false;
|
||||
|
||||
var parentData = pgBrowser.tree.getTreeNodeHierarchy(item);
|
||||
let parentData = pgBrowser.tree.getTreeNodeHierarchy(item);
|
||||
if (_.indexOf(['create', 'insert', 'update', 'delete'], data.script) != -1) {
|
||||
if (itemData.type == 'role' &&
|
||||
parentData.server.user.can_create_role) {
|
||||
@ -300,7 +300,7 @@ define('pgadmin.browser.node', [
|
||||
// Used to generate view for the particular node properties, edit,
|
||||
// creation.
|
||||
getView: function(item, type, el, node, formType, callback, ctx, cancelFunc) {
|
||||
var that = this;
|
||||
let that = this;
|
||||
|
||||
if (!this.type || this.type == '')
|
||||
// We have no information, how to generate view for this type.
|
||||
@ -309,14 +309,14 @@ define('pgadmin.browser.node', [
|
||||
if (this.model) {
|
||||
// This will be the URL, used for object manipulation.
|
||||
// i.e. Create, Update in these cases
|
||||
var urlBase = this.generate_url(item, type, node, false, null, that.url_jump_after_node);
|
||||
let urlBase = this.generate_url(item, type, node, false, null, that.url_jump_after_node);
|
||||
|
||||
if (!urlBase)
|
||||
// Ashamed of myself, I don't know how to manipulate this
|
||||
// node.
|
||||
return null;
|
||||
|
||||
var attrs = {};
|
||||
let attrs = {};
|
||||
|
||||
// In order to get the object data from the server, we must set
|
||||
// object-id in the model (except in the create mode).
|
||||
@ -326,7 +326,7 @@ define('pgadmin.browser.node', [
|
||||
}
|
||||
|
||||
// We know - which data model to be used for this object.
|
||||
var info = pgBrowser.tree.getTreeNodeHierarchy(item),
|
||||
let info = pgBrowser.tree.getTreeNodeHierarchy(item),
|
||||
newModel = new(this.model.extend({
|
||||
urlRoot: urlBase,
|
||||
}))(
|
||||
@ -350,8 +350,8 @@ define('pgadmin.browser.node', [
|
||||
};
|
||||
}
|
||||
|
||||
var onSessionInvalid = function(msg) {
|
||||
var alertMessage = `
|
||||
let onSessionInvalid = function(msg) {
|
||||
let alertMessage = `
|
||||
<div class="error-in-footer">
|
||||
<div class="d-flex px-2 py-1">
|
||||
<div class="pr-2">
|
||||
@ -371,7 +371,7 @@ define('pgadmin.browser.node', [
|
||||
}.bind(that.statusBar));
|
||||
}
|
||||
|
||||
var sessHasChanged = false;
|
||||
let sessHasChanged = false;
|
||||
if(this.sessChanged && this.sessChanged()){
|
||||
sessHasChanged = true;
|
||||
}
|
||||
@ -380,7 +380,7 @@ define('pgadmin.browser.node', [
|
||||
return true;
|
||||
};
|
||||
|
||||
var onSessionValidated = function(sessHasChanged) {
|
||||
let onSessionValidated = function(sessHasChanged) {
|
||||
|
||||
if (!_.isUndefined(that.statusBar)) {
|
||||
that.statusBar.empty().css('visibility', 'hidden');
|
||||
@ -394,10 +394,11 @@ define('pgadmin.browser.node', [
|
||||
newModel.on('pgadmin-session:valid', onSessionValidated);
|
||||
newModel.on('pgadmin-session:invalid', onSessionInvalid);
|
||||
}
|
||||
|
||||
let view;
|
||||
// 'schema' has the information about how to generate the form.
|
||||
if (_.size(fields)) {
|
||||
// This will contain the actual view
|
||||
var view;
|
||||
|
||||
if (formType == 'fieldset') {
|
||||
// It is used to show, edit, create the object in the
|
||||
@ -417,17 +418,17 @@ define('pgadmin.browser.node', [
|
||||
});
|
||||
}
|
||||
|
||||
var setFocusOnEl = function() {
|
||||
var container = $(el).find('.tab-content:first > .tab-pane.active:first');
|
||||
let setFocusOnEl = function() {
|
||||
let container = $(el).find('.tab-content:first > .tab-pane.active:first');
|
||||
commonUtils.findAndSetFocus(container);
|
||||
};
|
||||
|
||||
if (!newModel.isNew()) {
|
||||
// This is definetely not in create mode
|
||||
var msgDiv = '<div role="status" class="pg-panel-message pg-panel-properties-message">' +
|
||||
let msgDiv = '<div role="status" class="pg-panel-message pg-panel-properties-message">' +
|
||||
gettext('Retrieving data from the server...') + '</div>',
|
||||
$msgDiv = $(msgDiv);
|
||||
var timer = setTimeout(function(_ctx) {
|
||||
let timer = setTimeout(function(_ctx) {
|
||||
// notify user if request is taking longer than 1 second
|
||||
|
||||
if (!_.isUndefined(_ctx)) {
|
||||
@ -436,7 +437,7 @@ define('pgadmin.browser.node', [
|
||||
}, 1000, ctx);
|
||||
|
||||
|
||||
var fetchAjaxHook = function() {
|
||||
let fetchAjaxHook = function() {
|
||||
newModel.fetch({
|
||||
success: function() {
|
||||
// Clear timeout and remove message
|
||||
@ -450,7 +451,7 @@ define('pgadmin.browser.node', [
|
||||
newModel.startNewSession();
|
||||
},
|
||||
error: function(model, xhr, options) {
|
||||
var _label = that && item ?
|
||||
let _label = that && item ?
|
||||
pgBrowser.tree.getTreeNodeHierarchy(
|
||||
item
|
||||
)[that.type].label : '';
|
||||
@ -498,13 +499,13 @@ define('pgadmin.browser.node', [
|
||||
return null;
|
||||
},
|
||||
addUtilityPanel: function(width, height, docker) {
|
||||
var body = window.document.body,
|
||||
let body = window.document.body,
|
||||
el = document.createElement('div'),
|
||||
dockerObject = docker || pgBrowser.docker;
|
||||
|
||||
body.insertBefore(el, body.firstChild);
|
||||
|
||||
var new_width = screen.width < 700 ? screen.width * 0.95 : screen.width * 0.5,
|
||||
let new_width = screen.width < 700 ? screen.width * 0.95 : screen.width * 0.5,
|
||||
new_height = screen.height < 500 ? screen.height * 0.95 : screen.height * 0.4;
|
||||
if (!_.isUndefined(width) && !_.isNull(width)) {
|
||||
new_width = width;
|
||||
@ -516,7 +517,7 @@ define('pgadmin.browser.node', [
|
||||
let x = (body.offsetWidth - new_width) / 2;
|
||||
let y = (body.offsetHeight - new_height) / 4;
|
||||
|
||||
var new_panel = dockerObject.addPanel(
|
||||
let new_panel = dockerObject.addPanel(
|
||||
'utility_props', window.wcDocker.DOCK.FLOAT, undefined, {
|
||||
w: new_width,
|
||||
h: new_height,
|
||||
@ -537,7 +538,7 @@ define('pgadmin.browser.node', [
|
||||
},
|
||||
|
||||
onEventResizeEnded: function() {
|
||||
var $container = this.$container.find('.obj_properties').first(),
|
||||
let $container = this.$container.find('.obj_properties').first(),
|
||||
v = $container.data('obj-view');
|
||||
|
||||
if (v && v.model && v.model) {
|
||||
@ -551,7 +552,7 @@ define('pgadmin.browser.node', [
|
||||
}
|
||||
},
|
||||
registerDockerPanel: function(docker, name, params) {
|
||||
var w = docker || pgBrowser.docker,
|
||||
let w = docker || pgBrowser.docker,
|
||||
p = w.findPanels(name);
|
||||
|
||||
if (p && p.length == 1)
|
||||
@ -570,13 +571,13 @@ define('pgadmin.browser.node', [
|
||||
p.load(w);
|
||||
},
|
||||
registerUtilityPanel: function(docker) {
|
||||
var w = docker || pgBrowser.docker,
|
||||
let w = docker || pgBrowser.docker,
|
||||
p = w.findPanels('utility_props');
|
||||
|
||||
if (p && p.length == 1)
|
||||
return;
|
||||
|
||||
var events = {};
|
||||
let events = {};
|
||||
events[wcDocker.EVENT.RESIZE_ENDED] = this.onEventResizeEnded;
|
||||
|
||||
p = new pgBrowser.Panel({
|
||||
@ -596,13 +597,13 @@ define('pgadmin.browser.node', [
|
||||
p.load(w);
|
||||
},
|
||||
register_node_panel: function() {
|
||||
var w = pgBrowser.docker,
|
||||
let w = pgBrowser.docker,
|
||||
p = w.findPanels('node_props');
|
||||
|
||||
if (p && p.length == 1)
|
||||
return;
|
||||
|
||||
var events = {};
|
||||
let events = {};
|
||||
events[wcDocker.EVENT.RESIZE_ENDED] = this.onEventResizeEnded;
|
||||
|
||||
p = new pgBrowser.Panel({
|
||||
@ -677,11 +678,12 @@ define('pgadmin.browser.node', [
|
||||
*
|
||||
**/
|
||||
show_obj_properties: function(args, item) {
|
||||
var t = pgBrowser.tree,
|
||||
let t = pgBrowser.tree,
|
||||
i = (args && args.item) || item || t.selected(),
|
||||
d = i ? t.itemData(i) : undefined,
|
||||
o = this,
|
||||
l = o.title.apply(this, [d]);
|
||||
l = o.title.apply(this, [d]),
|
||||
p;
|
||||
|
||||
// Make sure - the properties dialog type registered
|
||||
pgBrowser.Node.register_node_panel();
|
||||
@ -690,7 +692,7 @@ define('pgadmin.browser.node', [
|
||||
if (!d)
|
||||
return;
|
||||
|
||||
var self = this,
|
||||
let self = this,
|
||||
isParent = (_.isArray(this.parent_type) ?
|
||||
function(_d) {
|
||||
return (_.indexOf(self.parent_type, _d._type) != -1);
|
||||
@ -698,7 +700,7 @@ define('pgadmin.browser.node', [
|
||||
return (self.parent_type == _d._type);
|
||||
}),
|
||||
addPanel = function() {
|
||||
var body = window.document.body,
|
||||
let body = window.document.body,
|
||||
el = document.createElement('div');
|
||||
|
||||
body.insertBefore(el, body.firstChild);
|
||||
@ -759,7 +761,7 @@ define('pgadmin.browser.node', [
|
||||
h = window.innerHeight;
|
||||
}
|
||||
|
||||
var new_panel = pgBrowser.docker.addPanel(
|
||||
let new_panel = pgBrowser.docker.addPanel(
|
||||
'node_props', wcDocker.DOCK.FLOAT, undefined, {
|
||||
w: w + 'px',
|
||||
h: h + 'px',
|
||||
@ -791,7 +793,7 @@ define('pgadmin.browser.node', [
|
||||
// And, actual parent of a table is schema, not Tables.
|
||||
while (i && t.hasParent(i)) {
|
||||
i = t.parent(i);
|
||||
var pd = t.itemData(i);
|
||||
let pd = t.itemData(i);
|
||||
|
||||
if (isParent(pd)) {
|
||||
// Assign the data, this is my actual parent.
|
||||
@ -824,14 +826,14 @@ define('pgadmin.browser.node', [
|
||||
} else {
|
||||
if (pgBrowser.Node.panels && pgBrowser.Node.panels[d.id] &&
|
||||
pgBrowser.Node.panels[d.id].$container) {
|
||||
var p = pgBrowser.Node.panels[d.id];
|
||||
p = pgBrowser.Node.panels[d.id];
|
||||
/** TODO ::
|
||||
* Run in edit mode (if asked) only when it is
|
||||
* not already been running edit mode
|
||||
**/
|
||||
var mode = p.$container.attr('action-mode');
|
||||
let mode = p.$container.attr('action-mode');
|
||||
if (mode) {
|
||||
var msg = gettext('Are you sure want to stop editing the properties of %s "%s"?');
|
||||
let msg = gettext('Are you sure want to stop editing the properties of %s "%s"?');
|
||||
if (args.action == 'edit') {
|
||||
msg = gettext('Are you sure want to reset the current changes and re-open the panel for %s "%s"?');
|
||||
}
|
||||
@ -868,7 +870,7 @@ define('pgadmin.browser.node', [
|
||||
},
|
||||
// Delete the selected object
|
||||
delete_obj: function(args, item) {
|
||||
var input = args || {
|
||||
let input = args || {
|
||||
'url': 'drop',
|
||||
},
|
||||
obj = this,
|
||||
@ -883,9 +885,9 @@ define('pgadmin.browser.node', [
|
||||
* Make sure - we're using the correct version of node
|
||||
*/
|
||||
obj = pgBrowser.Nodes[d._type];
|
||||
var objName = _.unescape(d.label);
|
||||
let objName = _.unescape(d.label);
|
||||
|
||||
var msg, title;
|
||||
let msg, title;
|
||||
|
||||
if (input.url == 'delete') {
|
||||
|
||||
@ -934,9 +936,9 @@ define('pgadmin.browser.node', [
|
||||
pgBrowser.report_error(res.errormsg, res.info);
|
||||
} else {
|
||||
// Remove the node from tree and set collection node as selected.
|
||||
var selectNextNode = true;
|
||||
let selectNextNode = true;
|
||||
if(obj.selectParentNodeOnDelete) {
|
||||
var prv_i = t.parent(i);
|
||||
let prv_i = t.parent(i);
|
||||
setTimeout(function() {
|
||||
t.select(prv_i);
|
||||
}, 10);
|
||||
@ -947,11 +949,11 @@ define('pgadmin.browser.node', [
|
||||
return true;
|
||||
})
|
||||
.fail(function(jqx) {
|
||||
var errmsg = jqx.responseText;
|
||||
let errmsg = jqx.responseText;
|
||||
/* Error from the server */
|
||||
if (jqx.status == 417 || jqx.status == 410 || jqx.status == 500) {
|
||||
try {
|
||||
var data = JSON.parse(jqx.responseText);
|
||||
let data = JSON.parse(jqx.responseText);
|
||||
errmsg = data.info || data.errormsg;
|
||||
} catch (e) {
|
||||
console.warn(e.stack || e);
|
||||
@ -965,7 +967,7 @@ define('pgadmin.browser.node', [
|
||||
},
|
||||
// Callback for creating script(s) & opening them in Query editor
|
||||
show_script: function(args, item) {
|
||||
var scriptType = args.script,
|
||||
let scriptType = args.script,
|
||||
obj,
|
||||
t = pgBrowser.tree,
|
||||
i = item || t.selected(),
|
||||
@ -978,7 +980,7 @@ define('pgadmin.browser.node', [
|
||||
* Make sure - we're using the correct version of node
|
||||
*/
|
||||
obj = pgBrowser.Nodes[d._type];
|
||||
var sql_url;
|
||||
let sql_url;
|
||||
|
||||
// URL for script type
|
||||
if (scriptType == 'insert') {
|
||||
@ -1004,8 +1006,8 @@ define('pgadmin.browser.node', [
|
||||
|
||||
// Callback to render query editor
|
||||
show_query_tool: function(args, item) {
|
||||
var preference = pgBrowser.get_preference('sqleditor', 'copy_sql_to_query_tool');
|
||||
var t = pgBrowser.tree,
|
||||
let preference = pgBrowser.get_preference('sqleditor', 'copy_sql_to_query_tool');
|
||||
let t = pgBrowser.tree,
|
||||
i = item || t.selected(),
|
||||
d = i ? t.itemData(i) : undefined;
|
||||
|
||||
@ -1015,8 +1017,8 @@ define('pgadmin.browser.node', [
|
||||
// Here call data grid method to render query tool
|
||||
//Open query tool with create script if copy_sql_to_query_tool is true else open blank query tool
|
||||
if(preference.value && !d._type.includes('coll-')){
|
||||
var stype = d._type.toLowerCase();
|
||||
var data = {
|
||||
let stype = d._type.toLowerCase();
|
||||
let data = {
|
||||
'script': stype,
|
||||
data_disabled: gettext('The selected tree node does not support this option.'),
|
||||
};
|
||||
@ -1028,7 +1030,7 @@ define('pgadmin.browser.node', [
|
||||
|
||||
// Callback to render psql tool.
|
||||
show_psql_tool: function(args) {
|
||||
var input = args || {},
|
||||
let input = args || {},
|
||||
t = pgBrowser.tree,
|
||||
i = input.item || t.selected(),
|
||||
d = i ? t.itemData(i) : undefined;
|
||||
@ -1051,11 +1053,11 @@ define('pgadmin.browser.node', [
|
||||
// Go further only if node type is a Server
|
||||
if (index !== -1) {
|
||||
// First element will be icon and second will be colour code
|
||||
var bgcolor = serverData.icon.split(' ')[1] || null,
|
||||
let bgcolor = serverData.icon.split(' ')[1] || null,
|
||||
fgcolor = serverData.icon.split(' ')[2] || '';
|
||||
|
||||
if (bgcolor) {
|
||||
var dynamic_class = 'pga_server_' + serverData._id + '_bgcolor',
|
||||
let dynamic_class = 'pga_server_' + serverData._id + '_bgcolor',
|
||||
style_tag;
|
||||
|
||||
// Prepare dynamic style tag
|
||||
@ -1097,7 +1099,7 @@ define('pgadmin.browser.node', [
|
||||
// + Dependents
|
||||
// + Dependencies
|
||||
// + Statistics
|
||||
var b = browser || pgBrowser,
|
||||
let b = browser || pgBrowser,
|
||||
t = b.tree,
|
||||
d = data || t.itemData(item);
|
||||
|
||||
@ -1118,13 +1120,13 @@ define('pgadmin.browser.node', [
|
||||
return true;
|
||||
},
|
||||
removed: function(item) {
|
||||
var self = this;
|
||||
let self = this;
|
||||
setTimeout(function() {
|
||||
self.clear_cache.apply(self, item);
|
||||
}, 0);
|
||||
},
|
||||
refresh: function(cmd, _item) {
|
||||
var self = this,
|
||||
let self = this,
|
||||
t = pgBrowser.tree,
|
||||
data = _item && t.itemData(_item);
|
||||
|
||||
@ -1176,7 +1178,7 @@ define('pgadmin.browser.node', [
|
||||
* This has also been used for creating a node.
|
||||
**/
|
||||
showProperties: function(item, data, panel, action) {
|
||||
var that = this,
|
||||
let that = this,
|
||||
tree = pgAdmin.Browser.tree,
|
||||
j = panel.$container.find('.obj_properties').first(),
|
||||
view = j.data('obj-view'),
|
||||
@ -1185,7 +1187,7 @@ define('pgadmin.browser.node', [
|
||||
confirm_close = true;
|
||||
|
||||
// Handle key press events for Cancel, save and help button
|
||||
var handleKeyDown = function(event, context) {
|
||||
let handleKeyDown = function(event, context) {
|
||||
// If called on panel other than node_props, return
|
||||
if (panel && panel['_type'] !== 'node_props') return;
|
||||
|
||||
@ -1197,7 +1199,7 @@ define('pgadmin.browser.node', [
|
||||
// Return if event is fired from child element
|
||||
if (event.target !== context) return;
|
||||
if (view && view.model && view.model.sessChanged()) {
|
||||
var btn = $(event.target).closest('.obj_properties')
|
||||
let btn = $(event.target).closest('.obj_properties')
|
||||
.find('.pg-prop-btn-group')
|
||||
.find('button.btn-primary');
|
||||
onSave.call(this, view, btn);
|
||||
@ -1219,8 +1221,8 @@ define('pgadmin.browser.node', [
|
||||
}, 200); // wait for panel tab to render
|
||||
|
||||
// Template function to create the status bar
|
||||
var createStatusBar = function(location) {
|
||||
var statusBar = $('<div role="status"></div>').addClass(
|
||||
let createStatusBar = function(location) {
|
||||
let statusBar = $('<div role="status"></div>').addClass(
|
||||
'pg-prop-status-bar'
|
||||
).appendTo(j);
|
||||
statusBar.css('visibility', 'hidden');
|
||||
@ -1240,7 +1242,7 @@ define('pgadmin.browser.node', [
|
||||
if (buttons && _.isArray(buttons) && buttons.length > 0) {
|
||||
// All buttons will be created within a single
|
||||
// div area.
|
||||
var btnGroup =
|
||||
let btnGroup =
|
||||
$('<div class="pg-prop-btn-group"></div>'),
|
||||
// Template used for creating a button
|
||||
tmpl = _.template([
|
||||
@ -1266,7 +1268,7 @@ define('pgadmin.browser.node', [
|
||||
if (!btn.icon) {
|
||||
btn.icon = '';
|
||||
}
|
||||
var b = $(tmpl(btn));
|
||||
let b = $(tmpl(btn));
|
||||
btnGroup.append(b);
|
||||
// Register is a callback to set callback
|
||||
// for certain operation for this button.
|
||||
@ -1280,7 +1282,7 @@ define('pgadmin.browser.node', [
|
||||
properties = function() {
|
||||
|
||||
// Avoid unnecessary reloads
|
||||
var i = tree.selected(),
|
||||
let i = tree.selected(),
|
||||
d = i && tree.itemData(i),
|
||||
treeHierarchy = tree.getTreeNodeHierarchy(i);
|
||||
|
||||
@ -1332,7 +1334,7 @@ define('pgadmin.browser.node', [
|
||||
|
||||
// Create proper buttons
|
||||
|
||||
var buttons = [];
|
||||
let buttons = [];
|
||||
|
||||
buttons.push({
|
||||
label: gettext('Edit'),
|
||||
@ -1367,10 +1369,10 @@ define('pgadmin.browser.node', [
|
||||
}.bind(panel),
|
||||
onSqlHelp = function() {
|
||||
// Construct the URL
|
||||
var server = pgBrowser.tree.getTreeNodeHierarchy(item).server;
|
||||
let server = pgBrowser.tree.getTreeNodeHierarchy(item).server;
|
||||
|
||||
var url = pgBrowser.utils.pg_help_path;
|
||||
var fullUrl = '';
|
||||
let url = pgBrowser.utils.pg_help_path;
|
||||
let fullUrl = '';
|
||||
|
||||
if (server.server_type == 'ppas' && that.epasHelp) {
|
||||
fullUrl = help.getEPASHelpUrl(server.version);
|
||||
@ -1396,7 +1398,7 @@ define('pgadmin.browser.node', [
|
||||
}.bind(panel),
|
||||
|
||||
warnBeforeChangesLost = function(warn_text, yes_callback) {
|
||||
var $props = this.$container.find('.obj_properties').first(),
|
||||
let $props = this.$container.find('.obj_properties').first(),
|
||||
objview = $props && $props.data('obj-view'),
|
||||
self = this;
|
||||
|
||||
@ -1426,7 +1428,7 @@ define('pgadmin.browser.node', [
|
||||
}.bind(panel),
|
||||
|
||||
warnBeforeAttributeChange = function(yes_callback) {
|
||||
var $props = this.$container.find('.obj_properties').first(),
|
||||
let $props = this.$container.find('.obj_properties').first(),
|
||||
objview = $props && $props.data('obj-view'),
|
||||
self = this;
|
||||
|
||||
@ -1457,7 +1459,7 @@ define('pgadmin.browser.node', [
|
||||
}.bind(panel),
|
||||
|
||||
informBeforeAttributeChange = function(ok_callback) {
|
||||
var $props = this.$container.find('.obj_properties').first(),
|
||||
let $props = this.$container.find('.obj_properties').first(),
|
||||
objview = $props && $props.data('obj-view');
|
||||
|
||||
if (objview && objview.model && !_.isUndefined(objview.model.inform_text) && !_.isNull(objview.model.inform_text)) {
|
||||
@ -1472,7 +1474,7 @@ define('pgadmin.browser.node', [
|
||||
}.bind(panel),
|
||||
|
||||
onSave = function(_view, saveBtn) {
|
||||
var m = _view.model,
|
||||
let m = _view.model,
|
||||
d = m.toJSON(true),
|
||||
// Generate a timer for the request
|
||||
timer = setTimeout(function() {
|
||||
@ -1497,7 +1499,7 @@ define('pgadmin.browser.node', [
|
||||
|
||||
// Removing the node-prop property of panel
|
||||
// so that we show updated data on panel
|
||||
var pnlProperties = pgBrowser.docker.findPanels('properties')[0],
|
||||
let pnlProperties = pgBrowser.docker.findPanels('properties')[0],
|
||||
pnlSql = pgBrowser.docker.findPanels('sql')[0],
|
||||
pnlStats = pgBrowser.docker.findPanels('statistics')[0],
|
||||
pnlDependencies = pgBrowser.docker.findPanels('dependencies')[0],
|
||||
@ -1531,7 +1533,7 @@ define('pgadmin.browser.node', [
|
||||
}.bind(panel),
|
||||
|
||||
editFunc = function() {
|
||||
var self = this;
|
||||
let self = this;
|
||||
if (action && action == 'properties') {
|
||||
action = 'edit';
|
||||
}
|
||||
@ -1554,7 +1556,7 @@ define('pgadmin.browser.node', [
|
||||
onSaveFunc(nodeData.node, treeNodeInfo);
|
||||
// Removing the node-prop property of panel
|
||||
// so that we show updated data on panel
|
||||
var pnlProperties = pgBrowser.docker.findPanels('properties')[0],
|
||||
let pnlProperties = pgBrowser.docker.findPanels('properties')[0],
|
||||
pnlSql = pgBrowser.docker.findPanels('sql')[0],
|
||||
pnlStats = pgBrowser.docker.findPanels('statistics')[0],
|
||||
pnlDependencies = pgBrowser.docker.findPanels('dependencies')[0],
|
||||
@ -1606,9 +1608,9 @@ define('pgadmin.browser.node', [
|
||||
'pg-prop-footer'
|
||||
).appendTo(j);
|
||||
|
||||
var updateButtons = function(hasError, modified) {
|
||||
let updateButtons = function(hasError, modified) {
|
||||
|
||||
var btnGroup = this.find('.pg-prop-btn-group'),
|
||||
let btnGroup = this.find('.pg-prop-btn-group'),
|
||||
btnSave = btnGroup.find('button.btn-primary'),
|
||||
btnReset = btnGroup.find('button.btn-secondary[type="reset"]');
|
||||
|
||||
@ -1777,7 +1779,7 @@ define('pgadmin.browser.node', [
|
||||
this.close();
|
||||
}.bind(panel),
|
||||
updateTreeItem = function(obj, tnode, node_info) {
|
||||
var _old = data,
|
||||
let _old = data,
|
||||
_new = tnode || _.clone(view.model.tnode),
|
||||
info = node_info || _.clone(view.model.node_info);
|
||||
|
||||
@ -1804,7 +1806,7 @@ define('pgadmin.browser.node', [
|
||||
closePanel(false);
|
||||
},
|
||||
saveNewNode = function(obj, tnode, node_info) {
|
||||
var $props = this.$container.find('.obj_properties').first(),
|
||||
let $props = this.$container.find('.obj_properties').first(),
|
||||
objview = $props.data('obj-view');
|
||||
|
||||
// Clear the cache for this node now.
|
||||
@ -1859,8 +1861,8 @@ define('pgadmin.browser.node', [
|
||||
}
|
||||
));
|
||||
|
||||
var onCloseFunc = function() {
|
||||
var $props = this.$container.find('.obj_properties').first(),
|
||||
let onCloseFunc = function() {
|
||||
let $props = this.$container.find('.obj_properties').first(),
|
||||
objview = $props && $props.data('obj-view');
|
||||
|
||||
if (objview) {
|
||||
@ -1919,7 +1921,7 @@ define('pgadmin.browser.node', [
|
||||
* depends, statistics
|
||||
*/
|
||||
generate_url: function(item, type, d, with_id, info, jump_after_node) {
|
||||
var opURL = {
|
||||
let opURL = {
|
||||
'create': 'obj',
|
||||
'drop': 'obj',
|
||||
'edit': 'obj',
|
||||
@ -1928,10 +1930,10 @@ define('pgadmin.browser.node', [
|
||||
},
|
||||
self = this,
|
||||
priority = -Infinity;
|
||||
var treeInfo = (_.isUndefined(item) || _.isNull(item)) ?
|
||||
let treeInfo = (_.isUndefined(item) || _.isNull(item)) ?
|
||||
info || {} : pgBrowser.tree.getTreeNodeHierarchy(item);
|
||||
var actionType = type in opURL ? opURL[type] : type;
|
||||
var itemID = with_id && d._type == self.type ? encodeURIComponent(d._id) : '';
|
||||
let actionType = type in opURL ? opURL[type] : type;
|
||||
let itemID = with_id && d._type == self.type ? encodeURIComponent(d._id) : '';
|
||||
|
||||
if (self.parent_type) {
|
||||
if (_.isString(self.parent_type)) {
|
||||
@ -1956,7 +1958,7 @@ define('pgadmin.browser.node', [
|
||||
jump_after_priority = treeInfo[jump_after_node].priority;
|
||||
}
|
||||
|
||||
var nodePickFunction = function(treeInfoValue) {
|
||||
let nodePickFunction = function(treeInfoValue) {
|
||||
return (treeInfoValue.priority <= jump_after_priority || treeInfoValue.priority == priority);
|
||||
};
|
||||
|
||||
@ -1967,7 +1969,7 @@ define('pgadmin.browser.node', [
|
||||
// Base class for Node Data Model
|
||||
Model: pgBrowser.DataModel,
|
||||
cache: function(url, node_info, level, data) {
|
||||
var cached = this.cached = this.cached || {},
|
||||
let cached = this.cached = this.cached || {},
|
||||
hash = url,
|
||||
min_priority = (
|
||||
node_info && node_info[level] && node_info[level].priority
|
||||
@ -1987,7 +1989,7 @@ define('pgadmin.browser.node', [
|
||||
}
|
||||
|
||||
if (_.isUndefined(data)) {
|
||||
var res = cached[hash];
|
||||
let res = cached[hash];
|
||||
|
||||
if (!_.isUndefined(res) &&
|
||||
(res.at - Date.now() > 300000)) {
|
||||
@ -1996,7 +1998,7 @@ define('pgadmin.browser.node', [
|
||||
return res;
|
||||
}
|
||||
|
||||
res = cached[hash] = {
|
||||
let res = cached[hash] = {
|
||||
data: data,
|
||||
at: Date.now(),
|
||||
level: level,
|
||||
@ -2015,7 +2017,7 @@ define('pgadmin.browser.node', [
|
||||
this.cached = {};
|
||||
|
||||
// Trigger Notify event about node's cache
|
||||
var self = this;
|
||||
let self = this;
|
||||
pgBrowser.Events.trigger(
|
||||
'pgadmin:browser:node:' + self.type + ':cache_cleared',
|
||||
item, self
|
||||
@ -2027,7 +2029,7 @@ define('pgadmin.browser.node', [
|
||||
return this.type;
|
||||
}
|
||||
if (_.isArray(this.parent_type)) {
|
||||
for (var parent in this.parent_type) {
|
||||
for (let parent in this.parent_type) {
|
||||
if (parent in node_info) {
|
||||
return parent;
|
||||
}
|
||||
|
@ -200,7 +200,7 @@ export function Search() {
|
||||
:''}
|
||||
<div >
|
||||
|
||||
{ (menuSearchResult.fetched && !isMenuLoading ) ?
|
||||
{ (menuSearchResult.fetched && !(isMenuLoading??true) ) ?
|
||||
<div>
|
||||
<div className='menu-groups'>
|
||||
<span className='fa fa-window-maximize'></span> {gettext('MENU ITEMS')} ({menuSearchResult.data.length})
|
||||
@ -210,9 +210,9 @@ export function Search() {
|
||||
{refactorMenuItems(menuSearchResult.data)}
|
||||
</div> : ( (isMenuLoading) ? (<div className='pad-12'><div className="search-icon">{gettext('Searching...')}</div></div>) : '')}
|
||||
|
||||
{(menuSearchResult.data.length == 0 && menuSearchResult.fetched && !isMenuLoading) ? (<div className='pad-12 no-results'><span className='fa fa-info-circle'></span> {gettext('No search results')}</div>):''}
|
||||
{(menuSearchResult.data.length == 0 && menuSearchResult.fetched && !(isMenuLoading??true)) ? (<div className='pad-12 no-results'><span className='fa fa-info-circle'></span> {gettext('No search results')}</div>):''}
|
||||
|
||||
{ (helpSearchResult.fetched && !isHelpLoading) ?
|
||||
{ (helpSearchResult.fetched && !(isHelpLoading??true)) ?
|
||||
<div>
|
||||
<div className='help-groups'>
|
||||
<span className='fa fa-question-circle'></span> {gettext('HELP ARTICLES')} {Object.keys(helpSearchResult.data).length > 10 ?
|
||||
@ -228,7 +228,7 @@ export function Search() {
|
||||
})}
|
||||
|
||||
{(Object.keys(helpSearchResult.data).length == 0) ? (<div className='pad-12 no-results'><span className='fa fa-info-circle'></span> {gettext('No search results')}</div>):''}
|
||||
</div> : ( (isHelpLoading && !isMenuLoading) ? (
|
||||
</div> : ( (isHelpLoading && !(isMenuLoading??true)) ? (
|
||||
<div>
|
||||
<div className='help-groups'>
|
||||
<span className='fa fa-question-circle'></span>
|
||||
|
@ -24,7 +24,7 @@ import ChangeOwnershipContent from './ChangeOwnershipContent';
|
||||
import UrlDialogContent from './UrlDialogContent';
|
||||
import RenamePanelContent from './RenamePanelContent';
|
||||
|
||||
function mountDialog(title, getDialogContent, docker=undefined, width, height) {
|
||||
function mountDialog(title, getDialogContent, docker=undefined, width=undefined, height=undefined) {
|
||||
// Register dialog panel
|
||||
let panel;
|
||||
if (docker) {
|
||||
|
@ -1,6 +1,5 @@
|
||||
import {useRef, useEffect, useState, useCallback} from 'react';
|
||||
import moment from 'moment';
|
||||
// export { useStopwatch } from 'react-timer-hook';
|
||||
|
||||
/* React hook for setInterval */
|
||||
export function useInterval(callback, delay) {
|
||||
|
@ -125,7 +125,7 @@ def load_servers():
|
||||
file_path.lstrip('/').lstrip('\\')
|
||||
)
|
||||
|
||||
if file_path is not None and os.path.exists(file_path):
|
||||
if file_path and os.path.exists(file_path):
|
||||
try:
|
||||
with open(file_path, 'r') as j:
|
||||
data = json.loads(j.read())
|
||||
|
@ -311,9 +311,8 @@ export function GraphVisualiser({initColumns}) {
|
||||
// Check the previously selected X axis column is exist in the list of
|
||||
// new columns. If exists then set that as it is.
|
||||
setXAxis((prevXAxis)=>{
|
||||
if (prevXAxis === '<Row Number>') {
|
||||
return prevXAxis;
|
||||
} else if (newColumns.map((c)=>c.name).includes(prevXAxis)) {
|
||||
if (prevXAxis === '<Row Number>' ||
|
||||
newColumns.map((c)=>c.name).includes(prevXAxis)) {
|
||||
return prevXAxis;
|
||||
}
|
||||
return null;
|
||||
|
@ -929,7 +929,7 @@ export function ResultSet() {
|
||||
eventBus.fireEvent(QUERY_TOOL_EVENTS.RESET_GRAPH_VISUALISER, columns);
|
||||
}, [columns]);
|
||||
|
||||
const fetchMoreRows = async (all=false, callback)=>{
|
||||
const fetchMoreRows = async (all=false, callback=undefined)=>{
|
||||
if(queryData.has_more_rows) {
|
||||
setIsLoadingMore(true);
|
||||
const res = await rsu.current.getMoreRows(all);
|
||||
|
@ -49,7 +49,7 @@ def SchemaObject(name, schema=None, meta=None):
|
||||
|
||||
|
||||
# Regex for finding "words" in documents.
|
||||
_FIND_WORD_RE = re.compile(r'([a-zA-Z0-9_]+|[^a-zA-Z0-9_\s]+)')
|
||||
_FIND_WORD_RE = re.compile(r'([\w]+|[^a-zA-Z0-9_\s]+)')
|
||||
_FIND_BIG_WORD_RE = re.compile(r'([^\s]+)')
|
||||
|
||||
_Candidate = namedtuple("Candidate",
|
||||
@ -1191,7 +1191,7 @@ class SQLAutoComplete(object):
|
||||
)
|
||||
if obj_type == 'tables':
|
||||
self.extend_foreignkeys(
|
||||
self.fetch_foreign_keys(in_clause, obj_type)
|
||||
self.fetch_foreign_keys(in_clause)
|
||||
)
|
||||
elif obj_type == 'datatypes' and len(data) > 0:
|
||||
self.extend_datatypes(data)
|
||||
@ -1285,12 +1285,11 @@ class SQLAutoComplete(object):
|
||||
))
|
||||
return data
|
||||
|
||||
def fetch_foreign_keys(self, schemas, obj_type):
|
||||
def fetch_foreign_keys(self, schemas):
|
||||
"""
|
||||
This function is used to fetch the foreign_keys for the given
|
||||
schema name
|
||||
:param schemas:
|
||||
:param obj_type:
|
||||
:return:
|
||||
"""
|
||||
|
||||
|
@ -93,5 +93,5 @@ class BrowserToolBarFeatureTest(BaseFeatureTest):
|
||||
BrowserToolBarLocators.filter_data_button_css),
|
||||
(By.XPATH, BrowserToolBarLocators.filter_box_css)),
|
||||
'Filter dialogue did not open on clicking filter button.')
|
||||
self.page.click_modal('Close', True)
|
||||
self.page.click_modal('Close')
|
||||
self.page.close_query_tool(prompt=False)
|
||||
|
@ -97,7 +97,7 @@ class CheckFileManagerFeatureTest(BaseFeatureTest):
|
||||
input_file_path_ele = \
|
||||
self.page.find_by_xpath(QueryToolLocators.save_file_path_xpath)
|
||||
input_file_path_ele.send_keys(self.XSS_FILE)
|
||||
self.page.click_modal('Save', True)
|
||||
self.page.click_modal('Save')
|
||||
self.page.wait_for_query_tool_loading_indicator_to_disappear()
|
||||
|
||||
def _open_file_manager_and_check_xss_file(self):
|
||||
@ -136,7 +136,7 @@ class CheckFileManagerFeatureTest(BaseFeatureTest):
|
||||
except (StaleElementReferenceException, TimeoutException):
|
||||
retry_count += 1
|
||||
|
||||
self.page.click_modal('Cancel', True)
|
||||
self.page.click_modal('Cancel')
|
||||
self.page.wait_for_query_tool_loading_indicator_to_disappear()
|
||||
filename = self.server_information['type'] + \
|
||||
str(self.server_information['server_version'])
|
||||
@ -189,4 +189,4 @@ class CheckFileManagerFeatureTest(BaseFeatureTest):
|
||||
raise RuntimeError("Unable to sort in descending order while "
|
||||
"clicked on 'Name' column")
|
||||
|
||||
self.page.click_modal('Cancel', True)
|
||||
self.page.click_modal('Cancel')
|
||||
|
@ -137,4 +137,4 @@ class KeyboardShortcutFeatureTest(BaseFeatureTest):
|
||||
maximize_button.click()
|
||||
|
||||
# save and close the preference dialog.
|
||||
self.page.click_modal('Save', True)
|
||||
self.page.click_modal('Save')
|
||||
|
@ -154,7 +154,7 @@ class PGDataypeFeatureTest(BaseFeatureTest):
|
||||
time.sleep(0.5)
|
||||
|
||||
# save and close the preference dialog.
|
||||
self.page.click_modal('Save', react_dialog=True)
|
||||
self.page.click_modal('Save')
|
||||
break
|
||||
except Exception:
|
||||
retry -= 1
|
||||
|
@ -317,9 +317,9 @@ class PGUtilitiesBackupFeatureTest(BaseFeatureTest):
|
||||
|
||||
# save and close the preference dialog.
|
||||
if path_already_set:
|
||||
self.page.click_modal('Cancel', True)
|
||||
self.page.click_modal('Cancel')
|
||||
else:
|
||||
self.page.click_modal('Save', True)
|
||||
self.page.click_modal('Save')
|
||||
|
||||
self.page.wait_for_element_to_disappear(
|
||||
lambda driver: driver.find_element(By.CSS_SELECTOR, ".ajs-modal")
|
||||
|
@ -79,7 +79,7 @@ class PGUtilitiesMaintenanceFeatureTest(BaseFeatureTest):
|
||||
|
||||
def runTest(self):
|
||||
self._open_maintenance_dialogue()
|
||||
self.page.click_modal('OK', True)
|
||||
self.page.click_modal('OK')
|
||||
self.page.wait_for_element_to_disappear(
|
||||
lambda driver: driver.find_element(
|
||||
By.XPATH, NavMenuLocators.maintenance_operation), 10)
|
||||
|
@ -303,7 +303,7 @@ class QueryToolJourneyTest(BaseFeatureTest):
|
||||
|
||||
# discard edits
|
||||
self.page.execute_query('SELECT 1')
|
||||
self.page.click_modal('Yes', True)
|
||||
self.page.click_modal('Yes')
|
||||
|
||||
def _test_is_editable_columns_icons(self):
|
||||
if self.driver_version < 2.8:
|
||||
@ -418,7 +418,7 @@ class QueryToolJourneyTest(BaseFeatureTest):
|
||||
self.page.find_by_css_selector(
|
||||
QueryToolLocators.btn_history_remove_all)
|
||||
)
|
||||
self.page.click_modal('Yes', True)
|
||||
self.page.click_modal('Yes')
|
||||
|
||||
def _navigate_to_query_tool(self):
|
||||
self.page.expand_database_node("Server", self.server['name'],
|
||||
@ -448,7 +448,7 @@ class QueryToolJourneyTest(BaseFeatureTest):
|
||||
discard_changes_modal=False):
|
||||
self.page.execute_query(query)
|
||||
if discard_changes_modal:
|
||||
self.page.click_modal('Yes', True)
|
||||
self.page.click_modal('Yes')
|
||||
|
||||
# first column is rownum
|
||||
enumerated_should_be_editable = enumerate(cols_should_be_editable, 2)
|
||||
|
@ -155,4 +155,4 @@ class CopySQLFeatureTest(BaseFeatureTest):
|
||||
maximize_button.click()
|
||||
|
||||
# save and close the preference dialog.
|
||||
self.page.click_modal('Save', react_dialog=True)
|
||||
self.page.click_modal('Save')
|
||||
|
@ -90,7 +90,7 @@ class CheckDebuggerForXssFeatureTest(BaseFeatureTest):
|
||||
click = True
|
||||
while click:
|
||||
try:
|
||||
self.page.click_modal('OK', True)
|
||||
self.page.click_modal('OK')
|
||||
wait.until(EC.invisibility_of_element(
|
||||
(By.XPATH, "//div[@class ='MuiDialogTitle-root']"
|
||||
"//div[text()='Debugger Error']")
|
||||
|
@ -24,7 +24,7 @@ class BrowserToolBarLocators():
|
||||
filter_data_button_css = \
|
||||
".wcFrameButton[title='Filtered Rows']:not(.disabled)"
|
||||
|
||||
filter_box_css = "//*[@id='0']/div[contains(text(), Data Filter')]"
|
||||
filter_box_css = "//*[@id='0']/div[contains(text(), 'Data Filter')]"
|
||||
|
||||
|
||||
class NavMenuLocators:
|
||||
|
@ -81,7 +81,7 @@ class PgadminPage:
|
||||
except TimeoutException:
|
||||
pass
|
||||
|
||||
def click_modal(self, button_text, react_dialog=False):
|
||||
def click_modal(self, button_text):
|
||||
time.sleep(0.5)
|
||||
# Find active dialog in case of multiple dialog
|
||||
# & click on that dialog
|
||||
@ -222,7 +222,7 @@ class PgadminPage:
|
||||
self.click_element(
|
||||
self.find_by_css_selector(QueryToolLocators.btn_clear)
|
||||
)
|
||||
self.click_modal('Yes', True)
|
||||
self.click_modal('Yes')
|
||||
|
||||
def execute_query(self, query):
|
||||
self.fill_codemirror_area_with(query)
|
||||
@ -332,7 +332,7 @@ class PgadminPage:
|
||||
delete_menu_item = self.find_by_partial_link_text("Remove Server")
|
||||
self.click_element(delete_menu_item)
|
||||
self.driver.switch_to.default_content()
|
||||
self.click_modal('Yes', True)
|
||||
self.click_modal('Yes')
|
||||
time.sleep(1)
|
||||
else:
|
||||
print("%s Server is not removed", server_config['name'],
|
||||
@ -1262,5 +1262,5 @@ class PgadminPage:
|
||||
return element_located_status
|
||||
|
||||
def clear_edit_box(self, edit_box_webelement):
|
||||
while not edit_box_webelement.get_attribute("value") == "":
|
||||
while edit_box_webelement.get_attribute("value") != "":
|
||||
edit_box_webelement.send_keys(Keys.BACK_SPACE)
|
||||
|
Loading…
Reference in New Issue
Block a user