diff --git a/public_budget/models/expedient.py b/public_budget/models/expedient.py index 5464a30f..c39d2d4a 100644 --- a/public_budget/models/expedient.py +++ b/public_budget/models/expedient.py @@ -220,10 +220,13 @@ def write(self, vals): if 'pages' in vals: new_pages = vals.get('pages') for record in self: - if new_pages < record.pages: - raise ValidationError(_('No puede disminuir la cantidad ' - 'de páginas de un ' - 'expediente')) + admin_users = self.env['res.users'].sudo().search([('groups_id', 'in', [self.env.ref('base.group_system').id])]) + if new_pages and self.env.user in admin_users and self.user_has_groups('base.group_no_one'): + message = _("Cantidad de páginas modificadas de %d a %d") % ( + self.pages, new_pages) + self.message_post(body=message) + else: + raise ValidationError(_('No tiene autorización para modificar la cantidad de páginas de un expediente')) return super().write(vals) def check_expedients_exist(self):