1(function ($) { 2 "use strict"; 3 4 $(window).on( 'load', function () { 5 for (var key in qodefCore.shortcodes) { 6 for (var keyChild in qodefCore.shortcodes[key]) { 7 qodefElementor.init(key, keyChild); 8 } 9 } 10 11 qodefElementorSection.init(); 12 elementorSection.init(); 13 }); 14 15 var qodefElementor = { 16 init: function (key, keyChild) { 17 $(window).on('elementor/frontend/init', function (e) { 18 elementorFrontend.hooks.addAction('frontend/element_ready/' + key + '.default', function (e) { 19 // Check if object doesn't exist and print the module where is the error 20 if (typeof qodefCore.shortcodes[key][keyChild] === 'undefined') { 21 console.log(keyChild); 22 } 23 24 qodefCore.shortcodes[key][keyChild].init(); 25 }); 26 }); 27 } 28 }; 29 30 var qodefElementorSection = { 31 init: function () { 32 $(window).on('elementor/frontend/init', function () { 33 elementorFrontend.hooks.addAction('frontend/element_ready/section', elementorSection.init); 34 }); 35 } 36 }; 37 38 var elementorSection = { 39 init: function ($scope) { 40 var $target = $scope, 41 isEditMode = Boolean(elementorFrontend.isEditMode()), 42 settings = [], 43 sectionData = {}; 44 45 //generate parallax settings 46 if (isEditMode && typeof $scope !== 'undefined') { 47 48 // generate options when in admin 49 var editorElements = window.elementor.elements, 50 sectionId = $target.data('id'); 51 52 $.each(editorElements.models, function (index, object) { 53 if (sectionId === object.id) { 54 sectionData = object.attributes.settings.attributes; 55 } 56 }); 57 58 //parallax options 59 if (typeof sectionData.qodef_parallax_type !== 'undefined') { 60 settings['enable_parallax'] = sectionData.qodef_parallax_type; 61 } 62 63 if (typeof sectionData.qodef_parallax_image !== 'undefined' && sectionData.qodef_parallax_image['url']) { 64 settings['parallax_image_url'] = sectionData.qodef_parallax_image['url']; 65 } 66 67 //offset options 68 if (typeof sectionData.qodef_offset_type !== 'undefined') { 69 settings['enable_offset'] = sectionData.qodef_offset_type; 70 } 71 72 if (typeof sectionData.qodef_offset_image !== 'undefined' && sectionData.qodef_offset_image['url']) { 73 settings['offset_image_url'] = sectionData.qodef_offset_image['url']; 74 } 75 76 if (typeof sectionData.qodef_offset_top !== 'undefined') { 77 settings['offset_top'] = sectionData.qodef_offset_top; 78 } 79 80 if (typeof sectionData.qodef_offset_left !== 'undefined') { 81 settings['offset_left'] = sectionData.qodef_offset_left; 82 } 83 84 //generate output backend 85 if (typeof $target !== 'undefined') { 86 elementorSection.generateOutput($target, settings); 87 } 88 } else { 89 90 // generate options when in frontend using global js variable 91 var sectionHandlerData = qodefElementorGlobal.vars.elementorSectionHandler; 92 93 $.each(sectionHandlerData, function (index, properties) { 94 95 properties.forEach(function (property) { 96 97 if (typeof property['parallax_type'] !== 'undefined' && property['parallax_type'] === 'parallax') { 98 99 $target = $('[data-id="' + index + '"]'); 100 settings['parallax_type'] = property['parallax_type']; 101 settings['parallax_image_url'] = property['parallax_image']['url']; 102 103 if (typeof settings['parallax_image_url'] !== 'undefined') { 104 settings['enable_parallax'] = 'parallax'; 105 } 106 } 107 108 if (typeof property['offset_type'] !== 'undefined' && property['offset_type'] === 'offset') { 109 110 $target = $('[data-id="' + index + '"]'); 111 settings['offset_type'] = property['offset_type']; 112 settings['offset_image_url'] = property['offset_image']['url']; 113 settings['offset_top'] = property['offset_top']; 114 settings['offset_left'] = property['offset_left']; 115 116 if (typeof settings['offset_image_url'] !== 'undefined') { 117 settings['enable_offset'] = 'offset'; 118 } 119 } 120 121 //generate output frontend 122 if (typeof $target !== 'undefined') { 123 elementorSection.generateOutput($target, settings); 124 125 settings = []; 126 } 127 }); 128 }); 129 } 130 }, 131 generateOutput: function ($target, settings) { 132 133 if (typeof settings['enable_parallax'] !== 'undefined' && settings['enable_parallax'] === 'parallax' && typeof settings['parallax_image_url'] !== 'undefined') { 134 135 $('.qodef-parallax-row-holder', $target).remove(); 136 $target.removeClass('qodef-parallax qodef--parallax-row'); 137 138 var $layout = null; 139 140 $target.addClass('qodef-parallax qodef--parallax-row'); 141
142 $layout = $('<div class="qodef-parallax-row-holder"><div class="qodef-parallax-img-holder"><div class="qodef-parallax-img-wrapper"><img class="qodef-parallax-img" src="' + settings['parallax_image_url'] + '" alt="Parallax Image"></div></div></div>').prependTo($target); 143 144 // wait for image src to be loaded 145 var newImg = new Image; 146 newImg.onload = function () { 147 $target.find('img.qodef-parallax-img').attr('src', this.src); 148 qodefCore.qodefParallaxBackground.init(); 149 }; 150 newImg.src = settings['parallax_image_url']; 151 } 152 153 if (typeof settings['enable_offset'] !== 'undefined' && settings['enable_offset'] === 'offset' && typeof settings['offset_image_url'] !== 'undefined') { 154 155 $('.qodef-offset-image-holder', $target).remove(); 156 $target.removeClass('qodef-offset-image'); 157 158 var $layout = null; 159 160 $target.addClass('qodef-offset-image'); 161 162 $layout = $('<div class="qodef-offset-image-holder" style="position: absolute; z-index: 5; top:' + settings['offset_top'] + '; left:' + settings['offset_left'] + '"><div class="qodef-offset-image-wrapper"><img src="' + settings['offset_image_url'] + '" alt="Offset Image"></div></div>').prependTo($target); 163 } 164 } 165 }; 166 167})(jQuery);
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.