1$(function() { 2 /** 3 * ããã¥ã¡ã³ãã®èªã¿è¾¼ã¿ãå®äºããã¨ãã«å®è¡ãããå¦ç 4 */ 5 $(document).ready(function() { 6 //////////////////////////////////////////////// 7 // DOCUMENT åæåå¦ç 8 //////////////////////////////////////////////// 9 10 // urlãåå¾ 11 const url = new URL(window.location.href); 12 // URLã®GETãã©ã¡ã¼ã¿ãåå¾ 13 const urlParams = url.searchParams; 14 15 /** 16 * GETãã©ã¡ã¼ã¿ã追å ããããã®å¦ç 17 * @param {selector} form 18 * @param {string} name 19 * @param {string|int} value 20 */ 21 const addParam = (form, name, value) => { 22 if (value != "" && value != null) { 23 $('<input>').attr({ 24 type: 'hidden', 25 name: name, 26 value: value 27 }).appendTo(form); 28 } 29 } 30 31 /** 32 * é åå½¢å¼ã®GETãã©ã¡ã¼ã¿ããªãã¸ã§ã¯ãã«å¤æãã 33 * ãã¼æå®ã®GETãã©ã¡ã¼ã¿ã«ãå¯¾å¿ 34 * 35 * @returns {Object} GETãã©ã¡ã¼ã¿ããªãã¸ã§ã¯ãã«å¤æãããã® 36 */ 37 const getArrayParam = () => { 38 const result = {}; 39 urlParams.forEach((val, key) => { 40 if (key === 'category[]' || key === 'sale_type[]') { 41 result[key] = Array.from(urlParams.getAll(key)); 42 } else if (matches = key.match(/(category|sale_type)\[(\d*)\]/)) { 43 const inKey = matches[1] + '[]'; 44 if (!result[inKey]) { 45 result[inKey] = []; 46 } 47 // ãã¼æå®ã«ããããããé æ¬¡ã«å¤ã追å ãã¦ãã 48 // ä¾: category[0]=1&category[1]=2&category[2]=3 => category[]=[1, 2, 3] 49 result[inKey].push(urlParams.get(key)); 50 } else { 51 result[key] = urlParams.get(key); 52 } 53 }) 54 55 return result; 56 } 57 58 const arrayParam = getArrayParam(); 59 // GETãã©ã¡ã¼ã¿ããã«ãã´ãªã®å¤ãåå¾ 60 const categoriesParam = arrayParam['category[]']; 61 // GETãã©ã¡ã¼ã¿ããåå種å¥ã®å¤ãåå¾ 62 const saleTypesParam = arrayParam['sale_type[]']; 63 // GETãã©ã¡ã¼ã¿ããããªã¼ã¯ã¼ãã®å¤ãåå¾ 64 const keywordParam = arrayParam['keyword']; 65 66 /** 67 * ã²ãããã©ã¡ã¼ã¿ã®keywordã®å¤ãããå ´åã 68 * ããªã¼ã¯ã¼ãæ¤ç´¢ã®å ¥åæ¬ã«keywordã®å¤ãå ¥ãã 69 * keywordã®å¤ã100å以ä¸ã®å ´åãå é ãã100åã®ã¿ãå ¥ãã 70 */ 71 if (keywordParam != null && keywordParam != "") { 72 var keyword = keywordParam; 73 if(keywordParam.length > keywordMaxLength) { 74 keyword = keyword.slice(0, keywordMaxLength); 75 } 76 $('.bl_keywordSearch_input').val(keyword); 77 } 78
79 //////////////////////////////////////////////// 80 // DOCUMENT å種ã¤ãã³ãããã¤ã³ã 81 //////////////////////////////////////////////// 82 83 // ãµã¼ãã¹ã¡ãã¥ã¼ãã¿ã³ã¯ãã³ã³ãµã«ãã£ã³ã°ã¡ãã¥ã¼ã¨ãã¸ã¿ã«ã½ãªã¥ã¼ã·ã§ã³ã®äºã¤ã®ãã©ã¡ã¼ã¿ãåæã«å¤æ´ãã 84 const serviceMenuBtn = $('input.js_checkbox.digital_solution[type="checkbox"][name="sale_type[]"]').get(0); 85 serviceMenuBtn.addEventListener('change', (event) => { 86 // ã³ã³ãµã«ãã£ã³ã°ã¡ãã¥ã¼ã®ãã§ãã¯ããã¯ã¹ãåæ 87 $('input.hidden.consulting_menu[type="checkbox"][name="sale_type[]"]').prop('checked', $(event.target).prop('checked')); 88 }); 89 90 // ã«ãã´ãªé¸æã¢ã¼ãã«ã§å ¨é¸æãã§ãã¯ããã¯ã¹ã夿´ãããã¨ãã®è¿½å å¦ç 91 $('#searchModal_02').find('.js_selectAll').on('change', function() { 92 $('input.hidden.consulting_menu[type="checkbox"][name="sale_type[]"]').prop('checked', $(this).prop('checked')); 93 }); 94 95 /** 96 * æ¡ä»¶æ¤ç´¢ã®ã¢ã¼ãã«ã®åæåå¦ç 97 */ 98 $('.js_checkboxContainer').each(function(containerIndex) { 99 // ã¢ã¼ãã«IDã®åå¾ 100 const modalId = this.closest('.js_searchModal').id; 101 // ãã©ã¡ã¼ã¿åå¾ 102 let param; 103 if (modalId === 'searchModal_01') { 104 param = categoriesParam; 105 } else if (modalId === 'searchModal_02') { 106 param = saleTypesParam; 107 // ãµã¼ãã¹ã¡ãã¥ã¼ã®ãã¡ãã©ã¡ããã®ã¿ã®å ´åã両æ¹ããã§ãã¯ãã 108 if (param && (param.indexOf('2') !== -1 && param.indexOf('1') == -1) ) { 109 param.push('1'); 110 } 111 if (param && (param.indexOf('2') == -1 && param.indexOf('1') !== -1) ) { 112 param.push('2'); 113 } 114 } 115 // ãã©ã¡ã¼ã¿ããªãå ´åã¯å¦çãã¹ããã 116 if (param == undefined) { 117 // continue 118 return true; 119 } 120 121 // é表示ã«ãã¦ããã³ã³ãµã«ãã£ã³ã°ã¡ãã¥ã¼ã®ãã§ãã¯ããã¯ã¹ 122 const $consultingMenuInput = $('input.hidden.consulting_menu[type="checkbox"][name="sale_type[]"]'); 123 124 // ãã§ãã¯æ¸ã¿ã®ãã§ãã¯ããã¯ã¹åãä¿æãã夿° 125 var dataTxt = []; 126 // ãã©ã¡ã¼ã¿ã«ä¸è´ãããã§ãã¯ããã¯ã¹ããã§ãã¯æ¸ã¿ã«ãã 127 this.querySelectorAll('.js_checkbox').forEach((checkbox) => { 128 const value = checkbox.value; 129 if (param.indexOf(value) !== -1) { 130 // 1. ã¢ã¼ãã«ãã³ã³ãã³ã鏿 131 // 2. å¦çä¸ã®inputè¦ç´ ã® value ããã¸ã¿ã«ã½ãªã¥ã¼ã·ã§ã³ã§ãã 132 // 3. ã³ã³ãµã«ãã£ã³ã°ã¡ãã¥ã¼ã®ãã§ãã¯ããã¯ã¹ãåå¨ãã 133 if (modalId === 'searchModal_02' && value === '2' && $consultingMenuInput) { 134 // ã³ã³ãµã«ãã£ã³ã°ã¡ãã¥ã¼ã®ãã§ãã¯ããã¯ã¹ãåæãã 135 $consultingMenuInput.prop('checked', true); 136 } 137 dataTxt.push(checkbox.nextElementSibling.textContent); 138 $(checkbox).prop('checked', true); 139 } 140 }); 141 /** 142 * 鏿ããã«ãã´ãªãããã¯åå種å¥ãï¼å以ä¸ã®å ´å 143 * ã¢ã¼ãã«ãéããã¿ã³ã®ã©ãã«ã夿´ãã 144 */ 145 if(dataTxt.length > 0) { 146 $($('.js_searchParams')[containerIndex]).text(dataTxt.join('ã')); 147 } 148 149 // ãã©ã¡ã¼ã¿ã«ä¸è´ãããã§ãã¯ããã¯ã¹ãå ¨ã¦ãã§ãã¯æ¸ã¿ã®å ´åãå ¨é¸æãã§ãã¯ããã¯ã¹ããã§ãã¯æ¸ã¿ã«ãã 150 const isAllChecked = this.querySelectorAll('.js_checkbox:not(:checked').length === 0; 151 var selectAll = $(this).find('.js_selectAll'); 152 selectAll.prop('checked', isAllChecked); 153 }); 154 155 // æ¡ä»¶æ¤ç´¢ã®æ±ºå®ãã¿ã³æ¼ä¸æã®å¦ç 156 $('#js_filterSearch_submit').on("click", function(event) { 157 event.preventDefault(); 158 var form = $('#js_filterSearch_form'); 159 // æ¡ä»¶æ¤ç´¢ã®å ´åãtabã®å¤ã¯1 160 addParam(form, 'tab', 1); 161 form.submit(); 162 }); 163 164 // ããªã¼ã¯ã¼ãæ¤ç´¢ã®éä¿¡æã®å¦ç 165 $('.bl_keywordSearch').on("submit", function() { 166 var form = $(this); 167 // ããªã¼ã¯ã¼ãæ¤ç´¢ã®å ´åãtabã®å¤ã¯2 168 addParam(form, 'tab', 2); 169 }); 170 171 /** 172 * ä¸¦ã³æ¿ãã®ãã¿ã³æ¼ä¸æã®å¦ç 173 */ 174 $('.js_order_btn').each(function() { 175 $(this).on("click", function() { 176 // data-valueã®å¤ãåå¾ 177 var order = $(this).data('value'); 178 var orderKey = 'order'; 179 // ç¾å¨ã®urlã®ãã©ã¡ã¼ã¿ã«orderããªããã°è¿½å 180 // ããã°å¤ã䏿¸ã 181 if(!url.searchParams.get(orderKey)) { 182 url.searchParams.append(orderKey, order); 183 } else { 184 url.searchParams.set(orderKey, order); 185 } 186 // ç¾å¨ã®urlã®ãã©ã¡ã¼ã¿ããpageãåé¤ 187 var pageKey = 'page'; 188 if(url.searchParams.get(pageKey)) { 189 url.searchParams.delete(pageKey); 190 } 191 // ä¿®æ£ããurlå ã¸é·ç§» 192 location.href = url; 193 }); 194 }); 195 196 /** 197 * ãã¼ã¸ã®ãã¿ã³æ¼ä¸æã®å¦ç 198 */ 199 $('.js_page_btn').each(function() { 200 $(this).on("click", function() { 201 // data-valueã®å¤ãåå¾ 202 var page = $(this).data('value'); 203 var pageKey = 'page'; 204 url.searchParams.set(pageKey, page); 205 // ä¿®æ£ããurlå ã¸é·ç§» 206 location.href = url; 207 }); 208 }); 209 210 /** 211 * ãã«ãã¦ã³ã®é åå¤ãã¯ãªãã¯ããã¨ã 212 * ãã«ãã¦ã³ãéãã 213 */ 214 $(document).click(function(e) { 215 if(!$(e.target).closest('.el_pullDownBox').length) { 216 $('.el_pullDownBox').prop('open', false); 217 } 218 }); 219 220 /** 221 * ã¢ã¼ãã«ã®é åå¤ãã¯ãªãã¯ããã¨ã 222 * Ããã¿ã³ã決å®ãã¿ã³æ¼ä¸æã¨åæ§ã®å¦çãè¡ã 223 */ 224 $(document).click(function(e) { 225 // ã«ãã´ãªé¸æã¢ã¼ãã« 226 const categoryModal = document.getElementById('searchModal_01'); 227 const contentsModal = document.getElementById('searchModal_02'); 228 229 if(categoryModal.classList.contains('is_open') || contentsModal.classList.contains('is_open')) { 230 if(!e.target.closest('.bl_searchModalCont_container') && 231 !e.target.closest('.bl_filterSearch_conditionBtn') && 232 !e.target.closest('.bl_searchModalCont_submit') || 233 e.target.closest('.bl_searchModalCont_closeBtn') 234 ) { 235 if(categoryModal.classList.contains('is_open')){ 236 $('.category_submit').click(); 237 } else if(contentsModal.classList.contains('is_open')){ 238 $('.contents_submit').click(); 239 } 240 } 241 } 242 }) 243 244 $('.js_searchModal_open').hover( 245 function () { 246 // over 247 const searchParams = $(this).find('.js_searchParams'); 248 if(searchParams.get(0).offsetWidth < searchParams.get(0).scrollWidth) { 249 $(this).attr('title', searchParams.text()); 250 } 251 }, 252 function () { 253 // out 254 $(this).attr('title', ''); 255 } 256 ); 257 }); 258});
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.