From 3751379f1e9a4c215fb6eb898b4ccc67659b9ace Mon Sep 17 00:00:00 2001 From: stephanchrst Date: Tue, 10 May 2022 21:51:50 +0700 Subject: initial commit 2 --- .../models/phone_validation_mixin.py | 27 ++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 addons/phone_validation/models/phone_validation_mixin.py (limited to 'addons/phone_validation/models/phone_validation_mixin.py') diff --git a/addons/phone_validation/models/phone_validation_mixin.py b/addons/phone_validation/models/phone_validation_mixin.py new file mode 100644 index 00000000..a430a537 --- /dev/null +++ b/addons/phone_validation/models/phone_validation_mixin.py @@ -0,0 +1,27 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo import models +from odoo.addons.phone_validation.tools import phone_validation + + +class PhoneValidationMixin(models.AbstractModel): + _name = 'phone.validation.mixin' + _description = 'Phone Validation Mixin' + + def _phone_get_country(self): + if 'country_id' in self and self.country_id: + return self.country_id + return self.env.company.country_id + + def phone_format(self, number, country=None, company=None): + country = country or self._phone_get_country() + if not country: + return number + return phone_validation.phone_format( + number, + country.code if country else None, + country.phone_code if country else None, + force_format='INTERNATIONAL', + raise_exception=False + ) -- cgit v1.2.3