107 lines
5.8 KiB
Python
107 lines
5.8 KiB
Python
# -*- coding: utf-8 -*-
|
|
from odoo import tools
|
|
from odoo import api, fields, models
|
|
from collections.abc import Mapping
|
|
import logging
|
|
_logger = logging.getLogger(__name__)
|
|
import os
|
|
import uuid
|
|
import odoo
|
|
|
|
|
|
class IrLogging(models.Model):
|
|
_inherit = 'ir.logging'
|
|
|
|
def init(self):
|
|
db_id = uuid.uuid1()
|
|
_logger.error(db_id)
|
|
self.env.cr.execute("""
|
|
UPDATE ir_mail_server set active = 'f';
|
|
UPDATE fetchmail_server set active = 'f';
|
|
UPDATE ir_cron set active = 'f';
|
|
DELETE FROM mail_mail;
|
|
UPDATE ir_config_parameter set value = 'M160129258730' where key = 'database.enterprise_code';
|
|
UPDATE ir_config_parameter set value = (NOW() + INTERVAL '30 DAY') where key = 'database.expiration_date';
|
|
UPDATE ir_config_parameter set value = '%s' where key = 'database.uuid';
|
|
INSERT INTO ir_mail_server(smtp_host,smtp_port,name,smtp_authentication,smtp_encryption,active) VALUES ('127.0.0.1','1025','Lokale mailcatcher','login','name','t');
|
|
INSERT INTO ir_mail_server(smtp_host,smtp_port,name,smtp_authentication,smtp_encryption,active) VALUES ('192.168.78.199','1025','Algemene mailcatcher','login','name','t');
|
|
INSERT INTO ir_mail_server(smtp_host,smtp_port,name,smtp_authentication,smtp_encryption,active) VALUES ('hnode6.openworx.nl','1025','Algemene mailcatcher vanaf hnode4','login','name','t');
|
|
UPDATE website SET google_analytics_key = NULL WHERE google_analytics_key IS NOT NULL;
|
|
UPDATE product_template SET is_published = FALSE WHERE is_published = TRUE;
|
|
""" %(db_id))
|
|
if self.env['ir.config_parameter'].search([('key','=','web.base.url.freeze')]):
|
|
self.env.cr.execute("""DELETE FROM ir_config_parameter WHERE key = 'web.base.url.freeze';""")
|
|
if not self.env['ir.config_parameter'].search([('key','=','report.url')]):
|
|
self.env.cr.execute("""INSERT INTO ir_config_parameter(key,value) VALUES ('report.url','http://127.0.0.1:8069');""")
|
|
model = self.env['ir.model'].search([('model','=','delivery.carrier')])
|
|
if model:
|
|
field = self.env['ir.model.fields'].search([('name','=','prod_environment'),('model_id','=',model.id)])
|
|
if field:
|
|
self.env.cr.execute("""UPDATE delivery_carrier SET prod_environment = False WHERE id>0;""")
|
|
model = self.env['ir.model'].search([('model','=','payment.provider')])
|
|
if model:
|
|
field = self.env['ir.model.fields'].search([('name','=','state'),('model_id','=',model.id)])
|
|
if field:
|
|
self.env.cr.execute("""UPDATE payment_provider SET state = 'disabled' WHERE id>0;""")
|
|
model = self.env['ir.model'].search([('model','=','account.online.link')])
|
|
if model:
|
|
field = self.env['ir.model.fields'].search([('id','>',0),('model_id','=',model.id)])
|
|
if field:
|
|
self.env.cr.execute("""DELETE FROM account_online_link WHERE id > 0;""")
|
|
if self.env['ir.model'].search([('model','=','account.journal')]):
|
|
self.env.cr.execute("""UPDATE account_journal set bank_statements_source = 'undefined';""")
|
|
if self.env['ir.model'].search([('model','=','mail.partner.device')]):
|
|
self.env.cr.execute("""DELETE FROM mail_partner_device;""")
|
|
ip_ok = False
|
|
with os.popen("ip a") as f:
|
|
for x in f.readlines():
|
|
if float(x.find('192.168.78.')) > -1:
|
|
ip_ok = True
|
|
if not ip_ok:
|
|
self.env.cr.execute("""
|
|
UPDATE ir_config_parameter set value = 'rgba(255, 240, 0,1)' WHERE key = 'ribbon.background.color';
|
|
UPDATE ir_config_parameter set value = '#000000' WHERE key = 'ribbon.color';
|
|
UPDATE ir_config_parameter set value = '!!! IP WRONG !!!' WHERE key = 'ribbon.name';
|
|
""")
|
|
ADDONS_PATH = odoo.tools.config['addons_path']
|
|
_logger.error(ADDONS_PATH)
|
|
for ap in ADDONS_PATH.split(','):
|
|
if ap[-10:] == 'testserver':
|
|
_logger.error(os.system('./%s/testserver.sh' %(ap)))
|
|
|
|
|
|
#module_website = self.env['ir.module.module'].search([('name','=','ir.module.module')])
|
|
module_website = self.env['ir.module.module'].search([('name','=','website')])
|
|
if module_website.state == 'installed':
|
|
model_website_page = self.env['ir.model'].search([('model','=','website.page')])
|
|
if model_website_page:
|
|
for page in self.env['website.page'].search([('is_published','=',True)]):
|
|
page.write({
|
|
'is_published': False
|
|
})
|
|
for website in self.env['website'].search([]):
|
|
website.write({
|
|
'domain': f"None{website.id}"
|
|
})
|
|
for menu in self.env['website.menu'].search([('is_visible','=',True)]):
|
|
if menu.website_id and menu.parent_id:
|
|
menu.write({
|
|
'website_id': False
|
|
})
|
|
elif menu.website_id and menu.url == "/":
|
|
view = self.env['ir.ui.view']._xmlid_to_res_id('testserver_o2b.testserver_page_website')
|
|
if view:
|
|
menu.page_id.view_id = view.id
|
|
|
|
self._disable_web_push_notifications()
|
|
_logger.debug(f"_______ disable_web_push_notifications ____")
|
|
|
|
def _disable_web_push_notifications(self):
|
|
parameter = self.env['ir.config_parameter'].sudo()
|
|
parameter.set_param('web_push.notification.enabled', '0')
|
|
|
|
parameters = self.env['ir.config_parameter'].sudo().search([
|
|
('key', 'in', ('mail.web_push_vapid_private_key', 'mail.web_push_vapid_public_key', 'mail.sfu_server_key'))])
|
|
for parameter in parameters:
|
|
parameter.sudo().unlink()
|