# -*- coding: utf-8 -*- # Part of Odoo. See LICENSE file for full copyright and licensing details. from odoo import _, api, models class LoyaltyProgram(models.Model): _inherit = 'loyalty.program' @api.model def _program_type_default_values(self): res = super()._program_type_default_values() # Add a loyalty reward for free shipping if 'loyalty' in res: res['loyalty']['reward_ids'].append((0, 0, { 'reward_type': 'shipping', 'required_points': 100, })) return res @api.model def get_program_templates(self): # Override 'promotion' template to say free shipping res = super().get_program_templates() if 'promotion' in res: res['promotion']['description'] = _("Automatic promotion: free shipping on orders higher than $50") return res @api.model def _get_template_values(self): res = super()._get_template_values() if 'promotion' in res: res['promotion']['reward_ids'] = [(5, 0, 0), (0, 0, { 'reward_type': 'shipping', })] return res