From 7be2403cf5ae54db485832fa33c0cf33645e0dc6 Mon Sep 17 00:00:00 2001 From: Denis Ledoux <dle@odoo.com> Date: Thu, 17 Dec 2015 14:35:03 +0100 Subject: [PATCH] [FIX] website_quote: condition to display the `Pay Now` button Before this revision, the button "Pay now" on the quotation in the frond-end was display only if the sale order was in the state `manual` and that there was not yet any payment transaction. The thing is, since the release of 9.0, the `manual`state no longer exists in `sale.order`, and the pay now button was therefore never displayed. From this revision, the condition to display the button is based on the `invoice_status`, which need to be `to_invoice`, meaning there is something to pay: - The sale.order needs to be in states `sale` or `done` - At least one line has to be invoiced: - If the product has the `invoice_policy` set to `order` - or if the product has the 'invoice_policy` set to `delivery`, and at least one quantity has been delivered. opw-659931 --- addons/website_quote/controllers/main.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/website_quote/controllers/main.py b/addons/website_quote/controllers/main.py index af0115aa9a22..5c4e279b7939 100644 --- a/addons/website_quote/controllers/main.py +++ b/addons/website_quote/controllers/main.py @@ -53,7 +53,7 @@ class sale_quote(http.Controller): 'tx_id': tx_id, 'tx_state': tx.state if tx else False, 'tx_post_msg': tx.acquirer_id.post_msg if tx else False, - 'need_payment': not tx_id and order.state == 'manual', + 'need_payment': order.invoice_status == 'to invoice' and (not tx or tx.state in ['draft', 'cancel', 'error']), 'token': token, } -- GitLab