changeset 0cf69ba492a0 in modules/sale_gift_card:default
details: 
https://hg.tryton.org/modules/sale_gift_card?cmd=changeset&node=0cf69ba492a0
description:
        Check rule only if _check_access is set and enforce companies rule

        issue4080
        review343891009
diffstat:

 sale.py                      |   5 ++++-
 sale.xml                     |  12 ++++++++++++
 tests/test_sale_gift_card.py |   4 +++-
 3 files changed, 19 insertions(+), 2 deletions(-)

diffs (52 lines):

diff -r e5acdc50c2e8 -r 0cf69ba492a0 sale.py
--- a/sale.py   Sun Apr 04 15:50:01 2021 +0200
+++ b/sale.py   Sat Apr 10 23:46:24 2021 +0200
@@ -69,7 +69,10 @@
         domain=[
             ('gift_card', '=', True),
             ],
-        states=_states, depends=_depends)
+        context={
+            'company': Eval('company', -1),
+            },
+        states=_states, depends=_depends + ['company'])
     value = fields.Numeric(
         "Value", digits=(16, Eval('currency_digits', 2)), required=True,
         states=_states, depends=_depends + ['currency_digits'])
diff -r e5acdc50c2e8 -r 0cf69ba492a0 sale.xml
--- a/sale.xml  Sun Apr 04 15:50:01 2021 +0200
+++ b/sale.xml  Sat Apr 10 23:46:24 2021 +0200
@@ -93,6 +93,18 @@
             <field name="perm_delete" eval="True"/>
         </record>
 
+        <record model="ir.rule.group" id="rule_group_gift_card_companies">
+            <field name="name">User in companies</field>
+            <field name="model" search="[('model', '=', 'sale.gift_card')]"/>
+            <field name="global_p" eval="True"/>
+        </record>
+        <record model="ir.rule" id="rule_gift_card_companies">
+            <field name="domain"
+                eval="[('company', 'in', Eval('companies', []))]"
+                pyson="1"/>
+            <field name="rule_group" ref="rule_group_gift_card_companies"/>
+        </record>
+
         <record model="ir.action.report" id="report_gift_card_email">
             <field name="name">Gift Card</field>
             <field name="model">sale.gift_card</field>
diff -r e5acdc50c2e8 -r 0cf69ba492a0 tests/test_sale_gift_card.py
--- a/tests/test_sale_gift_card.py      Sun Apr 04 15:50:01 2021 +0200
+++ b/tests/test_sale_gift_card.py      Sat Apr 10 23:46:24 2021 +0200
@@ -10,8 +10,10 @@
 from trytond.tests.test_tryton import doctest_teardown
 from trytond.tests.test_tryton import doctest_checker
 
+from trytond.modules.company.tests import CompanyTestMixin
 
-class SaleGiftCardTestCase(ModuleTestCase):
+
+class SaleGiftCardTestCase(CompanyTestMixin, ModuleTestCase):
     'Test Sale Gift Card module'
     module = 'sale_gift_card'
 

Reply via email to