[Erp5-report] r14329 - /erp5/trunk/products/ERP5SyncML/Conduit/

nobody at svn.erp5.org nobody at svn.erp5.org
Thu May 3 15:01:08 CEST 2007


Author: seb
Date: Thu May  3 15:01:07 2007
New Revision: 14329

URL: http://svn.erp5.org?rev=14329&view=rev
Log:
add a parameter to disable the deletion of local roles

Modified:
    erp5/trunk/products/ERP5SyncML/Conduit/BaobabConduit.py
    erp5/trunk/products/ERP5SyncML/Conduit/ERP5Conduit.py

Modified: erp5/trunk/products/ERP5SyncML/Conduit/BaobabConduit.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5SyncML/Conduit/BaobabConduit.py?rev=14329&r1=14328&r2=14329&view=diff
==============================================================================
--- erp5/trunk/products/ERP5SyncML/Conduit/BaobabConduit.py (original)
+++ erp5/trunk/products/ERP5SyncML/Conduit/BaobabConduit.py Thu May  3 15:01:07 2007
@@ -334,7 +334,7 @@
                                               portal_type='Organisation',
                                               id=organisation_id
                                               )[0].getObject()
-        subobject.setCareerSubordinationValue(organisation)
+        subobject._setCareerSubordinationValue(organisation)
       else: # This is an organisation object
         site_value = organisation_module_object.Baobab_getSiteFromCodification(
                                                        object_id[:3])
@@ -465,6 +465,8 @@
                                    , id          = object_id
                                    )
 
+    if subobject.getPortalType() == 'Person':
+      subobject.updateLocalRolesOnSecurityGroups()
     return subobject
 
 
@@ -1014,3 +1016,10 @@
     resource_url = 'currency_module/%s' % value
     resource_value = document.getPortalObject().restrictedTraverse(resource_url)
     document.setResourceValue(resource_value)
+
+  def newObject(self, object=None, xml=None, simulate=0, reset_local_roles=0):
+    """
+    define it here in order to make sure to not delete security
+    """
+    ERP5Conduit.newObject(self, object=object, xml=xml, simulate=simulate,
+                          reset_local_roles=reset_local_roles)

Modified: erp5/trunk/products/ERP5SyncML/Conduit/ERP5Conduit.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5SyncML/Conduit/ERP5Conduit.py?rev=14329&r1=14328&r2=14329&view=diff
==============================================================================
--- erp5/trunk/products/ERP5SyncML/Conduit/ERP5Conduit.py (original)
+++ erp5/trunk/products/ERP5SyncML/Conduit/ERP5Conduit.py Thu May  3 15:01:07 2007
@@ -687,7 +687,7 @@
 
 
   security.declareProtected(Permissions.ModifyPortalContent, 'newObject')
-  def newObject(self, object=None, xml=None, simulate=0):
+  def newObject(self, object=None, xml=None, simulate=0, reset_local_roles=1):
     """
       modify the object with datas from
       the xml (action section)
@@ -696,8 +696,9 @@
     if simulate:
       return
     # Retrieve the list of users with a role and delete default roles
-    user_role_list = map(lambda x:x[0],object.get_local_roles())
-    object.manage_delLocalRoles(user_role_list)
+    if reset_local_roles:
+      user_role_list = map(lambda x:x[0],object.get_local_roles())
+      object.manage_delLocalRoles(user_role_list)
     if hasattr(object,'workflow_history'):
       object.workflow_history = PersistentMapping() 
     if xml.nodeName.find('xupdate')>= 0:




More information about the Erp5-report mailing list