1/* 2You can use this file with your scripts. 3It will not be overwritten when you upgrade solution. 4*/ 5 6 7$(document).ready(function (){ 8 9 10 // console.log(arMaxOptions['THEME']); 11 12 13 /** ÐодÑказки Ñ ÑеÑвиÑа dadata на ÑÑÑаниÑе ÑегиÑÑÑаÑии start **/ 14 if ($('.registraion-page.pk-page').length) { 15 16 //подÑказки пÑи вводе имени 17 initFio($("#input_SECOND_NAME"), $("#input_NAME"), $("#input_LAST_NAME")); 18 //подÑказки пÑи вводе email 19 initEmail($("#input_EMAIL")); 20 21 22 } 23 /** ÐодÑказки Ñ ÑеÑвиÑа dadata на ÑÑÑаниÑе ÑегиÑÑÑаÑии end **/ 24 25 26 /** ÐодÑказки Ñ ÑеÑвиÑа dadata на ÑÑÑаниÑе оÑоÑмление заказа start **/ 27 if (arAsproOptions["PAGES"]["ORDER_PAGE"]) { 28 29 BX.addCustomEvent("onAjaxSuccess", function (data) { 30 if (typeof data === "object" && data !== null) { 31 //console.log(BX.Sale.OrderAjaxComponent.changeProfile()); 32 //полÑÑаем вÑе Ð¿Ð¾Ð»Ñ Ð¸Ð· ÑвойÑÑва заказа 33 //$('input[name="ORDER_PROP_49"]').prop("readonly", true); 34 35 36 37 for (var i = 0; i < BX.Sale.OrderAjaxComponent.result.ORDER_PROP.properties.length; ++i) { 38 39 var arProperty = BX.Sale.OrderAjaxComponent.result.ORDER_PROP.properties[i]; 40 41 42 //делаем ÑÑанÑÐ»ÐµÐ¹Ñ Ð¸Ð¼ÐµÐ½Ð¸ ÑвойÑÑва 43 var trans = BX.translit(arProperty.NAME, { 44 'change_case': 'L', 45 }) 46 47 //добавлÑем клаÑÑ Ð² каждÑй input ÑÑÐ¾Ð±Ñ Ð»ÑÑÑе индиÑиÑиÑоваÑÑ Ð´Ð»Ñ Ð»Ð¾Ð³Ð¸ÐºÐµ 48 BX.addClass('soa-property-'+ arProperty.ID, trans+'_custom'); 49 50 51 //console.log(arProperty); 52 /* 53 if(arProperty.CODE === 'COMPANY' || arProperty.CODE === 'COMPANY_ADR' || arProperty.CODE === 'KPP') { 54 $('.bx-soa-customer-field[data-property-id-row="'+ arProperty.ID +'"]').hide(); 55 } 56 */ 57 58 //еÑли в ÑвойÑÑве заказа еÑÑÑ Ð°Ð´ÑÐµÑ Ð´Ð¾ÑÑавки 59 if(arProperty.CODE === 'ADDRESS'){ 60 initAddress($('textarea[name="ORDER_PROP_'+ arProperty.ID +'"]')); 61 } 62 63 //еÑли в ÑвойÑÑве заказа еÑÑÑ ÐµÐ¼Ð°Ð¹Ð» 64 if(arProperty.CODE === 'EMAIL'){ 65 initEmail($('input[name="ORDER_PROP_'+ arProperty.ID +'"]')); 66 } 67 68 //еÑли в ÑвойÑÑве заказа еÑÑÑ Ð¿Ð¾Ð»Ðµ ÐÐÐ 69 if(arProperty.CODE === 'INN'){ 70 //console.log('ÐÑÑÑ Ð¿Ð¾Ð»Ðµ ÐÐÐ'); 71 72 //Ñо беÑем ÑникалÑнÑй ID и пÑоÑÑавлÑем Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼ Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка 73 $('input[name="ORDER_PROP_'+ arProperty.ID +'"]').suggestions({ 74 // поиÑк по Ð½Ð°Ð¸Ð¼ÐµÐ½Ð¾Ð²Ð°Ð½Ð¸Ñ ÐºÐ¾Ð¼Ð¿Ð°Ð½Ð¸Ð¸ 75 token: 'e975ffac90337bc2c3155a36ea57aabc12b35648', 76 type: 'PARTY', 77 scrollOnFocus: "false", 78 mobileWidth: 360, 79 // вÑзÑваеÑÑÑ, когда полÑзоваÑÐµÐ»Ñ Ð²ÑбиÑÐ°ÐµÑ Ð¾Ð´Ð½Ñ Ð¸Ð· подÑказок 80 onSelect: function(suggestion) { 81 82 console.log(suggestion); 83 84 // заполнем поле ÐÐÐ 85 if('value' in suggestion) 86 $(this).val(suggestion.data.inn); 87 88 89 //console.log(suggestion.data.fio.surname) 90 91 92 //название компании 93 $('input.nazvanie_kompanii_custom').val(suggestion.data.name.short_with_opf); 94 95 // заполнем поле ÑÑ.адÑÐµÑ 96 //console.log(suggestion.data.address.value); 97 $('textarea.yuridicheskiy_adres_custom').val(suggestion.data.address.value); 98 99 // заполнем поле Ðен.диÑекÑÐ¾Ñ 100 if (suggestion.data.type === 'LEGAL') { 101 // ÑÑидиÑеÑкое лиÑо 102 /* еÑли в бÑдÑÑем понадобиÑÑÑÑ Ð¾Ð¿ÑеделÑÑÑ Ð´Ð°Ð½Ð½Ñе ФÐÐ 103 if('name' in suggestion.data && suggestion.data.management.name){ 104 //$('input[name="ORDER_PROP_51"]').val(suggestion.data.management.name); 105 106 //Ñазбиваем ФÐРна маÑÑив 107 var fullName = suggestion.data.management.name.split(' ') 108 // console.log(suggestion.data.management.name.split(' ')); 109 110 //ÑÐ°Ð¼Ð¸Ð»Ð¸Ñ 111 $("input.familiya_custom").val(fullName[0]); 112 113 //Ð¸Ð¼Ñ 114 $("input.imya_custom").val(fullName[1]) 115 116 //оÑÑеÑÑво 117 $("input.otchestvo_custom").val(fullName[2]) 118 } 119 120 */ 121 122 //ÐÐÐ 123 if(/[^0-9]/.test(suggestion.data.kpp) === false) { 124 $('input[name="ORDER_PROP_67"]').val(suggestion.data.kpp); 125 } 126 } 127 /* еÑли в бÑдÑÑем понадобиÑÑÑÑ Ð¾Ð¿ÑеделÑÑÑ Ð´Ð°Ð½Ð½Ñе ФÐÐ 128 if (suggestion.data.type === 'INDIVIDUAL') { 129 130 131 //if('data' in suggestion.data.management.name) { 132 // индивидÑалÑнÑй пÑедÑинимеÑÐµÐ»Ñ 133 //$('input[name="ORDER_PROP_51"]').val(suggestion.data.name.full); 134 //} 135 136 //ÑÐ°Ð¼Ð¸Ð»Ð¸Ñ 137 //if('surname' in suggestion.data && suggestion.data.fio.surname){ 138 $("input.familiya_custom").val(suggestion.data.fio.surname); 139 //} 140 141 //Ð¸Ð¼Ñ 142 if('name' in suggestion.data && suggestion.data.fio.name){ 143 $("input.imya_custom").val(suggestion.data.fio.name) 144 } 145 146 //оÑÑеÑÑво 147 //if('patronymic' in suggestion.data && suggestion.data.fio.patronymic){ 148 $("input.otchestvo_custom").val(suggestion.data.fio.patronymic) 149 //} 150 } 151 */ 152 153 } 154 }); 155 } 156 initFio($("input.familiya_custom"), $("input.imya_custom"), $("input.otchestvo_custom")); 157 158 } 159 } 160 }); 161 162 //initFio($("input.familiya_custom"), $("input.imya_custom"), $("input.otchestvo_custom")); 163 //initFio($('#soa-property-64'), $('#soa-property-65'), $('#soa-property-66')); 164 165 //initEmail($('#soa-property-52')); 166 //initAddress($('#soa-property-57')) 167 168 169 /* 170 function SaleProperties(){ 171 172 */ 173 for (var i = 0; i < BX.Sale.OrderAjaxComponent.result.ORDER_PROP.properties.length; ++i) { 174 var arProperty = BX.Sale.OrderAjaxComponent.result.ORDER_PROP.properties[i]; 175 176 //console.log(arProperty) 177 //делаем ÑÑанÑÐ»ÐµÐ¹Ñ Ð¸Ð¼ÐµÐ½Ð¸ ÑвойÑÑва 178 var trans = BX.translit(arProperty.NAME, { 179 'change_case': 'L', 180 }) 181 182 //добавлÑем клаÑÑ Ð² каждÑй input ÑÑÐ¾Ð±Ñ Ð»ÑÑÑе индиÑиÑиÑоваÑÑ Ð´Ð»Ñ Ð»Ð¾Ð³Ð¸ÐºÐµ 183 BX.addClass('soa-property-'+ arProperty.ID, trans+'_custom'); 184 185 186 187 /* 188 //Ð¤Ð°Ð¼Ð¸Ð»Ð¸Ñ 189 if (arProperty.CODE === 'CONTACT_LAST_NAME'){ 190 lastName = BX('soa-property-'+arProperty.ID); 191 } 192 193 //ÐÐ¼Ñ 194 if(arProperty.CODE === 'CONTACT_NAME'){ 195 name = BX('soa-property-'+arProperty.ID); 196 } 197 198 //ÐÑÑеÑÑво 199 if(arProperty.CODE === 'CONTACT_SECOND_NAME'){ 200 secondName = BX('soa-property-'+arProperty.ID); 201 } 202 203 204 if (arProperty.CODE === 'CONTACT_LAST_NAME' || arProperty.CODE === 'CONTACT_NAME' || arProperty.CODE === 'CONTACT_SECOND_NAME') { 205 initFio(lastName, name, secondName); 206 } 207 */ 208 209 //еÑли в ÑвойÑÑве заказа еÑÑÑ Ð°Ð´ÑÐµÑ Ð´Ð¾ÑÑавки 210 if(arProperty.CODE === 'ADDRESS'){ 211 initAddress($('textarea[name="ORDER_PROP_'+ arProperty.ID +'"]')); 212 } 213 214 //еÑли в ÑвойÑÑве заказа еÑÑÑ ÐµÐ¼Ð°Ð¹Ð» 215 if(arProperty.CODE === 'EMAIL'){ 216 initEmail($('input[name="ORDER_PROP_'+ arProperty.ID +'"]')); 217 } 218 219 if(arProperty.CODE === 'INN'){ 220 $('input[name="ORDER_PROP_'+ arProperty.ID +'"]').suggestions({
221 // поиÑк по Ð½Ð°Ð¸Ð¼ÐµÐ½Ð¾Ð²Ð°Ð½Ð¸Ñ ÐºÐ¾Ð¼Ð¿Ð°Ð½Ð¸Ð¸ 222 token: 'e975ffac90337bc2c3155a36ea57aabc12b35648', 223 type: 'PARTY', 224 scrollOnFocus: "false", 225 mobileWidth: 360, 226 // вÑзÑваеÑÑÑ, когда полÑзоваÑÐµÐ»Ñ Ð²ÑбиÑÐ°ÐµÑ Ð¾Ð´Ð½Ñ Ð¸Ð· подÑказок 227 onSelect: function(suggestion) { 228 229 //console.log(suggestion.data.fio.name); 230 231 // заполнем поле ÐÐÐ 232 if('value' in suggestion) 233 $(this).val(suggestion.data.inn); 234 //console.log(suggestion.data.fio.surname) 235 236 237 //название компании 238 $('input.nazvanie_kompanii_custom').val(suggestion.data.name.short_with_opf); 239 240 // заполнем поле ÑÑ.адÑÐµÑ 241 //console.log(suggestion.data.address.value); 242 $('input.yuridicheskiy_adres_custom').val(suggestion.data.address.value); 243 244 // заполнем поле Ðен.диÑекÑÐ¾Ñ 245 if (suggestion.data.type === 'LEGAL') { 246 // ÑÑидиÑеÑкое лиÑо 247 /* еÑли в бÑдÑÑем понадобиÑÑÑÑ Ð¾Ð¿ÑеделÑÑÑ Ð´Ð°Ð½Ð½Ñе ФÐÐ 248 if('name' in suggestion.data && suggestion.data.management.name){ 249 //$('input.yuridicheskiy_adres_custom').val(suggestion.data.management.name); 250 251 //Ñазбиваем ФÐРна маÑÑив 252 var fullName = suggestion.data.management.name.split(' ') 253 // console.log(suggestion.data.management.name.split(' ')); 254 255 //ÑÐ°Ð¼Ð¸Ð»Ð¸Ñ 256 $("input.familiya_custom").val(fullName[0]); 257 258 //Ð¸Ð¼Ñ 259 $("input.imya_custom").val(fullName[1]) 260 261 //оÑÑеÑÑво 262 $("input.otchestvo_custom").val(fullName[2]) 263 } 264 */ 265 266 //ÐÐÐ 267 268 if(/[^0-9]/.test(suggestion.data.kpp) === false){ 269 $('input.kpp_custom').val(suggestion.data.kpp); 270 } 271 272 } 273 /* еÑли в бÑдÑÑем понадобиÑÑÑÑ Ð¾Ð¿ÑеделÑÑÑ Ð´Ð°Ð½Ð½Ñе ФÐÐ 274 if (suggestion.data.type === 'INDIVIDUAL') { 275 // индивидÑалÑнÑй пÑедÑинимеÑÐµÐ»Ñ 276 //$('input.yuridicheskiy_adres_custom').val(suggestion.data.name.full); 277 278 //ÑÐ°Ð¼Ð¸Ð»Ð¸Ñ 279 //if('surname' in suggestion.data && suggestion.data.fio.surname){ 280 $("input.familiya_custom").val(suggestion.data.fio.surname); 281 //} 282 283 //Ð¸Ð¼Ñ 284 if('name' in suggestion.data && suggestion.data.fio.name){ 285 $("input.imya_custom").val(suggestion.data.fio.name) 286 } 287 288 //оÑÑеÑÑво 289 //if('patronymic' in suggestion.data && suggestion.data.fio.patronymic){ 290 $("input.otchestvo_custom").val(suggestion.data.fio.patronymic) 291 //} 292 } 293 294 */ 295 } 296 }); 297 } 298 299 initFio($("input.familiya_custom"), $("input.imya_custom"), $("input.otchestvo_custom")); 300 301 } 302 303 //} 304 305 306 } 307 308 309 310 //email 311 function initEmail($email){ 312 if($email.length) 313 { 314 $email.suggestions({ 315 token: "e975ffac90337bc2c3155a36ea57aabc12b35648", 316 type: "EMAIL", 317 scrollOnFocus: "false", 318 mobileWidth: "100", 319 onSelect: function(suggestion){ 320 $email.trigger('change'); 321 } 322 }); 323 } 324 } 325 326 327 //addr 328 function initAddress($addr){ 329 if($addr.length) 330 { 331 $addr.suggestions({ 332 token: "e975ffac90337bc2c3155a36ea57aabc12b35648", 333 type: "ADDRESS", 334 scrollOnFocus: "false", 335 mobileWidth: 360, 336 onSelect: function(suggestion){ 337 $addr.trigger('change'); 338 339 //console.log(suggestion); 340 341 if(typeof suggestion !=="undefined" && ('data' in suggestion)) 342 { 343 //set index 344 if('postal_code' in suggestion.data && suggestion.data.postal_code) 345 $('input.index').val(suggestion.data.postal_code); 346 347 //set country 348 if('country' in suggestion.data && suggestion.data.country) 349 $('input.country').val(suggestion.data.country); 350 351 //set city 352 if('city' in suggestion.data && suggestion.data.city) 353 { 354 $('input.city').val(suggestion.data.city); 355 $addr.val(suggestion.value.replace()) 356 } 357 //format addr 358 if('city_with_type' in suggestion.data && suggestion.data.city_with_type) 359 { 360 $addr.val(suggestion.value.replace(suggestion.data.city_with_type + ', ', '')) 361 } 362 } 363 }, 364 onSearchStart: function(params) { 365 var $el = $(this); 366 params.query = params.query.replace(/_/g, ''); 367 }, 368 }); 369 } 370 } 371 372 373 // ÐниÑиализиÑÑÐµÑ Ð¿Ð¾Ð´Ñказки по ФÐРна Ñказанном ÑлеменÑе 374 function initFio($surname, $name, $patronymic) { 375 if($surname.length || $name.length || $patronymic.length ) 376 { 377 var self = {}; 378 self.$surname = $surname; 379 self.$name = $name; 380 self.$patronymic = $patronymic; 381 var fioParts = ["SURNAME", "NAME", "PATRONYMIC"]; 382 $.each([$surname, $name, $patronymic], function(index, $el) { 383 var sgt = $el.suggestions({ 384 token: "e975ffac90337bc2c3155a36ea57aabc12b35648", 385 type: "NAME", 386 // triggerSelectOnSpace: false, 387 hint: "", 388 // noCache: true, 389 params: { 390 // ÐºÐ°Ð¶Ð´Ð¾Ð¼Ñ Ð¿Ð¾Ð»Ñ --- ÑооÑвеÑÑÑвÑÑÑÐ°Ñ Ð¿Ð¾Ð´Ñказка 391 parts: [fioParts[index]] 392 }, 393 onSearchStart: function(params) { 394 // еÑли пол извеÑÑен на оÑновании дÑÑÐ³Ð¸Ñ Ð¿Ð¾Ð»ÐµÐ¹, 395 // иÑполÑзÑем его 396 var $el = $(this); 397 params.gender = isGenderKnown.call(self, $el) ? self.gender : "UNKNOWN"; 398 }, 399 onSelect: function(suggestion) { 400 // опÑеделÑем пол по вÑбÑанной подÑказке 401 self.gender = suggestion.data.gender; 402 } 403 }); 404 }); 405 } 406 }; 407 408 // ÐÑовеÑÑеÑ, извеÑÑен ли пол на даннÑй Ð¼Ð¾Ð¼ÐµÐ½Ñ 409 410 function isGenderKnown($el) { 411 var self = this; 412 var surname = self.$surname.val(), 413 name = self.$name.val(), 414 patronymic = self.$patronymic.val(); 415 if (($el.attr('id') == self.$surname.attr('id') && !name && !patronymic) || 416 ($el.attr('id') == self.$name.attr('id') && !surname && !patronymic) || 417 ($el.attr('id') == self.$patronymic.attr('id') && !surname && !name)) { 418 return false;
419 } else { 420 return true; 421 } 422 } 423 //initAddress($("input.address")); 424 425 //initAddress($("input.address")); 426 427 /** ÐодÑказки Ñ ÑеÑвиÑа dadata на ÑÑÑаниÑе оÑоÑмление заказа end **/ 428});
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.