register_hooks(); } public function register_hooks() { $settings = Options::get_site_settings(); if (!empty($settings)) { //add_action('init', [$this, 'maybe_output_sw_file']); add_action('wp_enqueue_scripts', array($this, 'enqueue_aw_sdk_init_script')); } } public function enqueue_aw_sdk_init_script() { $settings = Options::get_site_settings(); if (empty($settings)) { return; } $app_id = empty($settings['alertwise_setting_app_id']) ? null : esc_js($settings['alertwise_setting_app_id']); $public_key = empty($settings['alertwise_setting_app_server_public_key']) ? null : esc_js($settings['alertwise_setting_app_server_public_key']); if (!empty($app_id) && !empty($public_key)) { $aw_sdk_url = ALERTWISE_CDN_URL . $app_id . '/integrate/alert-wise.js'; $script = "(function(w, d) { w.alertwise = w.alertwise || []; alertwise.push(['init', { appId: '" . $app_id . "', applicationServerPublicKey: '" . $public_key . "', scope: '" . ALERTWISE_SERVICE_WORKER_SCOPE . "', alertwiseApiUrl: '" . ALERTWISE_API_WITHOUT_SLASH_URL . "', serviceWorkerUrl: '" . ALERTWISE_SERVICE_WORKER_URL . "', }]); var e = d.createElement('script'); e.src = '" . $aw_sdk_url . "'; e.async = true; e.type = 'text/javascript'; d.head.appendChild(e); })(window, document);"; } else { $script = 'console.error("You haven’t finished setting up your site. Please connect your account!!");'; } wp_register_script('alertwise-sdk-init', ''); wp_enqueue_script('alertwise-sdk-init'); wp_add_inline_script('alertwise-sdk-init', $script); } }