diff --git a/addons/auth_password_policy/models/res_config_settings.py b/addons/auth_password_policy/models/res_config_settings.py index bb1f52a281b..1583bb0f0dc 100644 --- a/addons/auth_password_policy/models/res_config_settings.py +++ b/addons/auth_password_policy/models/res_config_settings.py @@ -4,21 +4,9 @@ from odoo import api, fields, models, _ class ResConfigSettings(models.TransientModel): _inherit = 'res.config.settings' - minlength = fields.Integer("Minimum Password Length", help="Minimum number of characters passwords must contain, set to 0 to disable.") - - @api.model - def get_values(self): - res = super(ResConfigSettings, self).get_values() - - res['minlength'] = int(self.env['ir.config_parameter'].sudo().get_param('auth_password_policy.minlength', default=0)) - - return res - - @api.model - def set_values(self): - self.env['ir.config_parameter'].sudo().set_param('auth_password_policy.minlength', self.minlength) - - super(ResConfigSettings, self).set_values() + minlength = fields.Integer( + "Minimum Password Length", config_parameter="auth_password_policy.minlength", default=0, + help="Minimum number of characters passwords must contain, set to 0 to disable.") @api.onchange('minlength') def _on_change_mins(self): diff --git a/addons/mail/models/res_config_settings.py b/addons/mail/models/res_config_settings.py index 0ca94545fa3..6626b9fc192 100644 --- a/addons/mail/models/res_config_settings.py +++ b/addons/mail/models/res_config_settings.py @@ -11,9 +11,10 @@ class ResConfigSettings(models.TransientModel): the alias domain. """ _inherit = 'res.config.settings' - fail_counter = fields.Integer('Fail Mail', readonly=True) - alias_domain = fields.Char('Alias Domain', help="If you have setup a catch-all email domain redirected to " - "the Odoo server, enter the domain name here.", config_parameter='mail.catchall.domain') + fail_counter = fields.Integer('Fail Mail', compute="_compute_fail_counter") + alias_domain = fields.Char( + 'Alias Domain', config_parameter='mail.catchall.domain', + help="If you have setup a catch-all email domain redirected to the Odoo server, enter the domain name here.") restrict_template_rendering = fields.Boolean( 'Restrict Template Rendering', config_parameter='mail.restrict.template.rendering', @@ -33,20 +34,10 @@ class ResConfigSettings(models.TransientModel): config_parameter='mail.twilio_account_token', ) - @api.model - def get_values(self): - res = super(ResConfigSettings, self).get_values() + def _compute_fail_counter(self): + previous_date = fields.Datetime.now() - datetime.timedelta(days=30) - previous_date = datetime.datetime.now() - datetime.timedelta(days=30) - - res.update( - fail_counter=self.env['mail.mail'].sudo().search_count([ - ('date', '>=', previous_date.strftime(tools.DEFAULT_SERVER_DATETIME_FORMAT)), - ('state', '=', 'exception')]), - ) - - return res - - def set_values(self): - super(ResConfigSettings, self).set_values() - self.env['ir.config_parameter'].set_param("mail.catchall.domain", self.alias_domain or '') + self.fail_counter = self.env['mail.mail'].sudo().search_count([ + ('date', '>=', previous_date), + ('state', '=', 'exception'), + ])