Hi,

When we try to drop any node and the visibility of the Delete/Drop context
Menu of that node is having dependency on some function then, after
deleting that node object, it gives a JS error.

Please find the attached patch to fix this issue.

Thanks,
Khushboo
diff --git a/web/pgadmin/browser/templates/browser/js/node.js b/web/pgadmin/browser/templates/browser/js/node.js
index 5810e74..7814934 100644
--- a/web/pgadmin/browser/templates/browser/js/node.js
+++ b/web/pgadmin/browser/templates/browser/js/node.js
@@ -89,7 +89,7 @@ function($, _, S, pgAdmin, Menu, Backbone, Alertify, pgBrowser, Backform) {
           applies: ['object', 'context'], callback: 'delete_obj',
           priority: 3, label: '{{ _("Delete/Drop") }}',
           data: {'url': 'drop'}, icon: 'fa fa-trash',
-          enable: _.isFunction(self.canDrop) ? function() { return self.canDrop.apply(self, arguments); } : false
+          enable: _.isFunction(self.canDrop) ? !!self.canDrop.apply(self, arguments) : (!!self.canDrop)
         }]);
         if (self.canDropCascade) {
           pgAdmin.Browser.add_menus([{
@@ -97,8 +97,8 @@ function($, _, S, pgAdmin, Menu, Backbone, Alertify, pgBrowser, Backform) {
             applies: ['object', 'context'], callback: 'delete_obj',
             priority: 3, label: '{{ _("Drop Cascade") }}',
             data: {'url': 'delete'}, icon: 'fa fa-trash',
-            enable: (_.isFunction(self.canDropCascade) ?
-              function() { return self.canDropCascade.apply(self, arguments); } : true)
+            enable: _.isFunction(self.canDropCascade) ?
+              function() { return self.canDropCascade.apply(self, arguments); } : (!!self.canDropCascade)
           }]);
         }
       }
-- 
Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers

Reply via email to