1function openLogin(caller){ 2 /*$("#minilogin .btn.facebook").attr("onClick","openWindow('"+weddingkumembers + "/fblogin.asp?caller="+window.location.href+"');"); 3 $("#minilogin .btn.instagram").attr("onClick","openWindow('"+weddingkumembers + "/instalogin.asp?caller="+window.location.href+"');"); 4 // $('#minilogin #caller').val(caller); 5 $('#minilogin #caller').val(window.location.href); 6 // if (caller === 'undefined'){ 7 if (caller.indexOf("login") < 0 ){ 8 if ($( "#minilogin a#signupcaller" ).length > 0){ 9 $("#minilogin a#signupcaller").prop("href", weddingkumembers + "/register?caller="+caller); 10 } 11 } 12 // } 13 $('#minilogin').modal('show');*/ 14 window.location.href=weddingkumembers+"/login?caller="+caller 15} 16function popNotif() { 17 $('#popNotif').hide(); 18} 19function openEventPopup(){ 20 $('#popupevent').modal('show'); 21 $('html').css('overflow-y','hidden'); 22} 23 24function setCookieHour(cname,cvalue,exdays) { 25 var now = new Date(); 26 var minutes = 60; 27 now.setTime(now.getTime() + (minutes * 60 * 1000)); 28 document.cookie = 29 cname + "=" + cvalue + 30 '; expires=' + now.toUTCString() + 31 '; path=/'; 32} 33 34function openWindow(url,name,width,height) { 35 var left = (screen.width - width) / 2; 36 var top = (screen.height - height) / 4; 37 var myFeatures = "toolbar=no,location=no,status=yes,directories=no,menubar=no,scrollbars=yes,resizable=yes,width="
37+ width + ",height=" + height + ",top=" + top + ",left=" + left; 38 var myWindow = window.open(url,name,myFeatures); 39} 40 41function alertLogin() { 42 $('#alertlogin').modal('show'); 43} 44 45function loadLazy() { 46 $(".lazy").lazyload({ 47 effect : "fadeIn", 48 failure_limit : 120, 49 threshold : 400 50 }); 51} 52 53function cetakRate(rate){ 54 var sisa = 0, overal = 0, text="", starCount=0; 55 sisa = (rate*10 % 10); 56 //console.log(sisa); 57 overal=rate*10-sisa; 58 overal=overal/10; 59 for (i = 0; i < overal; i++) { 60 text += '<i class="fa fa-star"></i>'; 61 starCount++; 62 } 63 if (sisa > 1){ 64 text += '<i class="fa fa-star-half-o"></i>'; 65 starCount++; 66 } 67 for (i = 0; i < (5-starCount); i++) { 68 text += '<i class="fa fa-star-o"></i>'; 69 } 70 return text; 71} 72 73function blockimage(){ 74 document.oncontextmenu = function(e) { 75 e = e || window.event; 76 //console.log(e.type+'-'+e.button+'-'+e.which); 77 if ((e.type && e.type == "contextmenu") || (e.button && e.button == 2) || (e.which && e.which == 3)) { 78 if (/^img$/i.test((e.target || e.srcElement).nodeName)) return false; 79 } 80 }; 81 var pixelSource = 'https://images.weddingku.com/images/transparent.gif'; 82 var useOnAllImages = true; 83 // Preload the pixel 84 var preload = new Image(); 85 preload.src = pixelSource; 86 $('img.mfp-img').on('mouseenter touchstart', function(e) { 87 // Only execute if this is not an overlay or skipped 88 var img = $(this); 89 if (img.hasClass('protectionOverlay')) return; 90 if (!useOnAllImages && !img.hasClass('protectMe')) return; 91 // Get the real image's position, add an overlay 92 var pos = img.offset(); 93 var overlay = $('<img class="protectionOverlay" src="' + pixelSource + '" width="' + img.width() + '" height="' + img.height() + '" />').css({position: 'absolute', zIndex: 9999999, left: pos.left, top: pos.top}).appendTo('body').bind('mouseleave', function() { 94 setTimeout(function(){ overlay.remove(); }, 0, $(this)); 95 }); 96 if ('ontouchstart' in window) $(document).one('touchend', function(){ setTimeout(function(){ overlay.remove(); }, 0, overlay); }); 97 }); 98} 99 100 101Number.prototype.formatMoney = function(c, d, t){ 102var n = this, 103 c = isNaN(c = Math.abs(c)) ? 2 : c, 104 d = d == undefined ? "." : d, 105 t = t == undefined ? "," : t, 106 s = n < 0 ? "-" : "", 107 i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", 108 j = (j = i.length) > 3 ? j % 3 : 0; 109 return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : ""); 110 }; 111 112function kFormatter(num) { 113 return num > 999 ? (num/1000).toFixed(1) + 'k' : num 114} 115 116function intFormatter (value) { 117 if (value > 999) { 118 var suffixes = ["", "K", "M", "B","T"]; 119 var suffixNum = Math.floor((""+value).length/3); 120 var shortValue = parseFloat((suffixNum != 0 ? (value / Math.pow(1000,suffixNum)) : value).toPrecision(2)); 121 if (shortValue % 1 != 0) { 122 shortValue = shortValue.toFixed(1); 123 } 124 return shortValue+suffixes[suffixNum]; 125 } else { 126 return value; 127 } 128} 129 130function formatPrice(value,symbol){ 131 if(value != undefined){ 132 value += ''; 133 x = value.split('.'); 134 x1 = x[0]; 135 x2 = x.length > 1 ? '.' + x[1] : ''; 136 var rgx = /(\d+)(\d{3})/; 137 while (rgx.test(x1)) { 138 x1 = x1.replace(rgx, '$1' + '.' + '$2'); 139 } 140 return symbol+' '+x1 + x2; 141 } 142} 143 144function dtTimeFormat(dtDate) { 145 var datetime = new Date(dtDate); 146 147 return "0"+date.getHours().substr(2)+":"+"0"+date.getMinutes().substr(2); 148} 149function dtTimeDifference(dtDate) { 150 151 var current = Date.now(); 152 153 var d = dtDate.replace(/-/g, "/"); 154 var T = dtDate.replace("T", " "); 155 var Z = T.replace("Z", " "); 156 var datetime = new Date(Z); 157 158 var msPerMinute = 60 * 1000; 159 var msPerHour = msPerMinute * 60; 160 var msPerDay = msPerHour * 24; 161 var msPerMonth = msPerDay * 30; 162 var msPerYear = msPerDay * 365; 163 164 var elapsed = current - datetime; 165 if (elapsed < msPerMonth) { 166 if(Math.round(elapsed/msPerDay) < 1){ 167 return 'Today'; 168 }else{ 169 return formatDate(datetime); 170 } 171 }else{ 172 return formatDate(datetime); 173 } 174} 175 176function formatDateTZ(d) { 177 var d = d.replace(/-/g, "/"); 178 var T = d.replace("T", " "); 179 var Z = T.replace("Z", " "); 180 var date = new Date(Z); 181 return formatDate(date); 182} 183 184function formatDate(date) { 185 var monthNames = [ 186 "Jan", "Feb", "Mar", 187 "Apr", "May", "Jun", "Jul", 188 "Aug", "Sep", "Oct", 189 "Nov", "Dec" 190 ]; 191 var day = date.getDate(); 192 var monthIndex = date.getMonth(); 193 var year = String(date.getFullYear()); 194 195 if(year > 2000){
196 year = year.substr(year.length - 2); 197 } 198 return day + ' ' + monthNames[monthIndex] + ' ' + year; 199} 200 201function formatDateTZnum(d){ 202 203 var d = d.replace(/-/g, "/"); 204 var T = d.replace("T", " "); 205 var Z = T.replace("Z", " "); 206 var date = new Date(Z) 207 var day = date.getDate(); 208 var monthIndex = (1 + date.getMonth()).toString(); 209 var year = date.getFullYear(); 210 // console.log(day + ' ' + monthNames[monthIndex] + ' ' + year); 211 return day + '/' + monthIndex + '/' + year; 212} 213 214function getFormattedDate(date) { 215 216 var monthNames = [ 217 "January", "February", "March", 218 "April", "May", "June", "July", 219 "August", "September", "October", 220 "November", "December" 221 ]; 222 var year = date.getFullYear(); 223 224 var month = (1 + date.getMonth()).toString(); 225 month = month.length > 1 ? month : '0' + month; 226 227 var day = date.getDate().toString(); 228 day = day.length > 1 ? day : '0' + day; 229 230 return day + ' ' + monthNames[month] + ' ' + year; 231} 232 233function formatDateTZEvent(StartDate,EndDate) { 234 var Startd = StartDate.replace(/-/g, "/"); 235 var StartT = Startd.replace("T", " "); 236 var StartZ = StartT.replace("Z", " "); 237 var Startdate = new Date(StartZ); 238 239 var Endd = EndDate.replace(/-/g, "/"); 240 var EndT = Endd.replace("T", " "); 241 var EndZ = EndT.replace("Z", " "); 242 var Enddate = new Date(EndZ); 243 return WriteEventDate(Startdate,Enddate); 244} 245function WriteEventDate(StartDate,EndDate){ 246 var StartDay,StartMonth,StartYear,EndDay,EndMonth,EndYear,sEventDate2; 247 248 var monthNames = [ 249 "Jan", "Feb", "Mar", 250 "Apr", "May", "Jun", "Jul", 251 "Aug", "Sep", "Oct", 252 "Nov", "Dec" 253 ]; 254 255 if (StartDate != null || StartDate != "") { 256 StartMonthNames = monthNames[StartDate.getMonth()]; 257 StartDay = StartDate.getDate(); 258 StartYear = String(StartDate.getFullYear()); 259 } 260 261 if (EndDate != null || EndDate != "") { 262 EndMonthNames = monthNames[EndDate.getMonth()]; 263 EndDay = EndDate.getDate(); 264 EndYear = String(EndDate.getFullYear()); 265 } 266 267 var strStart, strEnd, StartMonth, StartDay, EndMonth, EndDay; 268 if (StartDate.getMonth().length > 1) { 269 Startmonth = "0"+StartDate.getMonth(); 270 } else { 271 StartMonth = StartDate.getMonth(); 272 } 273 274 if (StartDate.getDate().length > 1) { 275 StartDay = "0"+StartDate.getDate(); 276 } else { 277 StartDay = StartDate.getDate(); 278 } 279 280 if (EndDate.getMonth().length > 1) { 281 EndMonth = "0"+EndDate.getMonth(); 282 } else { 283 EndMonth = EndDate.getMonth(); 284 } 285 286 if (EndDate.getDate().length > 1) { 287 EndDay = "0"+EndDate.getDate(); 288 } else { 289 EndDay = EndDate.getDate(); 290 } 291 292 strStart = String(StartDate.getFullYear()) + "-" + StartMonth + "-" + StartDay 293 strEnd = String(EndDate.getFullYear()) + "-" + EndMonth + "-" + EndDay 294 if (StartDay === EndDay && StartMonth === EndMonth && StartYear === EndYear) { 295 sEventDate2= '<time itemprop="startDate" datetime="' + strStart + '">' + StartDay + '</time>' + StartMonthNames + " " + StartYear 296 } else if (StartMonth === EndMonth && StartYear === EndYear) { 297 sEventDate2= '<time itemprop="startDate" datetime="' + strStart + '">' + StartDay + "</time>" + '-<time itemprop="endDate" datetime="' + strEnd + '">' + EndDay + "</time> " + StartMonthNames + " " + StartYear 298 } else if (StartMonth === EndMonth && StartYear != EndYear) { 299 sEventDate2= '<time itemprop="startDate" datetime="' + strStart + '">' + StartDay + "</time> " + StartMonthNames + " " + StartYear + '-<time itemprop="endDate" datetime="' + strEnd + '">' + EndDay + "</time> " + EndMonthNames + " " + EndYear 300 } else if (StartMonth != EndMonth && StartYear == EndYear) { 301 sEventDate2= '<time itemprop="startDate" datetime="' + strStart + '">' + StartDay + "</time> " + StartMonthNames + '-<time itemprop="endDate" datetime="' + strEnd + '">' + EndDay + "</time> " + EndMonthNames + " " + StartYear 302 } else if (StartMonth != EndMonth && StartYear != EndYear) { 303 sEventDate2= '<time itemprop="startDate" datetime="' + strStart + '">' + StartDay + " " + StartMonthNames + " " + StartYear + "</time>" + '-<time itemprop="endDate" datetime="' + strEnd + '">' + EndDay + " " + EndMonthNames + " " + EndYear + "</time>" 304 } else { 305 sEventDate2= '<time itemprop="startDate" datetime="' + strStart + '">' + strStart + "</time>" + '-<time itemprop="endDate" datetime="' + strEnd + '">' + strEnd + "</time>" 306 } 307 308 return sEventDate2 309} 310 311function nl2br (str, is_xhtml) { 312 var breakTag = (is_xhtml || typeof is_xhtml === 'undefined') ? '<br />' : '<br>'; 313 return (str + '').replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '$1' + breakTag + '$2'); 314} 315 316function vLove(id,tipe){ 317 $.ajax({
318 type:'GET', 319 url: weddingkuhome+'/ajax/love-vendors.asp', 320 data:'i='+id, 321 success:function(response){ 322 if (response.code == "01"){ 323 openLogin(window.location.href); 324 } 325 else { 326 var response=$.parseJSON(response); 327 Result=response.description; 328 var iLove = parseInt($("#love"+id+" span.num").html()); 329 if (response.code == "01"){ 330 openLogin(window.location.href); 331 } 332 else if (Result == "Successfull love"){ 333 $(".ico-love"+id).addClass('loved'); 334 $("#love #"+id).addClass('loved'); 335 $("#love"+id+" span.num").html(iLove+1); 336 337 console.log("loved"); 338 } 339 else { 340 $(".ico-love"+id).removeClass('loved'); 341 $("#love #"+id).removeClass('loved'); 342 $("#love"+id+" span.num").html(iLove-1); 343 console.log("love"); 344 } 345 } 346 } 347 }); 348} 349function cLove(id,tipe){ 350 $.ajax({ 351 type:'GET', 352 url: weddingkuhome+'/ajax/love-collections.asp', 353 data:'i='+id, 354 success:function(response){ 355 // console.log(response) 356 if (response == "-1"){ 357 openLogin(window.location.href); 358 } 359 else { 360 var response=$.parseJSON(response); 361 Result=response.code; 362 Love=response.description; 363 if (Result == "01"){ 364 openLogin(window.location.href); 365 } 366 else if (Result == "00"){ 367 if (Love == "Successfull love") { 368 // $("#"+id).addClass('loved'); 369 $(".loveicon"+id).addClass('loved'); 370 if (tipe== '1') 371 $("#love"+id).html(kFormatter(Love)); 372 } 373 else{ 374 // $("#"+id).removeClass('loved'); 375 $(".loveicon"+id).removeClass('loved'); 376 if (tipe== '1') 377 $("#love"+id).html(kFormatter(Love)); 378 } 379 } 380 else { 381 // $("#"+id).removeClass('loved'); 382 $(".loveicon"+id).removeClass('loved'); 383 if (tipe== '1') 384 $("#love"+id).html(kFormatter(Love)); 385 } 386 } 387 } 388 }); 389} 390 391 392var isMobile = false; //initiate as false 393// device detection 394function devDetect() { 395 if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|ipad|iris|kindle|Android|Silk|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(navigator.userAgent) 396 || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(navigator.userAgent.
396substr(0,4))) { 397 isMobile = true; 398 } 399} 400 401$(window).resize(function() { 402 devDetect(); 403 }); 404$(document).ready(function(){ 405 devDetect(); 406 407 $('section[data-type="background"]').each(function(){ 408 var $bgobj = $(this); // assigning the object 409 410 $(window).scroll(function() { 411 var yPos = -($window.scrollTop() / $bgobj.data('speed')); 412 var bgSrc = $bgobj.data('src'); 413 var coords = '50% '+ yPos + 'px'; 414 $bgobj.css("background", "url('"+bgSrc+"') fixed"); 415 $bgobj.css({ backgroundPosition: coords, 416 '-webkit-background-size': 'cover', 417 '-moz-background-size': 'cover', 418 '-o-background-size': 'cover', 419 'background-size': 'cover' }); 420 }); 421 }); 422 423 $('#nav-me a').click(function(e){ 424 if($(this).hasClass('active')){ 425 $('.wrapper').remove(); 426 $(".mobile_menu").hide(); 427 $(".mobile_menu").removeClass('active'); 428 $(this).removeClass('active'); 429 $('body').css('overflow-y',''); 430 $('html').css('overflow-y',''); 431 } 432 else { 433 $('body').prepend('<div class="wrapper"></div>'); 434 $(".mobile_menu").show(); 435 $(".mobile_menu").addClass('active'); 436 $(this).addClass('active'); 437 $('body').css('overflow-y','hidden'); 438 $('html').css('overflow-y','hidden'); 439 } 440 }); 441 442 $('#mobile_menu-close').click(function(e){ 443 $('.wrapper').remove(); 444 $(".mobile_menu").hide(); 445 $(".mobile_menu").removeClass('active'); 446 $('.active').removeClass('active'); 447 $('body').css('overflow-y',''); 448 $('html').css('overflow-y',''); 449 }); 450 451 $('.dropdown a').click(function(e){ 452 //console.log("click"+$(this).parent().parent().parent().attr('id')); 453 if ($(this).parent().parent().parent().attr('id') == "category-bar" || $(this).parent().parent().parent().parent().parent().attr('id') == "category-bar"){ 454 if($(this).parent().hasClass('active')){ 455 $(this).parent().children('.sub-menu').slideUp(); 456 $(this).parent().removeClass('active'); 457 } 458 else { 459 //console.log("click4"+$(this).attr('class')); 460 $(this).parent().children('.sub-menu').slideDown(); 461 $(this).parent().addClass('active'); 462 } 463 } 464 else { 465 //console.log("click2"+$(this).attr('class')); 466 $('.navbar-m .subnav-m').slideUp(350); 467 $('.navbar-m .subnav-m').removeClass('active'); 468 $('.sub-menu .dropdown .sub-menu').hide(); 469 $('.sub-menu .dropdown .sub-menu').parent().removeClass('active'); 470 if ($(this).parent().parent().parent().attr('id') == "nav-bottom"){ 471 $('body .wrapper').remove(); 472 $('body').css('overflow-y',''); 473 $('html').css('overflow-y',''); 474 //console.log("click"); 475 } 476 //console.log("click6-"+$(this).parent().hasClass('dropdown')); 477 478 if($(this).parent().hasClass('dropdown')){ 479 if($(this).parent().hasClass('active')){ 480 $(this).parent().children('.sub-menu').hide(); 481 $(this).parent().removeClass('active'); 482 } 483 else { 484 $(this).parent().children('.sub-menu').show(); 485 $(this).parent().addClass('active'); 486 if ($(this).parent().parent().parent().attr('id') == "nav-bottom" && $(this).attr('id') == "more"){ 487 $('body').prepend('<div class="wrapper"></div>'); 488 $('body').css('overflow-y','hidden'); 489 $('html').css('overflow-y','hidden'); 490 } 491 } 492 } 493 } 494 }); 495 496 $(document).mouseup(function (e) 497 { 498 var container = $(".active"); 499 if (!container.is(e.target) // if the target of the click isn't the container... 500 && container.has(e.target).length === 0) // ... nor a descendant of the container 501 { 502 $('.dropdown>.sub-menu').hide(); 503 $('.dropdown>.sub-menu').parent().removeClass('active'); 504 $('.navbar .subnav').hide(); 505 $('.active').removeClass('active'); 506 $('.wrapper').remove(); 507 $(".mobile_menu").hide(); 508 } 509 }); 510 511 512 //Click event to scroll to top 513 $('#gototop').click(function(){ 514 $('html, body').animate({scrollTop : 0},800); 515 return false; 516 }); 517 $('#nav-me>a').click(function(){ 518 $('#nav-me .sub-menu').toggle(); 519 return false; 520 }); 521 522 $('.navbar a').click(function(e){ 523 if ($(this).parent().parent('ul.navbar').hasClass('active')){ 524 $('.navbar .subnav').hide(); 525 $('.navbar').removeClass('active'); 526 } 527 else{ 528 $('.navbar .subnav').show(); 529 $('.navbar').addClass('active'); 530 } 531 }); 532 533 $(".navbar-m > li.slideDown > a").on("click", function(e){
534 if($(this).parent().has("ul")) { 535 e.preventDefault(); 536 } 537 538 if(!$(this).hasClass("active")) { 539 // hide any open menus and remove all other classes 540 $(".navbar-m li.slideDown ul.subnav-m").slideUp(350); 541 $(".navbar-m li.slideDown a").removeClass("active"); 542 543 // open our new menu and add the open class 544 $(this).next("ul.subnav-m").slideDown(350); 545 $(this).addClass("active"); 546 } 547 548 else if($(this).hasClass("active")) { 549 $(this).removeClass("active"); 550 $(this).next("ul.subnav-m").slideUp(350); 551 } 552 }); 553 554 $('#header-formsearch').submit(function(e) { 555 e.preventDefault(); 556 var data = $("#header-formsearch :input").serializeArray(); 557 strURL = weddingkuhome; 558 $.each(data, function(i, field){ 559 if (field.name == "q" && field.value != "") 560 strURL += "/search?q="+encodeURIComponent(field.value).replace(/%20/g,'+'); 561 else 562 strURL += "/wedding-vendors/bridal-house-boutique/jakarta"; 563 }); 564 window.location.href = strURL; 565 }); 566 567 $('.input-with-animated-label').bind('blur', function () { 568 if ($('#'+this.id).val() == "") { 569 $('#'+this.id).removeClass("data-has-value"); 570 }else{} 571 }).bind('focus', function () { 572 $('#'+this.id).addClass("data-has-value"); 573 }); 574}); 575 576function banner(){ 577 $('#bannerbar-fixed-bottom').hide(); 578 $('#m-btn-filter .float').css({'bottom': '30px'}); 579 $('#gototop a').attr('style', 'bottom: 50px !important'); 580} 581 582function closeBanner() { 583 $('#bannerbar-fixed-bottom').hide(); 584 $('#left-content #vendor-name #profile-contact').css({'bottom': '0px'}); 585 $('#m-btn-filter .float ').css({'bottom': '30px'}); 586 $('.qcw-trigger-btn.svelte-noomlu.svelte-noomlu').addClass('bc'); 587 $('#gototop').addClass('bc'); 588} 589 590var ellipsisText = function (e, etc) { 591 var wordArray = e.innerHTML.split(" "); 592 while (e.scrollHeight > e.offsetHeight) { 593 wordArray.pop(); 594 e.innerHTML = wordArray.join(" ") + (etc || "..."); 595 } 596}; 597[].forEach.call(document.querySelectorAll(".line-clamp-ff"), function(elem) { 598 ellipsisText(elem); 599}); 600 601if (typeof(Storage) !== "undefined") { 602 var weddingkudt = localStorage.getItem("weddingkudt"); 603 var weddingkupageopen = localStorage.getItem("weddingkupageopen"); 604 var idwfpopup = localStorage.getItem("idwfpopup"); 605 var idwfpopupvisited = localStorage.getItem("idwfpopupvisited"); 606 var set_ga = localStorage.getItem("set_ga"); 607 if (set_ga == "" || set_ga === null) { 608 localStorage.setItem("set_ga",0); 609 } 610 if (weddingkupageopen == "" || weddingkupageopen === null) { 611 weddingkupageopen = 0; 612 weddingkudt = Date.now(); 613 }weddingkupageopen++; 614 localStorage.setItem("weddingkupageopen", weddingkupageopen); 615 localStorage.setItem("weddingkudt",weddingkudt); 616} 617 618function setlog(refid,pid,id,tipe,url,ga){ 619 $.ajax({ 620 type : "POST", 621 cache : false, 622 url : weddingkuhome+"/ajax/addlog.asp", 623 data : "pid="+pid+"&ga="+ga+"&id="+id+"&refid="+refid+'&typ='+tipe+'&ca='+url, 624 success : function(data) { 625 626 } 627 }); 628} 629 630function notifcookies(id){ 631 $.ajax({ 632 type : "POST", 633 cache : false, 634 url : weddingkuhome+"/ajax/addnoticookies.asp", 635 data : "id="+id, 636 success : function(data) { 637 638 } 639 }); 640} 641 642function addEventGA(sCat,sLabel){ 643 gtag('event', 'click', { 644 'event_category': sCat, 645 'event_label': sLabel 646 }); 647}
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.