48 lines
3.3 KiB
Python
48 lines
3.3 KiB
Python
# -*- coding: utf-8 -*-
|
|
from odoo import models, fields, api, _
|
|
|
|
class ResCompany(models.Model):
|
|
_inherit = 'res.company'
|
|
|
|
# Meta / Facebook Commerce Configuration
|
|
meta_app_id = fields.Char(string='Meta App ID')
|
|
meta_app_secret = fields.Char(string='Meta App Secret', groups='dine360_meta_social.group_social_manager')
|
|
meta_access_token = fields.Char(string='Meta Access Token', groups='dine360_meta_social.group_social_manager')
|
|
meta_business_account_id = fields.Char(string='Meta Business Account ID')
|
|
meta_catalog_id = fields.Char(string='Meta Catalog ID')
|
|
meta_facebook_page_id = fields.Char(string='Facebook Page ID')
|
|
meta_instagram_account_id = fields.Char(string='Instagram Business Account ID')
|
|
meta_sync_enabled = fields.Boolean(string='Enable Meta Catalog Sync', default=False)
|
|
meta_auto_sync_on_write = fields.Boolean(string='Sync On Product Change', default=True, help='Automatically enqueue sync when product price, stock, or status changes.')
|
|
meta_connection_status = fields.Selection([
|
|
('untested', 'Not Tested'),
|
|
('connected', 'Connected'),
|
|
('error', 'Connection Error')
|
|
], string='Meta Connection Status', default='untested')
|
|
meta_last_connection_test = fields.Datetime(string='Meta Last Test')
|
|
meta_last_test_error = fields.Text(string='Meta Last Test Error')
|
|
|
|
# WhatsApp Business Cloud API Configuration
|
|
whatsapp_phone_number_id = fields.Char(string='WhatsApp Phone Number ID')
|
|
whatsapp_business_account_id = fields.Char(string='WhatsApp Business Account ID')
|
|
whatsapp_access_token = fields.Char(string='WhatsApp Access Token', groups='dine360_meta_social.group_social_manager')
|
|
whatsapp_verify_token = fields.Char(string='Webhook Verify Token', groups='dine360_meta_social.group_social_manager',
|
|
default=lambda self: self.env['ir.config_parameter'].sudo().get_param('dine360.whatsapp_verify_token', 'dine360_wa_token_secret'))
|
|
whatsapp_enabled = fields.Boolean(string='Enable WhatsApp Integration', default=False)
|
|
whatsapp_business_phone_number = fields.Char(string='WhatsApp Contact Number (wa.me)',
|
|
help='Display/chat phone number with country code (e.g. 15551234567, no + or spaces)')
|
|
whatsapp_button_product_page = fields.Boolean(string='Show WhatsApp on Product Page', default=True)
|
|
whatsapp_button_floating = fields.Boolean(string='Show Floating WhatsApp Button', default=True)
|
|
whatsapp_button_footer = fields.Boolean(string='Show WhatsApp in Footer', default=False)
|
|
whatsapp_prefilled_message = fields.Text(string='Default Inquiry Message',
|
|
default="Hi, I'm interested in {product_name}.")
|
|
whatsapp_connection_status = fields.Selection([
|
|
('untested', 'Not Tested'),
|
|
('connected', 'Connected'),
|
|
('error', 'Connection Error')
|
|
], string='WhatsApp Connection Status', default='untested')
|
|
whatsapp_last_connection_test = fields.Datetime(string='WhatsApp Last Test')
|
|
whatsapp_last_test_error = fields.Text(string='WhatsApp Last Test Error')
|
|
whatsapp_webhook_verified = fields.Boolean(string='Webhook Verified', default=False)
|
|
whatsapp_last_webhook_ping = fields.Datetime(string='Last Webhook Ping')
|