changeset 651e21ff4ed2 in modules/account_payment_braintree:default
details: 
https://hg.tryton.org/modules/account_payment_braintree?cmd=changeset&node=651e21ff4ed2
description:
        Send only the required fields when fetching a readonly view definition

        issue11134
        review380081002
diffstat:

 account.py |  33 +++++++++------------------------
 common.py  |   9 +++------
 2 files changed, 12 insertions(+), 30 deletions(-)

diffs (145 lines):

diff -r 6c966c0c9955 -r 651e21ff4ed2 account.py
--- a/account.py        Wed Apr 06 23:37:41 2022 +0200
+++ b/account.py        Fri Apr 08 19:07:12 2022 +0200
@@ -57,8 +57,7 @@
         states={
             'required': Eval('process_method') == 'braintree',
             'invisible': Eval('process_method') != 'braintree',
-            },
-        depends=['currency', 'process_method'])
+            })
 
     @classmethod
     def __setup__(cls):
@@ -160,15 +159,13 @@
         states={
             'invisible': ((Eval('process_method') != 'braintree')
                 | ~Eval('braintree_transaction_id')),
-            },
-        depends=['process_method'])
+            })
     braintree_settle_payment = fields.Boolean(
         "Braintree Settle Payment",
         states={
             'invisible': Eval('process_method') != 'braintree',
             'readonly': Eval('state') != 'draft',
-            },
-        depends=['process_method', 'state'])
+            })
     braintree_payment_settled = fields.Boolean(
         "Braintree Payment Settled", readonly=True)
     braintree_settlement_needed = fields.Function(
@@ -180,8 +177,7 @@
         states={
             'invisible': ((Eval('process_method') != 'braintree')
                 | ~Eval('braintree_transaction_id')),
-            },
-        depends=['process_method', 'braintree_transaction_id'])
+            })
 
     braintree_dispute_reason = fields.Char(
         "Braintree Dispute Reason", readonly=True,
@@ -204,26 +200,20 @@
     def __setup__(cls):
         super().__setup__()
         cls.amount.states['readonly'] &= ~Eval('braintree_settlement_needed')
-        cls.amount.depends.append('braintree_settlement_needed')
 
         cls.braintree_customer.states['readonly'] = (
                 ~Eval('state').in_(['draft', 'approved'])
                 | Eval('braintree_nonce'))
-        cls.braintree_customer.depends.extend(['state', 'braintree_nonce'])
 
         cls.braintree_customer_method.states['invisible'] |= (
             Eval('braintree_nonce'))
         cls.braintree_customer_method.states['readonly'] = (
             ~Eval('state').in_(['draft', 'approved']))
-        cls.braintree_customer_method.depends.extend(
-            ['braintree_nonce', 'state'])
 
         cls.braintree_customer_method_selection.states['invisible'] |= (
             Eval('braintree_nonce'))
         cls.braintree_customer_method_selection.states['readonly'] = (
             ~Eval('state').in_(['draft', 'approved']))
-        cls.braintree_customer_method_selection.depends.extend(
-            ['braintree_nonce', 'state'])
 
         cls._buttons.update({
                 'braintree_checkout': {
@@ -533,14 +523,12 @@
             ],
         states={
             'readonly': Eval('state') != 'draft',
-            },
-        depends=['state'])
+            })
     amount = Monetary(
         "Amount", currency='currency', digits='currency', required=True,
         states={
             'readonly': Eval('state') != 'draft',
-            },
-        depends=['state'])
+            })
     approved_by = employee_field(
         "Approved by",
         states=['approved', 'processing', 'succeeded', 'failed'])
@@ -768,8 +756,7 @@
         "Automatic Settlement",
         states={
             'invisible': Eval('environment') != 'sandbox',
-            },
-        depends=['environment'])
+            })
 
     @classmethod
     def __setup__(cls):
@@ -891,15 +878,13 @@
         states={
             'readonly': (
                 Eval('braintree_customer_id') | Eval('braintree_nonce')),
-            },
-        depends=['braintree_customer_id', 'braintree_nonce'])
+            })
     braintree_account = fields.Many2One(
         'account.payment.braintree.account', "Account", required=True,
         states={
             'readonly': (
                 Eval('braintree_customer_id') | Eval('braintree_nonce')),
-            },
-        depends=['braintree_customer_id', 'braintree_nonce'])
+            })
     braintree_customer_id = fields.Char(
         "Braintree Customer ID",
         states={
diff -r 6c966c0c9955 -r 651e21ff4ed2 common.py
--- a/common.py Wed Apr 06 23:37:41 2022 +0200
+++ b/common.py Fri Apr 08 19:07:12 2022 +0200
@@ -23,16 +23,14 @@
                 ~Eval('party') | (Eval('party', -1) < 0)
                 | ~Eval('braintree_account')
                 | (Eval('braintree_account', -1) < 0)),
-            },
-        depends=['party', 'process_method', 'braintree_account'])
+            })
     braintree_customer_method = fields.Char(
         "Braintree Customer Method",
         states={
             'invisible': (
                 (Eval('process_method') != 'braintree')
                 | ~Eval('braintree_customer')),
-            },
-        depends=['process_method', 'braintree_customer'])
+            })
     # Use Function field with selection
     # to avoid querying Braintree on validation
     braintree_customer_method_selection = fields.Function(fields.Selection(
@@ -41,8 +39,7 @@
                 'invisible': (
                     (Eval('process_method') != 'braintree')
                     | ~Eval('braintree_customer')),
-                },
-            depends=['process_method', 'braintree_customer']),
+                }),
         'get_braintree_customer_method',
         setter='set_braintree_customer_method')
 

Reply via email to