From 4a705c69a58d9b63e9b07576a3f50c3cbea72b32 Mon Sep 17 00:00:00 2001
From: Jean-Paul Smets <jp@nexedi.com>
Date: Sat, 21 Jan 2006 08:38:26 +0000
Subject: [PATCH] Added support to save Owner in NuxUs. impl. and some comments

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@5218 20353a03-c40f-0410-a6d1-a30d3c3de9de
---
 product/ERP5Type/ERP5Type.py | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/product/ERP5Type/ERP5Type.py b/product/ERP5Type/ERP5Type.py
index ef6f4ab911..b5688811b4 100755
--- a/product/ERP5Type/ERP5Type.py
+++ b/product/ERP5Type/ERP5Type.py
@@ -336,7 +336,7 @@ class ERP5TypeInformation( FactoryTypeInformation, RoleProviderBase ):
           # Save the owner
           for group, role_list in old_group_list:
             if 'Owner' in role_list:
-              if group not in group_id_role_dict.keys():
+              if not group_id_role_dict.has_key(group):
                 group_id_role_dict[group] = ('Owner',)
               else:
                 group_id_role_dict[group].append('Owner')
@@ -346,10 +346,19 @@ class ERP5TypeInformation( FactoryTypeInformation, RoleProviderBase ):
         else: # NuxUserGroups implementation
           # Clean old group roles
           old_group_list = object.get_local_group_roles()
+          # We duplicate role settings to mimic PAS
           object.manage_delLocalGroupRoles([x[0] for x in old_group_list])
           object.manage_delLocalRoles([x[0] for x in old_group_list])
+          # Save the owner
+          for group, role_list in old_group_list:
+            if 'Owner' in role_list:
+              if not group_id_role_dict.has_key(group):
+                group_id_role_dict[group] = ('Owner',)
+              else:
+                group_id_role_dict[group].append('Owner')
           # Assign new roles
           for group, role_list in group_id_role_dict.items():
+              # We duplicate role settings to mimic PAS
               object.manage_addLocalGroupRoles(group, role_list)
               object.manage_addLocalRoles(group, role_list)
 
-- 
2.30.9