From 836467ed79943e92408f7c22b38f1a19f143915c Mon Sep 17 00:00:00 2001
From: Romain Courteaud <romain@nexedi.com>
Date: Mon, 10 Dec 2012 17:59:44 +0100
Subject: [PATCH] Give view access to shadow on currency.

---
 .../slapos_erp5/LocalRolesTemplateItem/currency_module.xml  | 3 +++
 .../PortalTypeRolesTemplateItem/Currency%20Module.xml       | 5 +++++
 .../slapos_erp5/PortalTypeRolesTemplateItem/Currency.xml    | 5 +++++
 .../TestTemplateItem/testSlapOSERP5GroupRoleSecurity.py     | 6 ++++--
 master/bt5/slapos_erp5/bt/revision                          | 2 +-
 5 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/master/bt5/slapos_erp5/LocalRolesTemplateItem/currency_module.xml b/master/bt5/slapos_erp5/LocalRolesTemplateItem/currency_module.xml
index f5e7389b7f..7eb812feb5 100644
--- a/master/bt5/slapos_erp5/LocalRolesTemplateItem/currency_module.xml
+++ b/master/bt5/slapos_erp5/LocalRolesTemplateItem/currency_module.xml
@@ -4,6 +4,9 @@
    <item>Auditor</item>
    <item>Author</item>
   </role>
+  <role id='R-SHADOW-PERSON'>
+   <item>Auditor</item>
+  </role>
   <role id='admin'>
    <item>Owner</item>
   </role>
diff --git a/master/bt5/slapos_erp5/PortalTypeRolesTemplateItem/Currency%20Module.xml b/master/bt5/slapos_erp5/PortalTypeRolesTemplateItem/Currency%20Module.xml
index 9e167176ea..b0ed6ab8a5 100644
--- a/master/bt5/slapos_erp5/PortalTypeRolesTemplateItem/Currency%20Module.xml
+++ b/master/bt5/slapos_erp5/PortalTypeRolesTemplateItem/Currency%20Module.xml
@@ -4,4 +4,9 @@
    <multi_property id='category'>group/company</multi_property>
    <multi_property id='base_category'>group</multi_property>
   </role>
+  <role id='Auditor'>
+   <property id='title'>Person Shadow</property>
+   <multi_property id='category'>role/shadow/person</multi_property>
+   <multi_property id='base_category'>role</multi_property>
+  </role>
 </type_roles>
\ No newline at end of file
diff --git a/master/bt5/slapos_erp5/PortalTypeRolesTemplateItem/Currency.xml b/master/bt5/slapos_erp5/PortalTypeRolesTemplateItem/Currency.xml
index ce63301e9b..61800e4396 100644
--- a/master/bt5/slapos_erp5/PortalTypeRolesTemplateItem/Currency.xml
+++ b/master/bt5/slapos_erp5/PortalTypeRolesTemplateItem/Currency.xml
@@ -4,4 +4,9 @@
    <multi_property id='category'>group/company</multi_property>
    <multi_property id='base_category'>group</multi_property>
   </role>
+  <role id='Auditor'>
+   <property id='title'>Person Shadow</property>
+   <multi_property id='category'>role/shadow/person</multi_property>
+   <multi_property id='base_category'>role</multi_property>
+  </role>
 </type_roles>
\ No newline at end of file
diff --git a/master/bt5/slapos_erp5/TestTemplateItem/testSlapOSERP5GroupRoleSecurity.py b/master/bt5/slapos_erp5/TestTemplateItem/testSlapOSERP5GroupRoleSecurity.py
index fb296a4cfa..ac9bbcec33 100644
--- a/master/bt5/slapos_erp5/TestTemplateItem/testSlapOSERP5GroupRoleSecurity.py
+++ b/master/bt5/slapos_erp5/TestTemplateItem/testSlapOSERP5GroupRoleSecurity.py
@@ -919,8 +919,9 @@ class TestCurrencyModule(TestSlapOSGroupRoleSecurityMixin):
   def test(self):
     module = self.portal.currency_module
     self.assertSecurityGroup(module,
-        ['G-COMPANY', 'admin'], True)
+        ['G-COMPANY', 'admin', 'R-SHADOW-PERSON'], True)
     self.assertRoles(module, 'G-COMPANY', ['Auditor', 'Author'])
+    self.assertRoles(module, 'R-SHADOW-PERSON', ['Auditor'])
     self.assertRoles(module, 'admin', ['Owner'])
 
 class TestCurrency(TestSlapOSGroupRoleSecurityMixin):
@@ -929,8 +930,9 @@ class TestCurrency(TestSlapOSGroupRoleSecurityMixin):
         portal_type='Currency')
     product.updateLocalRolesOnSecurityGroups()
     self.assertSecurityGroup(product,
-        ['G-COMPANY', self.user_id], False)
+        ['G-COMPANY', self.user_id, 'R-SHADOW-PERSON'], False)
     self.assertRoles(product, 'G-COMPANY', ['Assignor'])
+    self.assertRoles(product, 'R-SHADOW-PERSON', ['Auditor'])
     self.assertRoles(product, self.user_id, ['Owner'])
 
 class TestSaleTradeConditionModule(TestSlapOSGroupRoleSecurityMixin):
diff --git a/master/bt5/slapos_erp5/bt/revision b/master/bt5/slapos_erp5/bt/revision
index fa59ff276d..50f0bcd375 100644
--- a/master/bt5/slapos_erp5/bt/revision
+++ b/master/bt5/slapos_erp5/bt/revision
@@ -1 +1 @@
-134
\ No newline at end of file
+135
\ No newline at end of file
-- 
2.30.9