1var ecblib = ecblib || {}; 2ecblib.customize = ecblib.customize || {}; 3ecblib.customize.searchform = ecblib.customize.searchform || {}; 4 5jQuery(document).ready(function () { 6 var _searchform = ecblib.customize.searchform; 7 8 var category = getParam('category'); 9 if (category != null){ 10 category.split(",").forEach( function(value){ 11 var element = jQuery("#category_" + value); 12 if (element.length != 0){ 13 element.prop('checked', true); 14 } 15 }); 16 } else { 17 var category_all = jQuery("#category_"); 18 if (category_all != null){ 19 category_all.prop('checked', true); 20 } 21 } 22 23 var $btn_getsize = jQuery(".js-getsize"); 24 $btn_getsize.off("click"); 25 $btn_getsize.on("click", function (e) { 26 setSize(); 27 }); 28 29 if (category != null){ 30 setSize(getParam('size')); 31 } else { 32 jQuery(".block-search-param--size-title").addClass("hidden"); 33 jQuery(".block-search-param--size").addClass("hidden"); 34 } 35 36 jQuery(".block-search-param--reset,.block-filter--filter-param--search-button--reset").on("click", function(){ 37 setSize(); 38 }); 39 40}); 41 42function getParam(name, url) { 43 if (!url) url = window.location.href; 44 values = []; 45 name = name.replace(/[\[\]]/g, "\\$&"); 46 var regex = RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)", "g"); 47 var i = 0; 48 while ((results = regex.exec(url)) !== null){ 49 if (!results[2]) { continue; }; 50 values.push(results[2].replace(/\+/g, " ")); 51 i = i + 1; 52 if (i >= 100) { break; } 53 } 54 if (values.length == 0){return '';} 55 return decodeURIComponent(values.join(',')); 56} 57 58 59function setSize(size_params){ 60 var category_array = []; 61 jQuery("input[name='category']:checked").each(function(index, element){ 62 if (element.value != ''){ 63 category_array.push(element.value); 64 } 65 }); 66 var brand_array = []; 67 jQuery("input[name='brand']:checked").each(function(index, element){ 68 brand_array.push(element.value); 69 }); 70 var size_param_array = []; 71 if (size_params != null && size_params.length > 0 ){ 72 jQuery.each(size_params.split(','), function(index, val){ 73 size_param_array.push(val); 74 }); 75 } 76 77 if (category_array.length == 0){ 78 jQuery(".block-search-param--size-title").addClass("hidden"); 79 jQuery(".block-search-param--size").addClass("hidden"); 80 } 81 else{ 82 jQuery(".block-search-param--size-title").removeClass("hidden"); 83 jQuery(".block-search-param--size").removeClass("hidden"); 84 } 85 86 jQuery.ajax({ 87 async: true, 88 type: "POST", 89 url: ecblib.sys.pathroot + "/js/getsizeajax.aspx", 90 data: { 91 "category": category_array.join(','), 92 "brand": brand_array.join(',') 93 }, 94 cache: false, 95 ifModified: false, 96 dataType: "json", 97 success: function (result) { 98 var size_form = jQuery(".block-search-param--size-list"); 99 size_form.html(''); 100 if(result.result){ 101 jQuery.each(result.sizelist, function(i, e){ 102 size_form.append(createElement(e.size, contains(size_param_array, e.size))); 103 }); 104 jQuery(".size_result_").html(''); 105 } 106 else{ 107 jQuery(".size_result_").html(result.message); 108 } 109 }, 110 error: function (xhr, status, thrown) { 111 jQuery(".size_result_").html(result.message); 112 alert(ecblib.msg.size.FAILURE); 113 return false; 114 } 115 }); 116 117 return true; 118 119} 120 121function createElement(value, isChecked){ 122 var element_li = document.createElement('li'); 123 var element_input = document.createElement('input'); 124 var element_label = document.createElement('label'); 125 126 element_input.setAttribute('type', 'checkbox'); 127 element_input.setAttribute('name', 'size'); 128 element_input.setAttribute('value', value); 129 element_input.setAttribute('id', 'size_' + value); 130 element_label.setAttribute('for', 'size_' + value); 131 if (isChecked){ 132 element_input.setAttribute('checked', 'checked'); 133 } 134 element_label.innerText = value; 135 136 element_li.appendChild(element_input); 137 element_li.appendChild(element_label); 138 139 return element_li; 140} 141 142function contains(array, value){ 143 return jQuery.inArray(value, array) >= 0; 144} 145
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.