PluginProbe
Taboola / 3.1.0
Taboola v3.1.0
1.0.4 1.0.5 1.0.6 1.0.8 2.0.1 2.0.2 2.1.0 2.1.1 2.2.2 2.2.3 3.0.0 3.0.1 3.0.2 3.1.0 trunk 1.0 1.0.1 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.15 1.0.2 1.0.3
taboola / js / loaderInjectionScript.js

loaderInjectionScript.js in Taboola 3.1.0, at js/loaderInjectionScript.js

74 lines 2.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 (function () {
2 var PUBLISHER_ID = '{{PUBLISHER_ID}}';
3 var PAGE_TYPE = '{{PAGE_TYPE}}';
4 var LOADER_URL = '//cdn.taboola.com/libtrc/' + PUBLISHER_ID + '/loader.js';
5 var LOADER_PRIVACY_URL = '//static.tblcontent.com/libtrc/' + PUBLISHER_ID + '/loader.privacy.js';
6 var PIXEL_URL = 'https://static.qovani.com/libtrc/tr5?type=pixel&publisher=' + PUBLISHER_ID;
7 var SCRIPT_ID = 'tb_loader_script';
8 var FALLBACK_ID = 'tb_loader_script_fb';
9 var SHIM_GRACE = 500;
10 var MAX_WAIT = 6000;
11
12 window._taboola = window._taboola || [];
13
14 var pageTypePush = {};
15 pageTypePush[PAGE_TYPE] = 'auto';
16 _taboola.push(pageTypePush);
17
18 _taboola.push({listenTo: 'render', handler: function (p) { TRC.modDebug.logMessageToServer(2, "wordpress-integ"); }});
19
20 _taboola.push({additional_data: {sdkd: {
21 "os": "Wordpress",
22 "osv": "{{WORDPRESS_VERSION}}",
23 "php_ver": "{{PHP_VERSION}}",
24 "sdkt": "Taboola Wordpress Plugin",
25 "sdkv": "{{PLUGIN_VERSION}}",
26 "loc_mid": "{{LOC_MID}}",
27 "loc_home": "{{LOC_HOME}}"
28 }}});
29
30 if (document.getElementById(SCRIPT_ID)) { return; }
31
32 new Image().src = PIXEL_URL;
33
34 var firstScript = document.getElementsByTagName('script')[0];
35 var fallbackDone = false;
36
37 function isLoaderReady() {
38 return typeof window.TRCImpl !== 'undefined' || (typeof window.TRC !== 'undefined' && window.TRC !== null);
39 }
40
41 function injectPrivacyLoader() {
42 if (fallbackDone || isLoaderReady()) { return; }
43 fallbackDone = true;
44 var primary = document.getElementById(SCRIPT_ID);
45 if (primary && primary.parentNode) { primary.parentNode.removeChild(primary); }
46 if (document.getElementById(FALLBACK_ID)) { return; }
47 var s = document.createElement('script');
48 s.async = true;
49 s.src = LOADER_PRIVACY_URL;
50 s.id = FALLBACK_ID;
51 firstScript.parentNode.insertBefore(s, firstScript);
52 }
53
54 var primaryScript = document.createElement('script');
55 primaryScript.async = true;
56 primaryScript.src = LOADER_URL;
57 primaryScript.id = SCRIPT_ID;
58 primaryScript.onerror = injectPrivacyLoader;
59 primaryScript.onload = function () {
60 setTimeout(function () {
61 if (!isLoaderReady()) { injectPrivacyLoader(); }
62 }, SHIM_GRACE);
63 };
64 firstScript.parentNode.insertBefore(primaryScript, firstScript);
65
66 setTimeout(function () {
67 if (!isLoaderReady()) { injectPrivacyLoader(); }
68 }, MAX_WAIT);
69
70 if (window.performance && typeof window.performance.mark === 'function') {
71 window.performance.mark('tbl_ic');
72 }
73 })();
74