PageSourceSearch

https://forms.biblestudytools.com/w37htfhcq2/vendor/d29a016c-dc24-4f8c-9ca4-bd26181ec031/lightbox_speed.js

js biblestudytools.com collected 2026-09-24 08:50:46 UTC 4,230 bytes, 112 lines download raw bytes

1var DIGIOH_LOADER = DIGIOH_LOADER || {};
2(function (digioh_loader) {
3    if (digioh_loader.loaded) { return; }
4    digioh_loader.loaded = true;
5    digioh_loader.loads = digioh_loader.loads || {};
6    function getPromise (doc) {
7        let ld = digioh_loader.loads;
8        if (ld[doc]) {
9            return ld[doc];
10        }
11        let p = {};
12        p.promise = new Promise((res, rej) => {
13            p.resolveCallback = res;
14            p.rejectCallback = rej;
15        });
16        ld[doc] = p;
17        return p;
18    }
19    digioh_loader.getPromise = getPromise;
20    const srcPath = "//forms.biblestudytools.com/w37htfhcq2/vendor/d29a016c-dc24-4f8c-9ca4-bd26181ec031/";
21
22    function createScriptElement(src, id) {
23        var e = document.createElement('script');
24        e.type = 'text/javascript';
25        e.async = true;
26        e.fetchPriority = "high";
27        e.src = src;
28        if (id) { e.id = id; }
29        var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(e, s);
30    }
31
32    function loadScript(doc, filename, cb) {
33        if (!digioh_loader.loads[doc]) {
34            getPromise(doc);
35            let src = `${srcPath}${filename}?cb=${cb}`;
36            createScriptElement(src);
37        }
38    };
39
40    function sendPV() {
41        try {
42            window.SENT_LIGHTBOX_PV = true;
43
44            var hn = 'empty';
45            if (window && window.location && window.location.hostname) {
46                hn = window.location.hostname;
47            }
48
49            var i = document.createElement("img");
50            i.width = 1;
51            i.height = 1;
52            // t = ms from navigation start to when this loader executed; lv = which loader variant served.
53            // Together these show whether a merchant page-speed app deferred our tag (large t) and which
54            // lightbox_speed.js variant the account is publishing. Both are read from the Cloudflare logs.
55            var t = (window.performance && typeof performance.now === 'function') ? Math.round(performance.now()) : -1;
56
57            i.src = ('https://forms.biblestudytools.com/w37htfhcq2/z9g/digibox.gif?c=' + (new Date().getTime()) + '&h=' + encodeURIComponent(hn) + '&e=p&u=40969' + '&t=' + t + '&lv=o');
58        }
59        catch (e) {
60        }
61    };
62
63    function jsonp(src, callback) {
64        const id = "__dgo" + Math.random().toString(36).replace(/^0\./, "");
65        const prefix = src.includes("?") ? "&" : "?";
66        src += `${prefix}callback=${id}`;
67        window[id] = (data) => {
68            document.querySelector(`#${id}`)?.remove();
69            delete window[id];
70            callback(data);
71        };
72        createScriptElement(src, id);
73    }
74
75    function initApi() {
76        let c = localStorage.getItem("dgdr") || sessionStorage.getItem("dgdr");
77        if (c) {
78            if (c.match(/^{.*"env_ver":\s?"digioh-.*}$/i)) {
79                const json = JSON.parse(c);
80                if (!json.expires || json.expires > Date.now()) {
81                    return;
82                }
83            }
84            else {
85                return;
86            }
87        }
88        let p = getPromise("dgdr");
89        let hostname = window?.location?.hostname || 'empty';
90        let uri = `https://forms.biblestudytools.com/a4flkt7l2b/z9gd/d29a016c-dc24-4f8c-9ca4-bd26181ec031/${hostname}/jsonp/z?cb=${Date.now()}`;
91        if (/^true$/.test("false")) {
92            uri += "&skip_geo=true";
93        }
94        jsonp(uri, p.resolveCallback);
95    }
96
97    sendPV();
98    initApi();
99
100    const qaMode = (window.sessionStorage.getItem('xdibx_boxqamode') == 1 || window.location.href.indexOf('boxqamode') > 0);
101    if (qaMode) {
102        loadScript("user", "user_qa.js", "639257854304895079");
103    loadScript("custom", "custom_qa.js", "E576A8D4B8AF161EBE805A154E0064FC");
104    loadScript("main", "main_qa.js", "30844B6311CEC0A6FC729644F01EF9A5");
105    }
106    else {
107        loadScript("user", "user.js", "639257854304895079");
108    loadScript("custom", "custom.js", "D5DF549E037895D6067A3E291AE37158");
109    loadScript("main", "main.js", "F3FE07DA68B7F56B7C85067DDFC1687E");
110    }
111
112})(DIGIOH_LOADER);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.