PageSourceSearch

https://www.optisolbusiness.com/wp-content/themes/thegem/js/thegem-fullwidth-loader.js?ver=7.0.5

js optisolbusiness.com collected 2026-10-02 16:45:07 UTC 5,051 bytes, 126 lines download raw bytes

1(function() {
2    var fullwithData = {
3        page: null,
4        pageWidth: 0,
5        pageOffset: {},
6        fixVcRow: true,
7        pagePaddingLeft: 0
8    };
9
10    function updateFullwidthData() {
11        fullwithData.pageOffset = fullwithData.page.getBoundingClientRect();
12        fullwithData.pageWidth = parseFloat(fullwithData.pageOffset.width);
13        fullwithData.pagePaddingLeft = 0;
14
15        if (fullwithData.page.className.indexOf('vertical-header') != -1) {
16            fullwithData.pagePaddingLeft = 45;
17            if (fullwithData.pageWidth >= 1600) {
18                fullwithData.pagePaddingLeft = 360;
19            }
20            if (fullwithData.pageWidth < 980) {
21                fullwithData.pagePaddingLeft = 0;
22            }
23        }
24    }
25
26    function gem_fix_fullwidth_position(element) {
27        if (element == null) {
28            return false;
29        }
30
31        if (fullwithData.page == null) {
32            fullwithData.page = document.getElementById('page');
33            updateFullwidthData();
34        }
35
36        if (fullwithData.pageWidth < 1170) {
37            return false;
38        }
39
40        if (!fullwithData.fixVcRow) {
41            return false;
42        }
43
44        if (element.previousElementSibling != null && element.previousElementSibling != undefined && element.previousElementSibling.className.indexOf('fullwidth-block') == -1) {
45            var elementParentViewportOffset = element.previousElementSibling.getBoundingClientRect();
46        } else {
47            var elementParentViewportOffset = element.parentNode.getBoundingClientRect();
48        }
49
50        if (elementParentViewportOffset.top > window.gemOptions.clientHeight) {
51            fullwithData.fixVcRow = false;
52            return false;
53        }
54
55        if (element.className.indexOf('vc_row') != -1) {
56            var elementMarginLeft = -21;
57            var elementMarginRight = -21;
58        } else {
59            var elementMarginLeft = 0;
60            var elementMarginRight = 0;
61        }
62
63        var offset = parseInt(fullwithData.pageOffset.left + 0.5) - parseInt((elementParentViewportOffset.left < 0 ? 0 : elementParentViewportOffset.left) + 0.5) - elementMarginLeft + fullwithData.pagePaddingLeft;
64        var offsetKey = window.gemSettings.isRTL ? 'right' : 'left';
65
66        element.style.position = 'relative';
67        element.style[offsetKey] = offset + 'px';
68        element.style.width = fullwithData.pageWidth - fullwithData.pagePaddingLeft + 'px';
69
70        if (element.className.indexOf('vc_row') == -1) {
71            element.setAttribute('data-fullwidth-updated', 1);
72        }
73
74        if (element.className.indexOf('vc_row') != -1 && !element.hasAttribute('data-vc-stretch-content')) {
75            var el_full = element.parentNode.querySelector('.vc_row-full-width-before');
76            var padding = -1 * offset;
77            0 > padding && (padding = 0);
78            var paddingRight = fullwithData.pageWidth - padding - el_full.offsetWidth + elementMarginLeft + elementMarginRight;
79            0 > paddingRight && (paddingRight = 0);
80            element.style.paddingLeft = padding + 'px';
81            element.style.paddingRight = paddingRight + 'px';
82        }
83    }
84
85    window.gem_fix_fullwidth_position = gem_fix_fullwidth_position;
86
87    if (window.gemSettings.isTouch) {
88        setTimeout(function() {
89            var head  = document.getElementsByTagName('head')[0],
90                link  = document.createElement('link');
91            link.rel  = 'stylesheet';
92            link.type = 'text/css';
93            link.href = window.gemSettings.themePath + '/css/thegem-touch.css';
94            head.appendChild(link);
95        }, 1000);
96    }
97
98    if (window.gemSettings.lasyDisabled && !window.gemSettings.forcedLasyDisabled) {
99        setTimeout(function() {
100            var head  = document.getElementsByTagName('head')[0],
101                link  = document.createElement('link');
102            link.rel  = 'stylesheet';
103            link.type = 'text/css';
104            link.href = window.gemSettings.themePath + '/css/thegem-effects-disabled.css';
105            head.appendChild(link);
106        }, 1000);
107    }
108
109    if (window.gemSettings.parallaxDisabled) {
110        var head  = document.getElementsByTagName('head')[0],
111            link  = document.createElement('style');
112        link.rel  = 'stylesheet';
113        link.type = 'text/css';
114        link.innerHTML = ".fullwidth-block.fullwidth-block-parallax-vert
114ical .fullwidth-block-background, .fullwidth-block.fullwidth-block-parallax-fixed .fullwidth-block-background { background-attachment: scroll !important; }";
115        head.appendChild(link);
116    }
117})();
118
119(function() {
120    setTimeout(function() {
121        var preloader = document.getElementById('page-preloader');
122        if (preloader != null && preloader != undefined) {
123            preloader.className += ' preloader-loaded';
124        }
125    }, window.pagePreloaderHideTime || 1000);
126})();

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.