diff --git a/browser/common.py b/browser/common.py index d62cf77..5bc1c9a 100644 --- a/browser/common.py +++ b/browser/common.py @@ -516,6 +516,8 @@ class BaseView(GenericView, I18NView): return not IUnauthenticatedPrincipal.providedBy(self.request.principal) def checkAction(self, name, category, target): + if name in ('create_resource',): + return not self.globalOptions('hideCreateResource') return True def openEditWindow(self, viewName='edit.html'): diff --git a/browser/concept.py b/browser/concept.py index 6b5d39e..f3f49b1 100644 --- a/browser/concept.py +++ b/browser/concept.py @@ -380,7 +380,7 @@ class ConceptView(BaseView): def checkAction(self, name, category, target): if name in (self.typeOptions('hide_action.' + category) or []): return False - return True + return super(ConceptView, self).checkAction(name, category, target) class ConceptRelationView(ConceptView, BaseRelationView): diff --git a/browser/node.py b/browser/node.py index 6a3743b..f64e03c 100644 --- a/browser/node.py +++ b/browser/node.py @@ -474,7 +474,7 @@ class NodeView(BaseView): def checkAction(self, name, category, target): if name in ('create_resource',) and target is not None: return target.checkAction(name, category, target) - return True + return super(NodeView, self).checkAction(name, category, target) @Lazy def popupCreateObjectForm(self):