1$(document).ready(function () { 2 // step page 3 var subname = $('#name-page').attr('subname'); 4 var active = $('ul.tab-nav .'+subname).addClass('active'); 5 var number = active.attr('number'); 6 if (subname) { 7 $('ul.tab-nav li a.has-link').addClass('hidden'); 8 for(var $i = 1; $i <= number; $i++){ 9 if($i == 1){ 10 $('.header.breadcrumbs p').text('à¸à¸£à¸§à¸à¸ªà¸à¸à¸ªà¸´à¸à¸à¹à¸²à¸à¸à¸à¸à¹à¸²à¸à¸à¹à¸à¸à¸à¸³à¸£à¸°'); 11 } 12 else if($i == 2){ 13 $('.header.breadcrumbs h1').text('à¸à¹à¸à¸¡à¸¹à¸¥à¸ªà¸³à¸«à¸£à¸±à¸à¸à¸±à¸à¸ªà¹à¸'); 14 $('.header.breadcrumbs p').text('à¸à¸£à¸§à¸à¸ªà¸à¸à¸ªà¸à¸²à¸à¸à¸µà¹à¸à¸±à¸à¸ªà¹à¸à¸ªà¸´à¸à¸à¹à¸²'); 15 } 16 else if($i == 3){ 17 $('.header.breadcrumbs h1').text('à¸à¸£à¸§à¸à¸ªà¸à¸à¸£à¸²à¸¢à¸à¸²à¸£à¸ªà¸´à¸à¸à¹à¸²à¹à¸¥à¸°à¸à¹à¸à¸¡à¸¹à¸¥à¸à¸±à¸à¸ªà¹à¸'); 18 $('.header.breadcrumbs p').text('à¸à¸£à¸§à¸à¸ªà¸à¸à¸£à¸²à¸¢à¸¥à¸°à¹à¸à¸µà¸¢à¸à¸ªà¸´à¸à¸à¹à¸² à¹à¸¥à¸°à¸à¸²à¸£à¸à¸±à¸à¸ªà¹à¸à¸à¹à¸à¸à¸¢à¸·à¸à¸¢à¸±à¸à¸à¸³à¸ªà¸±à¹à¸à¸à¸·à¹à¸'); 19 } 20 $('ul.tab-nav li[number='+$i+'] a.has-link').removeClass('hidden'); 21 $('ul.tab-nav li[number='+$i+'] a.no-link').addClass('hidden'); 22 } 23 } 24 25 $(document).on( "change", "input[name='amount[]']", function() { 26 var val = $(this).val(); 27 if(val < 1 || val > 20){ 28 if(val < 1 ){ 29 msg = 'à¸à¸£à¸¸à¸à¸²à¸£à¸°à¸à¸¸à¸à¸³à¸à¸§à¸à¹à¸«à¸¡à¹ à¸à¸³à¸à¸§à¸à¹à¸¡à¹à¸à¸¹à¸à¸à¹à¸à¸'; 30 $(this).val(1); 31 32 bootbox.alert({ 33 message: msg, 34 buttons: { 35 ok: { 36 label: '<i class="fa fa-fw fa-refresh"></i> Retry', 37 className: 'btn-warning' 38 } 39 } 40 }); 41 } 42 //else { 43 // msg = 'à¸à¸£à¸¸à¸à¸²à¸£à¸°à¸à¸¸à¸à¸³à¸à¸§à¸à¹à¸«à¸¡à¹ à¸à¸³à¸à¸§à¸à¸¡à¸²à¸à¹à¸à¸´à¸à¹à¸à¸ªà¸¹à¸à¸ªà¸¸à¸à¹à¸¡à¹à¹à¸à¸´à¸ 20 à¸à¹à¸à¸à¸´à¹à¸'; 44 // $(this).val(20); 45 // } 46 } 47 }); 48 $('.spinner').spinner({ 49 min: 1, 50 // max: 20, 51 step: 1, 52 change: spinerOnchange 53 }); 54 var activeStatus = true; 55 function spinerOnchange( event, ui, $this ) { 56 activeStatus = false; 57 //console.log('onchange'); 58 if($this == null){ 59 $this = $(this); 60 } 61 //console.log($this); 62 var id = $this.data('id'); 63 var url = base_url+'cart/step1-order/'+id; 64 var data = { '_token': $('form.del-'+id+' input[name=_token]').val() }; 65 data.field = 'amount'; 66 data.value = $this.val(); 67 var callback = function(res){ 68 activeStatus = true; 69 if(res.errors){ 70 bootbox.alert({ 71 message: res.message.content, 72 buttons: { 73 ok: { 74 label: '<i class="fa fa-fw fa-refresh"></i> Retry', 75 className: 'btn-warning' 76 } 77 } 78 }); 79 }else{ 80 $('#navbar .profile-cart .badge').text(res.total); 81 $('.total_price').text(res.total_price); 82 $('#text-amount-'+res.id).text(res.message.text_amount); 83 $('#text-price-'+res.id).text(res.message.text_price); 84 } 85 } 86 87 if(data.value > 0){ 88 submitAjax('PUT', url, data, callback); 89 } 90 } 91 92 $( "a.ui-spinner-button" ).click(function() { 93 if(activeStatus==true){ 94 //console.log('click spiner'); 95 spinerOnchange(null,null,$(this).parent().find('input')); 96 }else{console.log('quickly click');} 97 }); 98 99 $("#gotostep2").click(function() { 100 $prices = parseInt($('.total_price').text()); 101 if($prices < 60){ 102 bootbox.alert({ 103 message: "à¸à¸£à¸¸à¸à¸²à¸ªà¸±à¹à¸à¸ªà¸´à¸à¸à¹à¸²à¸à¸±à¹à¸à¸à¹à¸³ 60 à¸à¸²à¸à¸à¸¶à¹à¸à¹à¸", 104 buttons: { 105 ok: { 106 label: '<i class="fa fa-fw fa-refresh"></i> Retry', 107 className: 'btn-warning' 108 } 109 } 110 }); 111 return false; 112 } 113 }); 114 115 $(".select-size").change(function(e) { 116 var id = $(this).data('id'); 117 var url = base_url+'cart/step1-order/'+id; 118 var data = { '_token': $('form.del-'+id+' input[name=_token]').val() }; 119 data.field = 'product'; 120 data.value = $(this).val(); 121 var callback = function(res){ 122 if(res.errors){ 123 bootbox.alert({ 124 message: res.message.content, 125 buttons: { 126 ok: { 127 label: '<i class="fa fa-fw fa-refresh"></i> Retry', 128 className: 'btn-warning' 129 } 130 } 131 }); 132 }else{ 133 location.reload(); 134 } 135 } 136 137 submitAjax('PUT', url, data, callback); 138 139 return false;
140 }); 141 142 $(".btn-del").click(function(e) { 143 var id = $(this).data('id'); 144 var url = base_url+'cart/step1-order/'+id; 145 var data = { '_token': $('form.del-'+id+' input[name=_token]').val() }; 146 var callback = function(res){ 147 $('#navbar .profile-cart .badge').text(res.total); 148 $('.total_price').text(res.total_price); 149 $('#product-'+res.id).remove(); 150 if(! res.result){ $("#next-step").remove(); } 151 bootbox.alert({ 152 message: res.message.text, 153 buttons: { 154 ok: { 155 label: 'OK', 156 className: 'btn-success' 157 } 158 } 159 }); 160 } 161 162 submitAjax('DELETE', url, data, callback); 163 164 return false; 165 }); 166 167 if($('.form-cart-step2').length > 0) { 168 $('form.form-cart-step2 button[type="submit"]').click(function(e){ 169 $('.btn-cancel-address').trigger('click'); 170 return checkSubmit(); 171 }); 172 173 checkSubmit = function() 174 { 175 var submit = true; 176 var $delivery_date = $('.form-cart-step2 [name="delivery_date"]'); 177 var $delivery_time = $('.form-cart-step2 [name="delivery_time"]'); 178 var $order_address = $('.form-cart-step2 [name="order_address"]:checked'); 179 180 if($delivery_date.val() == ""){ 181 $delivery_date.parent().parent().removeClass("has-success"); 182 $delivery_date.parent().parent().addClass("has-error"); 183 $('.error-delivery-date').removeClass('hidden'); 184 submit = false; 185 }else{ 186 $delivery_date.parent().parent().removeClass("has-error"); 187 $delivery_date.parent().parent().addClass("has-success"); 188 $('.error-delivery-date').addClass('hidden'); 189 } 190 if($delivery_time.val() == ""){ 191 $delivery_time.parent().parent().parent().removeClass("has-success"); 192 $delivery_time.parent().parent().parent().addClass("has-error"); 193 $('.error-delivery-time').removeClass('hidden'); 194 submit = false; 195 }else{ 196 $delivery_time.parent().parent().parent().removeClass("has-error"); 197 $delivery_time.parent().parent().parent().addClass("has-success"); 198 $('.error-delivery-time').addClass('hidden'); 199 } 200 if($order_address.val() == "" || $order_address.val() == undefined || $order_address.val() == null){ 201 $('.error-order-address').parent().removeClass("has-success"); 202 $('.error-order-address').parent().addClass("has-error"); 203 $('.error-order-address').removeClass('hidden'); 204 submit = false; 205 }else{ 206 $('.error-order-address').parent().removeClass("has-error"); 207 $('.error-order-address').parent().addClass("has-success"); 208 $('.error-order-address').addClass('hidden'); 209 } 210 211 return submit; 212 } 213 } 214 215 /* =========== add new address =========== */ 216 hiddenBtnAddAddress(); 217 function hiddenBtnAddAddress (){ 218 var count_address = $('.show-address label').length; 219 if(count_address > 0 ){ 220 $('.btn-add-address').addClass('hidden'); 221 $('.textWarn').addClass('hidden'); 222 } else { 223 $('.btn-add-address').removeClass('hidden'); 224 $('.textWarn').removeClass('hidden'); 225 } 226 } 227 228 $(document).on("click", ".btn-add-address", function(){ 229 $count_item = $('fieldset[data-id="temp"]').length; 230 $('.new-address').removeClass('hidden'); 231 $(this).addClass('hidden'); 232 var $fieldset = $('fieldset'); 233 $('small',$fieldset).addClass('hidden'); 234 $('[name]',$fieldset).removeClass('error-border'); 235 $('.has-error',$fieldset).removeClass('has-error'); 236 $('#road_name').addClass('hidden'); 237 return false; 238 }); 239 240 $(document).on("click", ".btn-cancel-address", function(){ 241 $('.new-address').addClass('hidden'); 242 $('.templete-address').find("input, textarea , select").val(""); 243 $('.btn-add-address').removeClass('hidden'); 244 hiddenBtnAddAddress(); 245 return false; 246 }); 247 248 $(document).on("click", ".btn-save-address", function(){ 249 var type = "POST"; 250 var form = false; 251 var url = base_url; 252 url += 'account/info/address'; 253 var val = { '_token': $('input[name=_token]').val() }; 254 var msg = ""; 255 val.telephone = $("input[name='telephone']").val(); 256 val.province_id = $("select[name='province_id']").val(); 257 val.district_id = $("select[name='district_id']").val(); 258 val.sub_district_id = $("select[name='sub_district_id']").val(); 259 val.road_id = $("select[name='road_id']").val(); 260 val.road_name = $("input[name='road_name']").val(); 261 val.postcode = $("input[name='postcode']").val(); 262 val.house_no = $("input[name='house_no']").val(); 263 val.moo = $("input[name='moo']").val(); 264 val.village = $("input[name='village']").val(); 265 val.soi_name = $("input[name='soi_name']").val(); 266 val.landmark = $("textarea[name='landmark']").val(); 267 268 var callback = function(res){ 269 if(res.message.type == "success"){ 270 $('.new-address').addClass('hidden'); 271 $('.templete-address').find("input, textarea , select").val(""); 272 cloneTempleteAddress(res); 273 hiddenBtnAddAddress(); 274 } 275 } 276 277 if(validateAddress(val)){ 278 submitAjax(type, url, val, callback, form); 279 }else{ 280 bootbox.alert({ 281 message: 'à¸à¸£à¸¸à¸à¸²à¸à¸£à¸§à¸à¸ªà¸à¸à¸à¹à¸à¸¡à¸¹à¸¥', 282 buttons: { 283 ok: { 284 label: 'Wrong!', 285 className: 'btn-danger' 286 }, 287 }, 288 }); 289 } 290 291 return false;
292 }); 293 294 function cloneTempleteAddress(res){ 295 var $blog_no = $('.show-address').length + 1; 296 var $new_clone = $(".show-address-template").clone(); 297 var $new_blog = $new_clone.appendTo(".show-address-area").removeClass('hidden show-address-template').addClass('show-address').attr('data-address',$blog_no); 298 $fieldset = $('.show-address[data-address="'+$blog_no+'"]'); 299 $('input',$fieldset ).attr('value',res.id); 300 $('p',$fieldset ).text(res.address_text); 301 $('.btn-add-address').removeClass('hidden'); 302 } 303 304 function validateAddress(data){ 305 var submit = true; 306 var $fieldset = $('fieldset'); 307 $('small',$fieldset).addClass('hidden'); 308 $('[name]',$fieldset).removeClass('error-border'); 309 $('.has-error',$fieldset).removeClass('has-error'); 310 311 if(data.telephone == "" || ! new RegExp("^[0]{1}[0-9]{8,9}$").test(data.telephone)){ 312 $('[name="telephone"]').addClass('error-border'); 313 $('[name="telephone"]').next().removeClass('hidden').text('à¸à¸£à¸¸à¸à¸²à¸à¸£à¸à¸à¹à¸à¸à¸£à¹à¹à¸à¸£à¸¨à¸±à¸à¸à¹à¹à¸«à¹à¸à¸¹à¸à¸à¹à¸à¸'); 314 $('[name="telephone"]').parent().parent().addClass('has-error'); 315 submit = false; 316 } 317 if (data.postcode == "" || ! new RegExp("^[0-9]{5}$").test(data.postcode)){ 318 $('[name="postcode"]').addClass('error-border'); 319 $('[name="postcode"]').next().removeClass('hidden').text('à¸à¸£à¸¸à¸à¸²à¸à¸£à¸à¸à¸£à¸«à¸±à¸ªà¹à¸à¸£à¸©à¸à¸µà¸¢à¹à¹à¸«à¹à¸à¸¹à¸à¸à¹à¸à¸'); 320 $('[name="postcode"]').parent().parent().addClass('has-error'); 321 submit = false; 322 } 323 if (data.province_id == ""){ 324 $('[name="province_id"]').addClass('error-border'); 325 $('[name="province_id"]').next().removeClass('hidden').text('à¸à¸£à¸¸à¸à¸²à¹à¸¥à¸·à¸à¸à¸à¸±à¸à¸«à¸§à¸±à¸'); 326 $('[name="province_id"]').parent().parent().addClass('has-error'); 327 submit = false; 328 } 329 if (data.district_id == ""){ 330 $('.error-district').remove(); 331 $('[name="district_id"]').addClass('error-border'); 332 $('[name="district_id"]').after('<small class="help-block error-district">à¸à¸£à¸¸à¸à¸²à¹à¸¥à¸·à¸à¸à¸à¸³à¹à¸ ภ</small>'); 333 $('[name="district_id"]').parent().parent().addClass('has-error'); 334 submit = false; 335 } 336 if (data.sub_district_id == ""){ 337 $('.error-sub-district').remove(); 338 $('[name="sub_district_id"]').addClass('error-border'); 339 $('[name="sub_district_id"]').after('<small class="help-block error-sub-district">à¸à¸£à¸¸à¸à¸²à¹à¸¥à¸·à¸à¸à¸à¸³à¸à¸¥ </small>'); 340 $('[name="sub_district_id"]').parent().parent().addClass('has-error'); 341 submit = false; 342 } 343 if(data.province_id == 1){ 344 $('.error-road').remove(); 345 if($('[name="road_id"]').hasClass('hidden')){ 346 if (data.road_name == ""){ 347 $('[name="road_name"]').addClass('error-border'); 348 $('[name="road_name"]').after('<small class="help-block error-road">à¸à¸£à¸¸à¸à¸²à¸à¸£à¸à¸à¸à¸à¸ (หาà¸à¹à¸¡à¹à¸¡à¸µà¹à¸ªà¹ -)</small>'); 349 $('[name="road_name"]').parent().parent().addClass('has-error'); 350 submit = false; 351 } 352 } else { 353 if (data.road_id == "" || data.road_id == undefined || data.road_id == null ){ 354 $('[name="road_id"]').addClass('error-border'); 355 $('[name="road_id"]').after('<small class="help-block error-road">à¸à¸£à¸¸à¸à¸²à¹à¸¥à¸·à¸à¸à¸à¸à¸ </small>'); 356 $('[name="road_id"]').parent().parent().addClass('has-error'); 357 submit = false; 358 } 359 if (data.road_id == "other"){ 360 if (data.road_name == "" || data.road_name == undefined || data.road_name == null){ 361 $('[name="road_name"]').addClass('error-border'); 362 $('[name="road_name"]').after('<small class="help-block error-road">à¸à¸£à¸¸à¸à¸²à¸à¸£à¸à¸à¸à¸à¸ (หาà¸à¹à¸¡à¹à¸¡à¸µà¹à¸ªà¹ -)</small>'); 363 $('[name="road_name"]').parent().parent().addClass('has-error'); 364 submit = false; 365 } 366 } 367 } 368 } 369 if (data.house_no == ""){ 370 $('[name="house_no"]').addClass('error-border'); 371 $('[name="house_no"]').next().removeClass('hidden').text('à¸à¸£à¸¸à¸à¸²à¸à¸£à¸à¸à¸à¹à¸²à¸à¹à¸¥à¸à¸à¸µà¹à¹à¸«à¹à¸à¸¹à¸à¸à¹à¸à¸'); 372 $('[name="house_no"]').parent().parent().addClass('has-error'); 373 submit = false;
374 } 375 if(data.province_id != 1){ 376 if (data.moo == ""){ 377 $('[name="moo"]').addClass('error-border'); 378 $('[name="moo"]').next().removeClass('hidden').text('à¸à¸£à¸¸à¸à¸²à¸à¸£à¸à¸à¸«à¸¡à¸¹à¹à¹à¸«à¹à¸à¸¹à¸à¸à¹à¸à¸ (หาà¸à¹à¸¡à¹à¸¡à¸µà¹à¸ªà¹ -)'); 379 $('[name="moo"]').parent().parent().addClass('has-error'); 380 submit = false; 381 } 382 } 383 return submit; 384 385 } 386 387 function checkAreaProvince($province){ 388 $fieldset = $('fieldset'); 389 $('.road_name',$fieldset).val(''); 390 $('.soi_name',$fieldset).val(''); 391 if($province == 1){ 392 $('.road_id',$fieldset).removeClass('hidden').attr('disabled',false); 393 $('.road_name',$fieldset).addClass('hidden').attr('disabled',true); 394 $('.ForBangkok',$fieldset).addClass('hidden'); 395 $('.ForProvincial',$fieldset).removeClass('hidden'); 396 397 } else { 398 $('.road_id',$fieldset).addClass('hidden').attr('disabled',true); 399 $('.road_name',$fieldset).removeClass('hidden').attr('disabled',false); 400 $('.soi_id',$fieldset).addClass('hidden').attr('disabled',true); 401 $('.soi_name',$fieldset).removeClass('hidden').attr('disabled',false); 402 $('.ForBangkok',$fieldset).removeClass('hidden'); 403 $('.ForProvincial',$fieldset).addClass('hidden'); 404 } 405 } 406 407 $('#road_id').attr('disabled', true); 408 $('#soi_id').attr('disabled', true); 409 410 if($("#road_id").val() != ''){ 411 $('#road_id').attr('disabled', false); 412 if($("#road_id").val() == 'other'){
413 $('#road_name').attr('disabled', false); 414 $('#road_name').removeClass('hidden'); 415 } 416 } 417 418 if($('#postcode').val() != ''){ 419 var postcode = $('#postcode').val(); 420 } else { 421 var postcode = ''; 422 } 423 disableAddressSelect = function() 424 { 425 $('#province_id').attr('disabled', true); 426 $('#district_id').attr('disabled', true); 427 $('#sub_district_id').attr('disabled', true); 428 $('#road_id').attr('disabled', true); 429 $('#soi_id').attr('disabled', true); 430 431 $('#road_name').attr('disabled', true); 432 $('#road_name').addClass('hidden'); 433 $('#road_name').val(''); 434 $('#soi_name').val(''); 435 436 if($('#postcode').length > 0) { 437 $('#postcode').val(''); 438 } 439 }; 440 441 function showRoadInput(val){ 442 if(val){ 443 $province_id = val; 444 } 445 446 if($province_id == 1){ 447 $('.road_name').addClass('hidden'); 448 $('.road_name').attr('disabled', true); 449 $('#road_id').removeClass('hidden'); 450 $('#road_id').attr('disabled', false); 451 } else { 452 $('.road_name').removeClass('hidden'); 453 $('.road_name').attr('disabled', false); 454 $('#road_id').addClass('hidden'); 455 $('#road_id').attr('disabled', true); 456 } 457 } 458 459 var $province_id = null; 460 $(document).on( "change", "#province_id", function() { 461 disableAddressSelect(); 462 $val = parseInt($(this).val()); 463 $province_id = $val; 464 if($val == 1){ 465 $('.forBangkok').removeClass('hidden'); 466 } else { 467 $('.forBangkok').addClass('hidden'); 468 } 469 showRoadInput($val); 470 checkAreaProvince($val); 471 472 $.ajax({ 473 url: base_url + 'admin/user-address/province/' + $val, 474 dataType: 'json', 475 success: function(res) { 476 if(res.result) { 477 $('#province_id').attr('disabled', false); 478 $('#district_id').attr('disabled', false); 479 $('#sub_district_id').attr('disabled', true); 480 481 $('#district_id option:eq(0)').prop('selected', true); 482 $('#sub_district_id option:eq(0)').prop('selected', true); 483 $('#road_id option:eq(0)').prop('selected', true); 484 485 $('#district_id').parent().html(res.district); 486 $('#sub_district_id').parent().html(res.sub_district); 487 $('#road_id').parent().html(res.road); 488 $('#soi_id').parent().html(res.soi); 489 490 if($('#postcode').length > 0) { 491 $('#postcode').val(''); 492 postcode = ''; 493 } 494 } 495 }, 496 complete: function() { 497 $('#province_id').attr('disabled', false); 498 $('#district_id option:eq(0)').prop('selected', true); 499 $('#sub_district_id option:eq(0)').prop('selected', true); 500 $('#road_id option:eq(0)').prop('selected', true); 501 }, 502 }); 503 }); 504 505 $(document).on( "change", "#district_id", function() { 506 disableAddressSelect(); 507 showRoadInput(); 508 $val = $(this).val(); 509 $.ajax({ 510 url: base_url + 'admin/user-address/district/' + $val, 511 dataType: 'json', 512 success: function(res) { 513 if(res.result) { 514 $('#province_id').attr('disabled', false); 515 $('#district_id').attr('disabled', false); 516 $('#sub_district_id').attr('disabled', false); 517 518 $('#sub_district_id option:eq(0)').prop('selected', true); 519 $('#road_id option:eq(0)').prop('selected', true); 520 521 $('#sub_district_id').parent().html(res.sub_district); 522 $('#road_id').parent().html(res.road); 523 $('#soi_id').parent().html(res.soi); 524 525 if($('#postcode').length > 0) { 526 $('#postcode').val(''); 527 postcode = ''; 528 } 529 } 530 }, 531 complete: function() { 532 $('#province_id').attr('disabled', false); 533 $('#district_id').attr('disabled', false); 534 $('#sub_district_id option:eq(0)').prop('selected', true); 535 $('#road_id option:eq(0)').prop('selected', true); 536 }, 537 }); 538 }); 539 540 var sub_district_success = false; 541 $(document).on( "change", "#sub_district_id", function() { 542 sub_district_success = false; 543 disableAddressSelect(); 544 showRoadInput(); 545 $val = $(this).val(); 546 $.ajax({ 547 url: base_url + 'admin/user-address/sub-district/' + $val, 548 dataType: 'json', 549 success: function(res) { 550 sub_district_success = true; 551 if(res.result) { 552 $('#road_id').parent().html(res.road); 553 $('#soi_id').parent().html(res.soi); 554 555 $('#road_id option:eq(0)').prop('selected', true); 556 557 if($('#postcode').length > 0) { 558 $('#postcode').val(res.postcode); 559 postcode = res.postcode; 560 } 561 } 562 },
563 complete: function() { 564 $('#province_id').attr('disabled', false); 565 $('#district_id').attr('disabled', false); 566 $('#sub_district_id').attr('disabled', false); 567 $('#road_id option:eq(0)').prop('selected', true); 568 if(!sub_district_success){ 569 $('#road_id').attr('disabled', false); 570 $('#road_id').html('<option value="">à¹à¸¥à¸·à¸à¸à¸à¸à¸</option><option value="other">à¸à¸·à¹à¸à¹</option>'); 571 } 572 }, 573 }); 574 }); 575 576 var road_success = false; 577 $(document).on( "change", "#road_id", function() { 578 disableAddressSelect(); 579 showRoadInput(); 580 $val = $(this).val(); 581 $("#soi_name").val(""); 582 583 if($val == 'other' || $val == ''){ 584 if($val == 'other' ){ 585 $("#road_name").removeClass("hidden"); 586 $('.error-road').remove(); 587 } 588 $('#road_name').attr('disabled', false); 589 if($('#postcode').length > 0) { 590 $('#postcode').val(postcode); 591 } 592 }else{ 593 $("#road_name").val(""); 594 $("#road_name").addClass("hidden"); 595 $('#road_name').attr('disabled', true); 596 } 597 $.ajax({ 598 url: base_url + 'admin/user-address/road/' + $val, 599 dataType: 'json', 600 success: function(res) { 601 road_success = true; 602 if(res.result) { 603 $('#soi_id').parent().html(res.soi); 604 if($('#postcode').length > 0) { 605 $('#postcode').val(postcode); 606 } 607 } 608 }, 609 complete: function() { 610 $('#province_id').attr('disabled', false); 611 $('#district_id').attr('disabled', false); 612 $('#sub_district_id').attr('disabled', false); 613 $('#road_id').attr('disabled', false); 614 if(!road_success){ 615 $('#soi_id').html('<option value="">à¹à¸¥à¸·à¸à¸à¸à¸à¸¢</option><option value="other">à¸à¸·à¹à¸à¹</option>'); 616 } 617 $('#soi_id').attr('disabled', false); 618 $('#soi_id option:eq(0)').prop('selected', true); 619 }, 620 }); 621 }); 622 623 function submitAjax(type, url, data, callback, form){ 624 var ajaxData = { 625 type: type, 626 url: url, 627 data: data, 628 success: function(res) { 629 trace(res); 630 if(res) { 631 if(callback){ 632 callback(res); 633 }else{ 634 bootbox.alert({ 635 message: res.message.content, 636 buttons: { 637 ok: { 638 label: 'OK', 639 className: 'btn-success' 640 } 641 } 642 }); 643 } 644 }else{ 645 bootbox.alert({ 646 message: '<i class="fa fa-fw fa-warning"></i> No response !!!', 647 buttons: { 648 ok: { 649 label: 'OK', 650 className: 'btn-danger' 651 }, 652 } 653 }); 654 } 655 }, 656 } 657 658 if(form){ 659 var formData = new FormData(); 660 formData.append('_method', type); 661 for (var prop in data) { 662 formData.append(prop, data[prop]); 663 } 664 665 ajaxData.type = 'post'; 666 ajaxData.data = formData; 667 ajaxData.processData = false; 668 ajaxData.contentType = false;
669 ajaxData.enctype = "multipart/form-data"; 670 } 671 672 $.ajax(ajaxData); 673 } 674 675}); 676 677if (!window['console']) { 678 console = {log: function () {}}; 679} 680function trace(txt) { 681 //console.log(txt); 682} 683function log() 684{ 685 var txt = ""; 686 var length = arguments.length; 687 688 for (var i = 0; i < length; i++) { 689 txt += arguments[i] + " "; 690 } 691 692 trace(txt); 693}
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.