details: https://code.tryton.org/tryton/commit/4c90378c6f7b
branch: default
user: Cédric Krier <[email protected]>
date: Thu Oct 23 18:24:26 2025 +0200
description:
Hide all payment fields and buttons when using a different process
method
Closes #14310
diffstat:
modules/account_payment_braintree/account.py | 19 ++++++++---
modules/account_payment_stripe/payment.py | 46 +++++++++++++++++++--------
2 files changed, 46 insertions(+), 19 deletions(-)
diffs (122 lines):
diff -r c6afe456afe0 -r 4c90378c6f7b
modules/account_payment_braintree/account.py
--- a/modules/account_payment_braintree/account.py Wed Oct 22 18:57:34
2025 +0200
+++ b/modules/account_payment_braintree/account.py Thu Oct 23 18:24:26
2025 +0200
@@ -160,9 +160,16 @@
'readonly': Eval('state') != 'draft',
})
braintree_payment_settled = fields.Boolean(
- "Braintree Payment Settled", readonly=True)
+ "Braintree Payment Settled", readonly=True,
+ states={
+ 'invisible': Eval('process_method') != 'braintree',
+ })
braintree_settlement_needed = fields.Function(
- fields.Boolean("Braintree Settlement Needed"),
+ fields.Boolean(
+ "Braintree Settlement Needed",
+ states={
+ 'invisible': Eval('process_method') != 'braintree',
+ }),
'get_braintree_settlement_needed')
braintree_refunds = fields.One2Many(
@@ -225,12 +232,14 @@
],
},
'braintree_do_settle_payment': {
- 'invisible': ((Eval('state', 'draft') != 'processing')
- | ~Eval('braintree_settlement_needed')),
+ 'invisible': ((Eval('process_method') != 'braintree')
+ | ((Eval('state', 'draft') != 'processing')
+ | ~Eval('braintree_settlement_needed'))),
'depends': ['state', 'braintree_settlement_needed'],
},
'braintree_do_pull': {
- 'invisible': ~Eval('braintree_transaction_id'),
+ 'invisible': ((Eval('process_method') != 'braintree')
+ | ~Eval('braintree_transaction_id')),
'depends': ['braintree_transaction_id'],
},
})
diff -r c6afe456afe0 -r 4c90378c6f7b modules/account_payment_stripe/payment.py
--- a/modules/account_payment_stripe/payment.py Wed Oct 22 18:57:34 2025 +0200
+++ b/modules/account_payment_stripe/payment.py Thu Oct 23 18:24:26 2025 +0200
@@ -129,9 +129,16 @@
'readonly': Eval('state') != 'draft',
})
stripe_captured = fields.Boolean(
- "Stripe Captured", readonly=True)
+ "Stripe Captured", readonly=True,
+ states={
+ 'invisible': Eval('process_method') != 'stripe',
+ })
stripe_capture_needed = fields.Function(
- fields.Boolean("Stripe Capture Needed"),
+ fields.Boolean(
+ "Stripe Capture Needed",
+ states={
+ 'invisible': Eval('process_method') != 'stripe',
+ }),
'get_stripe_capture_needed')
stripe_token = fields.Char(
"Stripe Token", readonly=True, strip=False,
@@ -157,7 +164,10 @@
| ~Eval('stripe_capture_needed')),
})
stripe_idempotency_key = fields.Char(
- "Stripe Idempotency Key", readonly=True, strip=False)
+ "Stripe Idempotency Key", readonly=True, strip=False,
+ states={
+ 'invisible': Eval('process_method') != 'stripe',
+ })
stripe_error_message = fields.Char("Stripe Error Message", readonly=True,
states={
'invisible': (
@@ -185,7 +195,11 @@
'invisible': ~Eval('stripe_dispute_status'),
})
stripe_amount = fields.Function(
- fields.Integer("Stripe Amount"),
+ fields.Integer(
+ "Stripe Amount",
+ states={
+ 'invisible': Eval('process_method') != 'stripe',
+ }),
'get_stripe_amount', setter='set_stripe_amount')
stripe_refunds = fields.One2Many(
'account.payment.stripe.refund', 'payment', "Refunds",
@@ -230,20 +244,24 @@
cls.stripe_amount.states.update(cls.amount.states)
cls._buttons.update({
'stripe_checkout': {
- 'invisible': (~Eval('state', 'draft').in_(
- ['submitted', 'approved', 'processing'])
- | ~Eval('stripe_checkout_needed', False)),
- 'depends': ['state', 'stripe_checkout_needed'],
+ 'invisible': ((Eval('process_method') != 'stripe')
+ | (~Eval('state', 'draft').in_(
+ ['submitted', 'approved', 'processing'])
+ | ~Eval('stripe_checkout_needed', False))),
+ 'depends': [
+ 'process_method', 'state', 'stripe_checkout_needed'],
},
'stripe_do_capture': {
- 'invisible': ((Eval('state', 'draft') != 'processing')
- | ~Eval('stripe_capture_needed')),
- 'depends': ['state', 'stripe_capture_needed'],
+ 'invisible': ((Eval('process_method') != 'stripe')
+ | ((Eval('state', 'draft') != 'processing')
+ | ~Eval('stripe_capture_needed'))),
+ 'depends': [
+ 'process_method', 'state', 'stripe_capture_needed'],
},
'stripe_do_pull': {
- 'invisible': (
- ~Eval('stripe_charge_id')
- & ~Eval('stripe_payment_intent_id')),
+ 'invisible': ((Eval('process_method') != 'stripe')
+ | (~Eval('stripe_charge_id')
+ & ~Eval('stripe_payment_intent_id'))),
'depends': [
'stripe_charge_id', 'stripe_payment_intent_id'],
},