/*__SALLA_WRAP_V1__*/ (function () { var s = document.currentScript; Salla.onReady(function () { var scoped = window.Salla.appScope(s.dataset.scopeId); var salla = scoped, Salla = scoped; var document = new Proxy(window.document, { get: function (d, p) { if (p === 'currentScript') { return s; } var v = d[p]; return typeof v === 'function' ? v.bind(d) : v; }, set: function (d, p, v) { d[p] = v; return true; } }); /*__SALLA_USER_CODE_START__*/ function stringToBooleanNew(str) { // Convert to lowercase and trim whitespace for robust comparison const lowerStr = String(str).toLowerCase().trim(); return lowerStr === "true" || lowerStr === "1"; } const moenagageApp = { enable_personalization: stringToBooleanNew(salla.config.get('app.enable_personalization', '')), data_center: salla.config.get('app.data_center', ''), app_id: salla.config.get('app.app_id', ''), debug_logs: stringToBooleanNew(salla.config.get('app.debug_logs', '')) }; document.addEventListener('DOMContentLoaded', () => { const head = document.head; const sdkVersion = salla.config.get('app.sdk_version', ''); if (moenagageApp.enable_personalization) { // Create and append preconnect/dns-prefetch links const preconnect1 = document.createElement('link'); preconnect1.rel = 'preconnect'; preconnect1.href = 'https://cdn.moengage.com/'; preconnect1.crossOrigin = 'anonymous'; head.appendChild(preconnect1); const dnsPrefetch1 = document.createElement('link'); dnsPrefetch1.rel = 'dns-prefetch'; dnsPrefetch1.href = 'https://cdn.moengage.com/'; head.appendChild(dnsPrefetch1); const preconnect2 = document.createElement('link'); preconnect2.rel = 'preconnect'; preconnect2.href = `https://sdk-0${moenagageApp.data_center}.moengage.com/`; preconnect2.crossOrigin = 'anonymous'; head.appendChild(preconnect2); const dnsPrefetch2 = document.createElement('link'); dnsPrefetch2.rel = 'dns-prefetch'; dnsPrefetch2.href = `https://sdk-0${moenagageApp.data_center}.moengage.com/`; head.appendChild(dnsPrefetch2); // Create and append the MoEngage SDK script based on debug_logs const moengageScript = document.createElement('script'); let scriptSrc = `https://cdn.moengage.com/release/dc_${moenagageApp.data_center}/versions/${sdkVersion}/moe_webSdk_webp.min.latest.js?app_id=${moenagageApp.app_id}`; // Append debug_logs parameter as 0 or 1 if debug_logs is true if (moenagageApp.debug_logs) { scriptSrc += '&debug_logs=1'; } // If debug_logs is false, the parameter is not added, which is the desired behavior. moengageScript.src = scriptSrc; head.appendChild(moengageScript); if (moenagageApp.debug_logs) { console.log('MoEngage scripts have been inserted into the (Debug Mode).'); console.log('Script URL:', moengageScript.src); } } else { if (moenagageApp.debug_logs) { console.log('MoEngage scripts are NOT inserted because personalization is disabled.'); } } }); /*__SALLA_USER_CODE_END__*/ }); })();