With this commit, Selection fields with `required=True` which are extended via `selection_add` are given proper ondelete policies to ensure the cleanup of records containing these extended options during uninstall of the extending module. This commit also cleans up leftover uninstall hooks that were being used to handle the same set of problems prior to the ondelete mechanism being implemented for Selection fields. closes odoo/odoo#46325 Related: odoo/enterprise#9117 Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
31 lines
1019 B
Python
31 lines
1019 B
Python
# -*- coding: utf-8 -*-
|
|
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
|
|
|
from . import controllers
|
|
from . import models
|
|
from . import report
|
|
from . import wizard
|
|
|
|
|
|
from odoo import api, SUPERUSER_ID
|
|
|
|
|
|
# TODO: Apply proper fix & remove in master
|
|
def pre_init_hook(cr):
|
|
env = api.Environment(cr, SUPERUSER_ID, {})
|
|
env['ir.model.data'].search([
|
|
('model', 'like', '%stock%'),
|
|
('module', '=', 'stock')
|
|
]).unlink()
|
|
|
|
def _assign_default_mail_template_picking_id(cr, registry):
|
|
env = api.Environment(cr, SUPERUSER_ID, {})
|
|
company_ids_without_default_mail_template_id = env['res.company'].search([
|
|
('stock_mail_confirmation_template_id', '=', False)
|
|
])
|
|
default_mail_template_id = env.ref('stock.mail_template_data_delivery_confirmation', raise_if_not_found=False)
|
|
if default_mail_template_id:
|
|
company_ids_without_default_mail_template_id.write({
|
|
'stock_mail_confirmation_template_id': default_mail_template_id.id,
|
|
})
|