Commit 4e0c2786 authored by Łukasz Nowak's avatar Łukasz Nowak

Disallow clearing catalog.

parent d58ffc5e
......@@ -1316,7 +1316,7 @@ class Catalog(Folder,
'Total time: %s<br>'
'Total CPU time: %s' % (`elapse`, `c_elapse`)))
def manage_catalogClear(self, REQUEST=None, RESPONSE=None,
def _allowed_manage_catalogClear(self, REQUEST=None, RESPONSE=None,
URL1=None, sql_catalog_id=None):
""" clears the whole enchilada """
self.beforeCatalogClear()
......@@ -1327,6 +1327,16 @@ class Catalog(Folder,
RESPONSE.redirect('%s/manage_catalogAdvanced?' \
'manage_tabs_message=Catalog%%20Cleared' % URL1)
def manage_catalogClear(self, REQUEST=None, RESPONSE=None,
URL1=None, sql_catalog_id=None):
""" Disallows clearing default catalog """
default_catalog_id = self.default_sql_catalog_id
if self.getId() == default_catalog_id or sql_catalog_id == default_catalog_id:
raise NotImplementedError("Default Catalog deletion is forbidden")
return self._allowed_manage_catalogClear(REQUEST=REQUEST,
RESPONSE=RESPONSE, URL1=URL1, sql_catalog_id=sql_catalog_id)
def manage_catalogClearReserved(self, REQUEST=None, RESPONSE=None, URL1=None):
""" clears reserved uids """
self.clearReserved()
......
......@@ -603,7 +603,7 @@ class ZCatalog(Folder, Persistent, Implicit):
catalog = self.getSQLCatalog(sql_catalog_id)
if catalog is not None:
catalog.manage_catalogClear(REQUEST=REQUEST, RESPONSE=RESPONSE, URL1=URL1)
catalog._allowed_manage_catalogClear(REQUEST=REQUEST, RESPONSE=RESPONSE, URL1=URL1)
def manage_catalogClearReserved(self, REQUEST=None, RESPONSE=None, URL1=None, sql_catalog_id=None):
""" clears the whole enchilada """
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment