From c0ac0986a61f4e34cbae66d9efb57289328b2ea5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Aur=C3=A9lien=20Calonne?= <aurel@nexedi.com>
Date: Fri, 30 Dec 2005 14:12:37 +0000
Subject: [PATCH] do not recreate catalog at update of tools

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@4963 20353a03-c40f-0410-a6d1-a30d3c3de9de
---
 product/ERP5/ERP5Site.py | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/product/ERP5/ERP5Site.py b/product/ERP5/ERP5Site.py
index 19f0a31d4d..57b7f2bbb3 100755
--- a/product/ERP5/ERP5Site.py
+++ b/product/ERP5/ERP5Site.py
@@ -707,10 +707,11 @@ class ERP5Generator(PortalGenerator):
           PortalGenerator.setupTools(self, p)
 
         # It is better to remove portal_catalog which is ZCatalog as soon as possible,
-        # because the API is not the completely same as ERP5Catalog, and ZCatalog is
+        # because the API is not the completely same as ERP5Catalog, and ZCatalog is          
         # useless for ERP5 after all.
+        update = kw.get('update', 0)
         portal_catalog = getToolByName(p, 'portal_catalog', None)
-        if portal_catalog is not None and portal_catalog.meta_type != 'ZSQLCatalog':
+        if portal_catalog is not None and portal_catalog.meta_type != 'ZSQLCatalog' and not update:
           p._delObject('portal_catalog')
 
         # Add CMF Report Tool
@@ -768,12 +769,12 @@ class ERP5Generator(PortalGenerator):
           pass
         # Create default methods in Catalog XXX
         portal_catalog = getToolByName(p, 'portal_catalog')
-        if not portal_catalog.getSQLCatalog('erp5_mysql'):
-          # FIXME: addDefaultSQLMethods should be removed.
-          portal_catalog.addDefaultSQLMethods('erp5_mysql')
+        if not portal_catalog.getSQLCatalog('erp5_mysql') and not update:
+            # FIXME: addDefaultSQLMethods should be removed.
+            portal_catalog.addDefaultSQLMethods('erp5_mysql')
 
-          # Clear Catalog
-          portal_catalog.manage_catalogClear()
+            # Clear Catalog
+            portal_catalog.manage_catalogClear()
 
         # Add ERP5Form Tools
         addTool = p.manage_addProduct['ERP5Form'].manage_addTool
-- 
2.30.9