eggification
[GroupUserFolder.git] / Products / GroupUserFolder / PatchCatalogTool.py
diff --git a/Products/GroupUserFolder/PatchCatalogTool.py b/Products/GroupUserFolder/PatchCatalogTool.py
new file mode 100644 (file)
index 0000000..a9d54e9
--- /dev/null
@@ -0,0 +1,23 @@
+"""
+$Id: PatchCatalogTool.py,v 1.3 2003/07/10 15:27:22 pjgrizel dead $
+"""
+
+try:
+    from Products.CMFCore.CatalogTool import CatalogTool
+except ImportError:
+    pass
+else:
+    if not hasattr(CatalogTool, '_old_listAllowedRolesAndUsers'):
+        def _listAllowedRolesAndUsers(self, user):
+            result = self._old_listAllowedRolesAndUsers(user)
+            getGroups = getattr(user, 'getGroups', None)
+            if getGroups is not None:
+                for group in getGroups():
+                    result.append('user:'+group)
+            return result
+
+        from zLOG import LOG, INFO
+        LOG('GroupUserFolder', INFO, 'Patching CatalogTool')
+
+        CatalogTool._old_listAllowedRolesAndUsers = CatalogTool._listAllowedRolesAndUsers
+        CatalogTool._listAllowedRolesAndUsers = _listAllowedRolesAndUsers