# -*- coding: utf-8 -*- from . import models def _post_init_hook(env): """ Set all configuration parameters to disable external Odoo services. This runs after module installation. """ import logging _logger = logging.getLogger(__name__) set_param = env['ir.config_parameter'].sudo().set_param # Set permanent database expiration params_to_set = { # Database license parameters 'database.expiration_date': '2099-12-31 23:59:59', 'database.expiration_reason': 'renewal', 'database.enterprise_code': 'PERMANENT_LOCAL', # Clear "already linked" parameters 'database.already_linked_subscription_url': '', 'database.already_linked_email': '', 'database.already_linked_send_mail_url': '', # Redirect all IAP endpoints to localhost 'iap.endpoint': 'http://localhost:65535', 'partner_autocomplete.endpoint': 'http://localhost:65535', 'iap_extract_endpoint': 'http://localhost:65535', 'olg.endpoint': 'http://localhost:65535', 'mail.media_library_endpoint': 'http://localhost:65535', 'website.api_endpoint': 'http://localhost:65535', 'sms.endpoint': 'http://localhost:65535', 'crm.iap_lead_mining.endpoint': 'http://localhost:65535', 'reveal.endpoint': 'http://localhost:65535', 'publisher_warranty_url': 'http://localhost:65535', # OCN (Odoo Cloud Notification) - blocks push notifications to Odoo 'odoo_ocn.endpoint': 'http://localhost:65535', # Main OCN endpoint 'mail_mobile.enable_ocn': 'False', # Disable OCN push notifications 'odoo_ocn.project_id': '', # Clear any registered project 'ocn.uuid': '', # Clear OCN UUID to prevent registration # Snailmail (physical mail service) 'snailmail.endpoint': 'http://localhost:65535', # Social media IAP 'social.facebook_endpoint': 'http://localhost:65535', 'social.twitter_endpoint': 'http://localhost:65535', 'social.linkedin_endpoint': 'http://localhost:65535', } _logger.info("=" * 60) _logger.info("DISABLE ODOO ONLINE: Setting configuration parameters") _logger.info("=" * 60) for key, value in params_to_set.items(): try: set_param(key, value) _logger.info("Set %s = %s", key, value if len(str(value)) < 30 else value[:30] + "...") except Exception as e: _logger.warning("Could not set %s: %s", key, e) _logger.info("=" * 60) _logger.info("DISABLE ODOO ONLINE: Configuration complete") _logger.info("=" * 60)