diff options
Diffstat (limited to 'addons/pos_adyen/models/pos_config.py')
| -rw-r--r-- | addons/pos_adyen/models/pos_config.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/addons/pos_adyen/models/pos_config.py b/addons/pos_adyen/models/pos_config.py new file mode 100644 index 00000000..9e388279 --- /dev/null +++ b/addons/pos_adyen/models/pos_config.py @@ -0,0 +1,25 @@ +# coding: utf-8 +# Part of Odoo. See LICENSE file for full copyright and licensing details. +import logging + +from odoo import api, fields, models, _ +from odoo.exceptions import ValidationError + +_logger = logging.getLogger(__name__) + + +class PosConfig(models.Model): + _inherit = 'pos.config' + + adyen_ask_customer_for_tip = fields.Boolean('Ask Customers For Tip', help='Prompt the customer to tip.') + + @api.onchange('iface_tipproduct') + def _onchange_iface_tipproduct_adyen(self): + if not self.iface_tipproduct: + self.adyen_ask_customer_for_tip = False + + @api.constrains('adyen_ask_customer_for_tip', 'iface_tipproduct', 'tip_product_id') + def _check_adyen_ask_customer_for_tip(self): + for config in self: + if config.adyen_ask_customer_for_tip and (not config.tip_product_id or not config.iface_tipproduct): + raise ValidationError(_("Please configure a tip product for POS %s to support tipping with Adyen.", config.name)) |
