From cb43b0c4f4ab1d759617889c79cd92c153a4aad8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Klaus=20W=C3=B6lfel?= <klaus@nexedi.com>
Date: Thu, 18 Sep 2014 17:56:14 +0200
Subject: [PATCH] ERP5Configurator get organisaiton_id in Configurator Item if
 not given

---
 .../Document/BankAccountConfiguratorItem.py              | 1 -
 .../ERP5Configurator/Document/PersonConfiguratorItem.py  | 9 +++++++--
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/product/ERP5Configurator/Document/BankAccountConfiguratorItem.py b/product/ERP5Configurator/Document/BankAccountConfiguratorItem.py
index ca966fd50a..99ac29be35 100644
--- a/product/ERP5Configurator/Document/BankAccountConfiguratorItem.py
+++ b/product/ERP5Configurator/Document/BankAccountConfiguratorItem.py
@@ -94,7 +94,6 @@ class BankAccountConfiguratorItem(ConfiguratorItemMixin, XMLObject):
                   }
           bank_account.edit(**bank_dict)
 
-          business_configuration = self.getBusinessConfigurationValue()
           # store globally bank_account_id
           business_configuration.setGlobalConfigurationAttr(bank_account_id=bank_account.getId())
 
diff --git a/product/ERP5Configurator/Document/PersonConfiguratorItem.py b/product/ERP5Configurator/Document/PersonConfiguratorItem.py
index 2fc08f3143..a2b29eedb6 100644
--- a/product/ERP5Configurator/Document/PersonConfiguratorItem.py
+++ b/product/ERP5Configurator/Document/PersonConfiguratorItem.py
@@ -72,9 +72,14 @@ class PersonConfiguratorItem(XMLObject, ConfiguratorItemMixin):
         group_id = getattr(aq_base(self), 'group_id', None)
         site_id = getattr(aq_base(self), 'site_id', None)
 
-        if getattr(aq_base(self), 'organisation_id', None) is not None:
+        business_configuration = self.getBusinessConfigurationValue()
+        organisation_id = getattr(aq_base(self), 'organisation_id', None)
+        if organisation_id is None:
+          organisation_id = business_configuration.\
+                              getGlobalConfigurationAttr('organisation_id')
+        if organisation_id is not None:
           person.setCareerSubordination('organisation_module/%s' % \
-                                        self.organisation_id)
+                                         organisation_id)
 
         # save
         person.edit(**{'default_email_text': self.getDefaultEmailText(),
-- 
GitLab