Subject: [pgAdmin4][Patch]: Fixed an issue related to the Delete/Drop context Menu of the node

From: Khushboo Vashi <[email-masked]>
Date: Fri, 6 May 2016 15:11:03 +0530

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 ([email-masked])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers

---

From: Dave Page <[email-masked]>
Date: Fri, 6 May 2016 15:48:26 +0100

Thanks, committed.

On Fri, May 6, 2016 at 10:41 AM, Khushboo Vashi
<[email-masked]> wrote:
> Menu of that node is having dependency on some function then, after deleting
> that node object, it gives a JS error.
>

-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company