1(function ($) { 2 let gDocument = $(document), 3 gProgressBarE = $(".gutentor-element-progressbar"), 4 counter_element = $(".gutentor-element-counter"), 5 gWindow = $(window), 6 gBody = $("body"), 7 gWindowWidth = gWindow.width(), 8 gM11Init = false, 9 gFlexInit = false; 10 11 /*Gutentor gBooleanVal*/ 12 function gBooleanVal(val) { 13 if (typeof val === "boolean") { 14 return val; 15 } 16 return val === "true"; 17 } 18 19 function gSlick(gThis) { 20 let gss = {}; /*Slick Setting*/ 21 if (gThis[0].hasAttribute("data-dots")) { 22 gss.dots = gBooleanVal(gThis.data("dots")); 23 } 24 if (gThis[0].hasAttribute("data-arrows")) { 25 gss.arrows = gBooleanVal(gThis.data("arrows")); 26 } 27 if (gThis[0].hasAttribute("data-infinite")) { 28 gss.infinite = gBooleanVal(gThis.data("infinite")); 29 } 30 if (gThis[0].hasAttribute("data-speed")) { 31 gss.speed = parseInt(gThis.data("speed")); 32 } 33 if (gThis[0].hasAttribute("data-slideitemdesktop")) { 34 gss.slidesToShow = parseInt(gThis.data("slideitemdesktop")); 35 } 36 if (gThis[0].hasAttribute("data-slidescroll-desktop")) { 37 gss.slidesToScroll = parseInt(gThis.data("slidescroll-desktop")); 38 } 39 if (gThis[0].hasAttribute("data-nextarrow")) { 40 gss.nextArrow = 41 '<span class="slick-next"><i class="' + 42 gThis.data("nextarrow") + 43 '"></i></span>'; 44 } else { 45 gss.nextArrow = 46 '<span class="slick-next"><i class="fas fa-angle-right"></i></span>'; 47 } 48 if (gThis[0].hasAttribute("data-prevarrow")) { 49 gss.prevArrow = 50 '<span class="slick-prev"><i class="' + 51 gThis.data("prevarrow") + 52 '"></i></span>'; 53 } else { 54 gss.prevArrow = 55 '<span class="slick-prev"><i class="fas fa-angle-left"></i></span>'; 56 } 57 if (gThis[0].hasAttribute("data-autoplay")) { 58 gss.autoplay = gBooleanVal(gThis.data("autoplay")); 59 if (gThis[0].hasAttribute("data-autoplayspeed")) { 60 gss.autoplaySpeed = parseInt(gThis.data("autoplayspeed")); 61 } 62 if (gThis[0].hasAttribute("data-pauseonfocus")) { 63 gss.pauseOnFocus = gBooleanVal(gThis.data("pauseonfocus")); 64 } 65 if (gThis[0].hasAttribute("data-pauseonhover")) { 66 gss.pauseOnHover = gBooleanVal(gThis.data("pauseonhover")); 67 } 68 } 69 if (gThis[0].hasAttribute("data-draggable")) { 70 gss.draggable = gBooleanVal(gThis.data("draggable")); 71 } 72 if (gThis[0].hasAttribute("data-fade")) { 73 gss.fade = gBooleanVal(gThis.data("fade")); 74 } 75 if (gThis[0].hasAttribute("data-blockimagesliderfade")) { 76 gss.fade = gBooleanVal(gThis.data("blockimagesliderfade")); 77 } 78 if (gThis[0].hasAttribute("data-cmondesktop")) { 79 gss.centerMode = gBooleanVal(gThis.data("cmondesktop")); 80 if (gBooleanVal(gThis.data("cmondesktop"))) { 81 if (gThis[0].hasAttribute("data-cmpaddingdesktop")) { 82 gss.centerPadding = gThis.data("cmpaddingdesktop"); 83 } 84 } 85 } 86 87 /*Responsive Setting*/ 88 let rTgss = {}, 89 rMgss = {}; 90 if (gThis[0].hasAttribute("data-slideitemtablet")) { 91 rTgss.slidesToShow = parseInt(gThis.data("slideitemtablet")); 92 } 93 if (gThis[0].hasAttribute("data-slidescroll-tablet")) { 94 rTgss.slidesToScroll = parseInt(gThis.data("slidescroll-tablet")); 95 } 96 if (gThis[0].hasAttribute("data-dotstablet")) { 97 rTgss.dots = gBooleanVal(gThis.data("dotstablet")); 98 } 99 if (gThis[0].hasAttribute("data-arrowstablet")) { 100 rTgss.arrows = gBooleanVal(gThis.data("arrowstablet")); 101 } 102 if (gThis[0].hasAttribute("data-cmontablet")) { 103 rTgss.centerMode = gBooleanVal(gThis.data("cmontablet")); 104 if (gBooleanVal(gThis.data("cmontablet"))) { 105 if (gThis[0].hasAttribute("data-cmpaddingtablet")) { 106 rTgss.centerPadding = gThis.data("cmpaddingtablet"); 107 } 108 } 109 } 110 111 /*Responsive mobile*/ 112 if (gThis[0].hasAttribute("data-slideitemmobile")) { 113 rMgss.slidesToShow = parseInt(gThis.data("slideitemmobile"));
114 } 115 if (gThis[0].hasAttribute("data-slidescroll-mobile")) { 116 rMgss.slidesToScroll = parseInt(gThis.data("slidescroll-mobile")); 117 } 118 if (gThis[0].hasAttribute("data-dotsmobile")) { 119 rMgss.dots = gBooleanVal(gThis.data("dotsmobile")); 120 } 121 if (gThis[0].hasAttribute("data-arrowsmobile")) { 122 rMgss.arrows = gBooleanVal(gThis.data("arrowsmobile")); 123 } 124 if (gThis[0].hasAttribute("data-cmonmobile")) { 125 rMgss.centerMode = gBooleanVal(gThis.data("cmonmobile")); 126 if (gBooleanVal(gThis.data("cmonmobile"))) { 127 if (gThis[0].hasAttribute("data-cmpaddingmobile")) { 128 rMgss.centerPadding = gThis.data("cmpaddingmobile"); 129 } 130 } 131 } 132 let rTSettings = { 133 breakpoint: 1024, 134 settings: rTgss, 135 }, 136 rMSettings = { 137 breakpoint: 480, 138 settings: rMgss, 139 }; 140 141 gss.responsive = []; 142 gss.responsive.push(rTSettings); 143 gss.responsive.push(rMSettings); 144 145 /*Arrow Position*/ 146 if ( 147 gThis[0].hasAttribute("data-arrowspositiondesktop") && 148 "gutentor-slick-a-default-desktop" !== gThis.data("arrowspositiondesktop") 149 ) { 150 gss.appendArrows = gThis.siblings(".gutentor-slick-arrows"); 151 } 152 /*RTL*/ 153 if (gBody.hasClass("rtl")) { 154 gss.rtl = true; 155 } 156 /*Finally call Slick*/ 157 if (gThis.hasClass("slick-initialized")) { 158 gThis.slick("refresh"); 159 } else { 160 gThis.slick(gss); 161 } 162 } 163 164 /*Magnific Popup 165 * gThis 166 * isI => is image 167 * isG => is gallery 168 * */ 169 function gMagnificPopup(gThis, isI = false, isG = false) { 170 let gma = {}; 171 if (isI) { 172 gma = { 173 type: "image", 174 closeBtnInside: false, 175 fixedContentPos: false, 176 }; 177 } else { 178 gma = { 179 type: "iframe", 180 mainClass: "mfp-fade", 181 removalDelay: 160, 182 preloader: false, 183 fixedContentPos: false, 184 }; 185 } 186 if (isG) { 187 gma.gallery = { 188 enabled: true, 189 navigateByImgClick: true, 190 preload: [0, 1], // Will preload 0 - before current, and 1 after the current image 191 }; 192 gma.callbacks = { 193 elementParse: function (item) { 194 if (item.el[0].getAttribute("data-media-type") === "g-popup-video") { 195 item.type = "iframe"; 196 } else { 197 item.type = "image"; 198 } 199 }, 200 }; 201 } 202 if (typeof $.fn.magnificPopup !== "undefined") { 203 gThis.magnificPopup(gma); 204 } 205 } 206 207 /*easyPieChart*/ 208 function gEasyPieChart(gThis) { 209 let gea = { 210 barColor: gThis.data("barcolor"), 211 trackColor: gThis.data("trackcolor"), 212 scaleColor: gThis.data("scalecolor"), 213 size: gThis.data("size"), 214 lineCap: gThis.data("linecap"), 215 animate: gThis.data("animate"), 216 lineWidth: gThis.data("linewidth"), 217 }; 218 if (typeof $.fn.easyPieChart === "function") { 219 gThis.easyPieChart(gea); 220 } 221 } 222 223 /*CountUP*/ 224 function gCountUp(gThis) { 225 let startValue = parseInt(gThis.data("start")), 226 endValue = parseInt(gThis.data("end")), 227 duration = parseInt(gThis.data("duration")); 228 229 if (typeof CountUp === "function") { 230 let nCountUp = new CountUp(gThis[0], startValue, endValue, 0, duration); 231 nCountUp.start(); 232 } 233 } 234 235 function gIsEleInView(elem) { 236 let docViewTop = $(window).scrollTop(), 237 docViewBottom = docViewTop + $(window).height(), 238 elemTop = $(elem).offset().top, 239 elemBottom = elemTop + $(elem).height(); 240 241 return elemBottom <= docViewBottom && elemTop >= docViewTop; 242 } 243 244 function gTriggerCountUp(gThis) { 245 if (gIsEleInView(gThis)) { 246 if (!gThis.hasClass("g-c-loaded")) { 247 gThis.addClass("g-c-loaded"); 248 gCountUp(gThis); 249 } 250 } 251 } 252 253 function gTriggerPieChart(gThis) { 254 if (gIsEleInView(gThis)) { 255 if (!gThis.hasClass("g-c-loaded")) { 256 gThis.addClass("g-c-loaded"); 257 gEasyPieChart(gThis); 258 } 259 } 260 } 261 262 function gAddLoaded(gThis) { 263 if (gIsEleInView(gThis)) { 264 if (!gThis.hasClass("g-c-loaded")) { 265 gThis.addClass("g-c-loaded"); 266 gThis.css("width", gThis.attr("data-width") + "%"); 267 } 268 } 269 } 270 271 function gCountAndBar($wrap = null) { 272 if ($wrap) { 273 /*CountUP Trigger*/ 274 $wrap 275 .find(".gutentor-single-item-number,.gutentor-counter-number-main") 276 .each(function () { 277 gTriggerCountUp($(this)); 278 }); 279 280 /*easyPieChart Trigger*/ 281 $wrap 282 .find( 283 ".gutentor-progressbar-circular,.gutentor-element-progressbar-circular", 284 ) 285 .each(function () { 286 gTriggerPieChart($(this)); 287 }); 288 289 /*easyPieChart Trigger*/ 290 $wrap 291 .find( 292 ".gutentor-porgress-bar-item .progressbar,.gutentor-element-progressbar-box .gutentor-element-progressbar-horizontal", 293 ) 294 .each(function () { 295 gAddLoaded($(this)); 296 }); 297 } else { 298 /*CountUP Trigger*/ 299 $(".gutentor-single-item-number,.gutentor-counter-number-main").each( 300 function () { 301 gTriggerCountUp($(this)); 302 }, 303 ); 304 305 /*easyPieChart Trigger*/ 306 $( 307 ".gutentor-progressbar-circular,.gutentor-element-progressbar-circular", 308 ).each(function () { 309 gTriggerPieChart($(this)); 310 }); 311 312 /*easyPieChart Trigger*/ 313 $( 314 ".gutentor-porgress-bar-item .progressbar,.gutentor-element-progressbar-box .gutentor-element-progressbar-horizontal", 315 ).each(function () { 316 gAddLoaded($(this)); 317 }); 318 } 319 } 320 gCountAndBar(); 321 $(window).scroll(function () { 322 gCountAndBar(); 323 }); 324 /*Count Down*/ 325 function gCountDown(gThis) { 326 // Set the date we're counting down to 327 let gutentor_event_date = gThis.data("eventdate"); 328 if (gutentor_event_date === undefined || gutentor_event_date === null) { 329 gThis.html( 330 "<span>Please set validate Date and time for countdown </span>", 331 ); 332 return false; 333 } 334 let expired_text = gThis.data("expiredtext"), 335 gutentor_day = gThis.find(".day"), 336 gutentor_hour = gThis.find(".hour"), 337 gutentor_min = gThis.find(".min"), 338 gutentor_sec = gThis.find(".sec"), 339 gutentor_date_time = gutentor_event_date.split("T"); 340 if (gutentor_date_time.length !== 2) { 341 return false; 342 } 343 let date_collection = gutentor_date_time[0], 344 time_collection = gutentor_date_time[1], 345 date_explode = date_collection.split("-"); 346 347 if (date_explode.length !== 3) { 348 return false; 349 } 350 351 let time_explode = time_collection.split(":"); 352 if (time_explode.length !== 3) { 353 return false; 354 } 355 356 let gutentor_year_value = parseInt(date_explode[0]), 357 gutentor_month_value = parseInt(date_explode[1]) - 1, 358 gutentor_day_value = parseInt(date_explode[2]), 359 gutentor_hour_value = parseInt(time_explode[0]), 360 gutentor_minutes_value = parseInt(time_explode[1]), 361 gutentor_second_value = parseInt(time_explode[2]), 362 countDownDate = new Date( 363 gutentor_year_value, 364 gutentor_month_value, 365 gutentor_day_value, 366 gutentor_hour_value, 367 gutentor_minutes_value, 368 gutentor_second_value, 369 0, 370 ).getTime(); 371 372 // Update the count down every 1 second 373 let x = setInterval(function () { 374 // Get todays date and time 375 let now = new Date().getTime(); 376 377 // Find the distance between now an the count down date 378 let distance = countDownDate - now; 379 380 // Time calculations for days, hours, minutes and seconds 381 let days = Math.floor(distance / (1000 * 60 * 60 * 24)); 382 let hours = Math.floor( 383 (distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60), 384 ); 385 let minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)); 386 let seconds = Math.floor((distance % (1000 * 60)) / 1000); 387 388 // Display the result in the element 389 gutentor_day.text(days);
390 gutentor_hour.text(hours); 391 gutentor_min.text(minutes); 392 gutentor_sec.text(seconds); 393 // If the count down is finished, write some text 394 if (distance < 0) { 395 clearInterval(x); 396 const span = document.createElement("span"); 397 span.textContent = expired_text; // Automatically escapes HTML 398 gThis.html(span.outerHTML); // Insert the escaped <span> content 399 } 400 }, 1000); 401 } 402 403 /*Tabs*/ 404 function gTabs() { 405 gDocument.on("click", ".gutentor-tabs-list", function () { 406 let thisTabInside = $(this), 407 gutentorSingleItemIndex = thisTabInside.data("index"), 408 gTabsC = thisTabInside.closest(".gutentor-tabs"), 409 gTabsContentWrap = gTabsC.next(".gutentor-tabs-content-wrap"), 410 gTabsSingleContent = gTabsContentWrap.find( 411 "." + gutentorSingleItemIndex, 412 ); 413 414 gTabsSingleContent.siblings().removeClass("gutentor-tab-content-active"); 415 thisTabInside.siblings().removeClass("gutentor-tab-active"); 416 417 gTabsSingleContent.addClass("gutentor-tab-content-active"); 418 thisTabInside.addClass("gutentor-tab-active"); 419 }); 420 } 421 422 /*show more block*/ 423 function gShowMoreBlock(className) { 424 gDocument.on("click", className, function (e) { 425 e.preventDefault(); 426 if (className === ".gutentor-show-more-button") { 427 $(this) 428 .closest(".gutentor-single-item-content") 429 .addClass("show-more-content"); 430 } else if (className === ".gutentor-show-less-action-button") { 431 $(this) 432 .closest(".gutentor-single-item-content") 433 .removeClass("show-more-content"); 434 } else if (className === ".gutentor-adv-s-m-btn") { 435 $(this) 436 .closest(".g-m-advance-show-more") 437 .addClass("g-show-more-content"); 438 } else if (className === ".gutentor-adv-s-l-btn") { 439 $(this) 440 .closest(".g-m-advance-show-more") 441 .removeClass("g-show-more-content"); 442 } 443 }); 444 } 445 446 /*API*/ 447 function gP4GetLoader(type) { 448 let gP4Loader; 449 switch (type) { 450 case "gp4-animation-1": 451 gP4Loader = '<div class="gutentor-loading-wrap"></div>'; 452 break; 453 case "gp4-animation-2": 454 gP4Loader = 455 '<div class="gutentor-loading-wrap"><div class="gutentor-loading-2"><div></div><div></div><div></div></div></div>'; 456 break; 457 case "gp4-animation-3": 458 gP4Loader = 459 '<div class="gutentor-loading-wrap"><div class="gutentor-loading-3"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div></div>'; 460 break; 461 case "gp4-animation-4": 462 gP4Loader = '<div class="gutentor-loading-wrap"></div>'; 463 break; 464 case "gp4-animation-5": 465 gP4Loader = 466 '<div class="gutentor-loading-wrap"><div class="gutentor-loading-5"></div></div>'; 467 break; 468 default: 469 gP4Loader = ""; 470 break; 471 } 472 return gP4Loader; 473 } 474 475 function gApi(gAB, gParam, gAppend = false) { 476 gParam.innerBlockType = gAB.data("i-b"); 477 gParam.blockId = gAB.find(".gutentor-post-module").data("gbid"); 478 gParam.postId = gAB.data("gpid"); 479 480 /*Globally Add Tax and Term Data*/ 481 if (gAB.find(".gutentor-filter-navigation").length) { 482 gParam.gTax = gAB.find(".gutentor-filter-navigation").data("gtax"); 483 gParam.gTerm = gAB 484 .find(".gutentor-filter-item-active") 485 .children() 486 .attr("data-gterm"); 487 if ("gAll" === gParam.gTerm) { 488 gParam.allOpt = gAB 489 .find(".gutentor-filter-item-active") 490 .children() 491 .attr("data-all-opt"); 492 } 493 } else { 494 gParam.gTax = "default"; 495 gParam.gTerm = "default"; 496 } 497 if (!gParam.paged) { 498 gParam.paged = 1; 499 } 500 /*Search Field*/ 501 if (gAB.find(".g-fm-search").length) { 502 gParam.s = gAB.find(".g-fm-search").val(); 503 } 504 505 $.ajax({
506 type: "GET", 507 url: gutentorLS.restUrl + "gutentor-self-api/v1/gadvancedb", 508 data: gParam, 509 beforeSend: function (xhr) { 510 gAB.addClass(gAB.data("l-ani")); 511 xhr.setRequestHeader("X-WP-Nonce", gutentorLS.restNonce); 512 gAB.removeClass("gutentor-loaded"); 513 gAB 514 .find(".gutentor-post-module .grid-container") 515 .append(gP4GetLoader(gAB.data("l-ani"))); 516 }, 517 }) 518 .done(function (data) { 519 if (!gAppend) { 520 gAB.find(".gutentor-post-module").replaceWith(data.pBlog); 521 } else { 522 gAB 523 .find(".gutentor-post-module .grid-container .grid-row") 524 .append($(data.pBlog).find(".grid-container .grid-row").html()); 525 } 526 527 gAB 528 .find(".gutentor-pagination") 529 .children() //Select all the children of the parent 530 .not(":first-child") //Unselect the first child 531 .not(":last-child") //Unselect the last child 532 .remove(); 533 534 let paged = parseInt(gParam.paged), 535 max_num_pages = parseInt(data.max_num_pages); 536 537 gAB 538 .find(".gutentor-pagination") 539 .children(".gutentor-pagination-prev") 540 .after(data.pagination) 541 .children() 542 .attr("data-gpage", paged > 1 ? paged - 1 : 1); 543 gAB.attr("data-maxnumpages", max_num_pages); 544 gAB 545 .find(".gutentor-pagination") 546 .children(".gutentor-pagination-next") 547 .children() 548 .attr( 549 "data-gpage", 550 max_num_pages > paged ? paged + 1 : max_num_pages, 551 ); 552 553 /*disabled class*/ 554 if (paged <= 1) { 555 gAB 556 .find(".gutentor-pagination") 557 .children(".gutentor-pagination-prev") 558 .children() 559 .addClass("gutentor-disabled"); 560 gAB 561 .find(".gutentor-navigation") 562 .find(".g-nav-prev") 563 .addClass("gutentor-disabled"); 564 } else { 565 gAB 566 .find(".gutentor-pagination") 567 .children(".gutentor-pagination-prev") 568 .children() 569 .removeClass("gutentor-disabled"); 570 gAB 571 .find(".gutentor-navigation") 572 .find(".g-nav-prev") 573 .removeClass("gutentor-disabled"); 574 } 575 if (max_num_pages <= paged) { 576 gAB 577 .find(".gutentor-pagination") 578 .children(".gutentor-pagination-next") 579 .children() 580 .addClass("gutentor-disabled"); 581 gAB 582 .find(".gutentor-navigation") 583 .find(".g-nav-next") 584 .addClass("gutentor-disabled"); 585 586 /*for load more disabled class*/ 587 gAB 588 .find( 589 ".gutentor-post-footer.g-ap-load-more-template a.gutentor-button", 590 ) 591 .addClass("gutentor-disabled"); 592 } else { 593 gAB 594 .find(".gutentor-pagination") 595 .children(".gutentor-pagination-next") 596 .children() 597 .removeClass("gutentor-disabled"); 598 gAB 599 .find(".gutentor-navigation") 600 .find(".g-nav-next") 601 .removeClass("gutentor-disabled"); 602 603 /*for load more disabled class*/ 604 gAB 605 .find( 606 ".gutentor-post-footer.g-ap-load-more-template a.gutentor-button", 607 ) 608 .removeClass("gutentor-disabled"); 609 } 610 gAB.find(".gutentor-post-module").each(function () { 611 gReloadMasonry($(this)); 612 }); 613 }) 614 .fail(function (jqXHR, textStatus, errorThrown) { 615 console.log(jqXHR + " :: " + textStatus + " :: " + errorThrown); 616 }) 617 .always(function () { 618 $(".g-edd-cart .edd-no-js").hide(); 619 $(".g-edd-cart .edd-add-to-cart").addClass("edd-has-js"); 620 gAB.removeClass(gAB.data("l-ani")); 621 gAB.addClass("gutentor-loaded"); 622 gAB 623 .find(".gutentor-post-module .grid-container") 624 .find(".gutentor-loading-wrap") 625 .remove(); 626 }); 627 } 628 /*Filter Cats*/ 629 gDocument.on( 630 "click", 631 ".gutentor-filter-navigation .gutentor-filter-item>a", 632 function (e) { 633 e.preventDefault(); 634 635 let gThis = $(this), 636 gList = gThis.closest(".gutentor-filter-list"), 637 gAB = gThis.closest(".gutentor-advanced-post-module"); 638 639 if (gThis.parent().hasClass("gutentor-filter-item-active")) { 640 return false; 641 } 642 gList 643 .find(".gutentor-filter-item") 644 .removeClass("gutentor-filter-item-active"); 645 gThis.parent().addClass("gutentor-filter-item-active"); 646 647 /*for load more reset pagination */ 648 gAB 649 .find(".gutentor-post-footer.g-ap-load-more-template a.gutentor-button") 650 .removeAttr("data-gpage"); 651 652 /*Search reset*/ 653 if (gAB.find(".g-fm-search").length) { 654 gAB.find(".g-fm-search").val(""); 655 } 656 657 gApi(gAB, {}); 658 }, 659 ); 660 /*Numeric Pagination*/ 661 gDocument.on("click", ".gutentor-pagination a", function (e) { 662 e.preventDefault(); 663 664 let gThis = $(this), 665 gAB = gThis.closest(".gutentor-advanced-post-module"); 666 667 if (gThis.hasClass("gutentor-disabled")) { 668 return false; 669 } 670 if (gThis.parent().hasClass("gutentor-pagination-active")) { 671 return false; 672 }
673 let currentPage = gThis 674 .parent() 675 .siblings(".gutentor-pagination-active") 676 .children() 677 .attr("data-gpage"); 678 679 if (currentPage == gThis.attr("data-gpage")) { 680 return false; 681 } 682 let gParam = { 683 paged: gThis.attr("data-gpage"), 684 }; 685 if (parseInt(gAB.attr("data-maxnumpages")) < parseInt(gParam.paged)) { 686 return false; 687 } 688 gApi(gAB, gParam); 689 }); 690 /*Navigation*/ 691 gDocument.on("click", ".gutentor-navigation a", function (e) { 692 e.preventDefault(); 693 694 let gThis = $(this), 695 gNav = gThis.closest(".gutentor-navigation"), 696 gAB = gThis.closest(".gutentor-advanced-post-module"); 697 698 if (gThis.hasClass("gutentor-disabled")) { 699 return false; 700 } 701 let current_page = parseInt(gNav.attr("data-gpage")), 702 nextPage; 703 if (gThis.hasClass("g-nav-prev")) { 704 nextPage = current_page - 1; 705 } else { 706 nextPage = current_page + 1; 707 } 708 let gParam = { 709 paged: nextPage, 710 }; 711 712 gNav.attr("data-gpage", nextPage); 713 gApi(gAB, gParam); 714 }); 715 /*Load More*/ 716 gDocument.on( 717 "click", 718 ".gutentor-post-footer.g-ap-load-more-template a.gutentor-button", 719 function (e) { 720 e.preventDefault(); 721 722 let gThis = $(this), 723 gAB = gThis.closest(".gutentor-advanced-post-module"); 724 725 if (gThis.hasClass("gutentor-disabled")) { 726 return false; 727 } 728 729 if (!gThis.attr("data-gpage")) { 730 gThis.attr("data-gpage", 2); 731 } 732 let gParam = { 733 paged: gThis.attr("data-gpage"), 734 }; 735 gThis.attr("data-gpage", parseInt(gThis.attr("data-gpage")) + 1); 736 gApi(gAB, gParam, true); 737 }, 738 ); 739 /*Search Icon*/ 740 gDocument.on("click", ".g-search-icon", function (e) { 741 e.preventDefault(); 742 743 let gThis = $(this), 744 gAB = gThis.closest(".gutentor-advanced-post-module"); 745 746 /*commented on request of a user*/ 747 /*https://wordpress.org/support/topic/post-module-header-search-keywords/#post-15077989*/ 748 /* if( !gAB.find('.g-fm-search').val()){ 749 return false; 750 }*/ 751 gApi(gAB, {}); 752 }); 753 754 /*Search Enter*/ 755 $(document).on( 756 "keydown", 757 ".gutentor-advanced-post-module .g-fm-search", 758 function (e) { 759 let key = e.which; 760 if (key === 13) { 761 e.preventDefault(); 762 763 let gThis = $(this), 764 gAB = gThis.closest(".gutentor-advanced-post-module"); 765 /*commented on request of a user*/ 766 /*https://wordpress.org/support/topic/post-module-header-search-keywords/#post-15077989*/ 767 /* if( !gAB.find('.g-fm-search').val()){ 768 return false; 769 }*/ 770 771 gApi(gAB, {}); 772 } 773 }, 774 ); 775 776 /*Advanced popup*/ 777 function gAdvPopupOpen(gma, gThis) { 778 if (gThis.attr("devices")) { 779 let devices = JSON.parse(gThis.attr("devices")); 780 if (Array.isArray(devices)) { 781 if (devices.includes("desktop") && window.screen.width > 991) { 782 $.magnificPopup.open(gma); 783 } else if (devices.includes("mobile") && window.screen.width < 768) { 784 $.magnificPopup.open(gma); 785 } else if ( 786 devices.includes("tablet") && 787 window.screen.width >= 767 && 788 window.screen.width <= 991 789 ) { 790 $.magnificPopup.open(gma); 791 } 792 } 793 } else { 794 $.magnificPopup.open(gma); 795 } 796 } 797 798 let gIdleTime; 799 function gSetIdleTime(gma, gThis) { 800 window.onload = resetTimer; 801 window.onmousemove = resetTimer; 802 window.onmousedown = resetTimer; // catches touchscreen presses as well 803 window.ontouchstart = resetTimer; // catches touchscreen swipes as well 804 window.ontouchmove = resetTimer; // required by some devices 805 window.onclick = resetTimer; // catches touchpad clicks as well 806 window.onkeydown = resetTimer; 807 window.addEventListener("scroll", resetTimer, true); // improved; see comments 808 809 function resetTimer() { 810 clearTimeout(gIdleTime); 811 if (gThis.attr("timing")) { 812 gIdleTime = setTimeout(function () { 813 if (!gThis.attr("g-adv-popup-open")) { 814 gAdvPopupOpen(gma, gThis); 815 gThis.attr("g-adv-popup-open", true); 816 } 817 }, parseFloat(gThis.attr("timing")) * 1000); 818 } 819 } 820 } 821 822 function gInitAdvPopup() { 823 function gIsTrue(val) { 824 if (val && val == "1") { 825 return true; 826 } 827 return false; 828 } 829 830 let gma = {}, 831 gIndex = {}, 832 gCss = {}, 833 sideCss = ""; 834 $(".g-adv-popup").each(function (i) { 835 let gThis = $(this), 836 gMainClass = "g-adv-popup-mfp "; 837 gIndex[i] = {}; 838 gma[i] = {}; 839 gCss[i] = ".gadvpopupwow{visibility:hidden;}"; 840 if (gThis.attr("closeBtnCol")) { 841 gCss[i] += 842 "." + 843 gThis.attr("id") + 844 "-mfp" + 845 " .mfp-close{color:" + 846 gThis.attr("closeBtnCol") + 847 ";}"; 848 } 849 if (gThis.attr("bgCol") || gThis.attr("bgGradient")) { 850 let bgType = gThis.attr("bgType") ? gThis.attr("bgType") : "", 851 bgcolor = 852 bgType === "solid" && gThis.attr("bgCol") 853 ? gThis.attr("bgCol") 854 : "", 855 bgGradient = 856 bgType === "gradient" && gThis.attr("bgGradient") 857 ? gThis.attr("bgGradient") 858 : "",
859 bgGradient2 = bgType === "solid" && bgcolor ? "none" : "", 860 bgcolor2 = 861 bgType === "gradient" && gThis.attr("bgGradient") 862 ? "transparent" 863 : ""; 864 gCss[i] += 865 ".gutentor-active .mfp-bg{" + 866 GutentorGenerateCSS("background-color", bgcolor) + 867 GutentorGenerateCSS("background-image", bgGradient2) + 868 GutentorGenerateCSS("background-image", bgGradient) + 869 GutentorGenerateCSS("background-color", bgcolor2) + 870 "}"; 871 } 872 gMainClass += gThis.attr("id") + "-mfp "; 873 gma[i] = { 874 type: "inline", 875 items: { 876 src: "#" + gThis.attr("id"), 877 }, 878 }; 879 if (gThis.attr("type")) { 880 gMainClass += "g-adv-popup-" + gThis.attr("type") + " "; 881 if ("modal" === gThis.attr("wval")) { 882 gma[i].modal = true; 883 } 884 if ("modal" === gThis.attr("type")) { 885 if (gThis.attr("wval") && gThis.attr("wunit")) { 886 gCss[i] += 887 "." + 888 gThis.attr("id") + 889 "-mfp" + 890 " .mfp-container .mfp-content{width:" + 891 gThis.attr("wval") + 892 gThis.attr("wunit") + 893 ";}"; 894 } 895 } 896 897 if ("side" === gThis.attr("type") && gThis.attr("side")) { 898 if ((gThis.attr("x") || gThis.attr("y")) && gThis.attr("sideunit")) { 899 if ("top-left" === gThis.attr("side")) { 900 sideCss += 901 "left:" + 902 gThis.attr("x") + 903 gThis.attr("sideunit") + 904 " !important;"; 905 sideCss += 906 "top:" + 907 gThis.attr("y") + 908 gThis.attr("sideunit") + 909 " !important;"; 910 } else if ("top-right" === gThis.attr("side")) { 911 sideCss += 912 "right:" + 913 gThis.attr("x") + 914 gThis.attr("sideunit") + 915 " !important;"; 916 sideCss += 917 "top:" + 918 gThis.attr("y") + 919 gThis.attr("sideunit") + 920 " !important;"; 921 } else if ("bottom-left" === gThis.attr("side")) { 922 sideCss += 923 "left:" + 924 gThis.attr("x") + 925 gThis.attr("sideunit") + 926 " !important;"; 927 sideCss += 928 "bottom:" + 929 gThis.attr("y") + 930 gThis.attr("sideunit") + 931 " !important;"; 932 } else if ("bottom-right" === gThis.attr("side")) { 933 sideCss += 934 "right:" + 935 gThis.attr("x") + 936 gThis.attr("sideunit") + 937 " !important;"; 938 sideCss += 939 "bottom:" + 940 gThis.attr("y") + 941 gThis.attr("sideunit") + 942 " !important;"; 943 } 944 } 945 if (gThis.attr("wval") && gThis.attr("wunit")) { 946 sideCss += 947 "width:" + gThis.attr("wval") + gThis.attr("wunit") + ";"; 948 } 949 gCss[i] += "." + gThis.attr("id") + "-mfp" + " {" + sideCss + "}"; 950 gMainClass += "g-adv-popup-side-" + gThis.attr("side") + " "; 951 } 952 } 953 if (gMainClass) { 954 gma[i].mainClass = gMainClass; 955 } 956 gma[i].closeOnBgClick = gIsTrue(gThis.attr("closeonbgclick")); 957 gma[i].closeBtnInside = gIsTrue(gThis.attr("closebtninside")); 958 gma[i].showCloseBtn = gIsTrue(gThis.attr("showclosebtn")); 959 gma[i].enableEscapeKey = gIsTrue(gThis.attr("enableescapekey")); 960 gma[i].fixedContentPos = gIsTrue(gThis.attr("fixedcontentpos")); 961 gma[i].fixedBgPos = gIsTrue(gThis.attr("fixedbgpos")); 962 963 if (!gma[i].closeBtnInside && $("body").hasClass("admin-bar")) { 964 gCss[i] += "." + gThis.attr("id") + "-mfp" + " {top:32px !important;}"; 965 } 966 gma[i].callbacks = { 967 beforeOpen: function () { 968 if (gCss[i]) { 969 $("head").append( 970 '<style id="gutentor-adv-popup-style">' + gCss[i] + "</style>", 971 ); 972 } 973 if (gThis.attr("animation")) { 974 this.st.mainClass = 975 this.st.mainClass + " animated " + gThis.attr("animation"); 976 } 977 }, 978 open: function () { 979 gRefreshJS($(".mfp-container")); 980 /*WOW*/ 981 if (typeof WOW !== "undefined") { 982 let wow = new WOW({ 983 boxClass: "gadvpopupwow", 984 }); 985 wow.init(); 986 } 987 $(".mfp-bg").removeClass(this.st.mainClass); 988 989 if ( 990 "top" === gThis.attr("type") || 991 "bottom" === gThis.attr("type") || 992 "side" === gThis.attr("type") 993 ) { 994 $(".mfp-bg").remove(); 995 } 996 }, 997 close: function () { 998 $("#gutentor-adv-popup-style").remove(); 999 }, 1000 }; 1001 1002 if (gThis.attr("trigger")) { 1003 if ("load" === gThis.attr("trigger")) { 1004 if (gThis.attr("timing")) { 1005 setTimeout(function () { 1006 gAdvPopupOpen(gma[i], gThis); 1007 }, parseFloat(gThis.attr("timing")) * 1000); 1008 } else { 1009 gAdvPopupOpen(gma[i], gThis); 1010 } 1011 } else if ("click" === gThis.attr("trigger")) { 1012 gDocument.on("click", "." + gThis.attr("clickclass"), function (e) { 1013 e.preventDefault(); 1014 gAdvPopupOpen(gma[i], gThis); 1015 }); 1016 } else if ("idle" === gThis.attr("trigger")) { 1017 gSetIdleTime(gma[i], gThis); 1018 } else if ("scroll" === gThis.attr("trigger")) { 1019 gIndex[i].lastScrollTop = 0; 1020 gIndex[i].open = false; 1021 gIndex[i].lastDirection = ""; 1022 gIndex[i].scrollDistance = $(window).scrollTop(); 1023 gIndex[i].triggerDistance = 0; 1024 if (gThis.attr("sval")) { 1025 gIndex[i].triggerDistance = parseInt(gThis.attr("sval")); 1026 if (gThis.attr("sunit") && "%" === gThis.attr("sunit")) { 1027 gIndex[i].triggerDistance = 1028 ($(window).height() * gIndex[i].triggerDistance) / 100; 1029 } 1030 $(window).scroll(function (event) { 1031 if (!gIndex[i].open) { 1032 let st = $(this).scrollTop(); 1033 if (st > gIndex[i].lastScrollTop) { 1034 if ("downscroll" !== gIndex[i].lastDirection) { 1035 gIndex[i].scrollDistance = 1036 gIndex[i].scrollDistance - (st - gIndex[i].lastScrollTop); 1037 } else { 1038 gIndex[i].scrollDistance = 1039 gIndex[i].scrollDistance + (st - gIndex[i].lastScrollTop); 1040 } 1041 gIndex[i].lastDirection = "downscroll"; 1042 if ("top" === gThis.attr("direction")) { 1043 if (gIndex[i].scrollDistance > gIndex[i].triggerDistance) { 1044 gAdvPopupOpen(gma[i], gThis); 1045 gIndex[i].open = true; 1046 } 1047 } 1048 } else { 1049 if ("upscroll" !== gIndex[i].lastDirection) { 1050 gIndex[i].scrollDistance = 1051 gIndex[i].scrollDistance - (st - gIndex[i].lastScrollTop); 1052 } else { 1053 gIndex[i].scrollDistance = 1054 gIndex[i].scrollDistance + (gIndex[i].lastScrollTop - st); 1055 } 1056 gIndex[i].lastDirection = "upscroll"; 1057 if ("bottom" === gThis.attr("direction")) { 1058 if (gIndex[i].scrollDistance > gIndex[i].triggerDistance) { 1059 gAdvPopupOpen(gma[i], gThis); 1060 gIndex[i].open = true; 1061 } 1062 } 1063 } 1064 gIndex[i].lastScrollTop = st; 1065 } 1066 }); 1067 } 1068 } 1069 } 1070 });
1071 } 1072 function gAdvPopupData() { 1073 let gAllScripts = [], 1074 gAllStyles = []; 1075 1076 function getAllScripts() { 1077 let scripts = window.document.getElementsByTagName("script"); 1078 $(scripts).each(function () { 1079 if ($(this).attr("src")) { 1080 gAllScripts.push($(this).attr("src")); 1081 } 1082 }); 1083 } 1084 getAllScripts(); 1085 1086 function getAllStyles() { 1087 let links = window.document.getElementsByTagName("link"); 1088 $(links).each(function () { 1089 if ($(this).attr("href")) { 1090 gAllStyles.push($(this).attr("href")); 1091 } 1092 }); 1093 } 1094 getAllStyles(); 1095 1096 function filterContent(filterContent) { 1097 filterContent.find("script").each(function () { 1098 if (!gAllScripts.includes($(this).attr("src"))) { 1099 if ($(this).attr("src")) { 1100 $("head").append( 1101 "<script type='text/javascript' src='" + 1102 $(this).attr("src") + 1103 "' />", 1104 ); 1105 } 1106 } 1107 $(this).remove(); 1108 }); 1109 filterContent.find("link").each(function () { 1110 if (!gAllStyles.includes($(this).attr("href"))) { 1111 if ( 1112 $(this).attr("href") && 1113 $(this).attr("rel") && 1114 "stylesheet" === $(this).attr("rel") 1115 ) { 1116 $("head").append( 1117 "<link rel='stylesheet' href='" + $(this).attr("href") + "' />", 1118 ); 1119 } 1120 } 1121 $(this).remove(); 1122 }); 1123 filterContent.find(".wow").addClass("gadvpopupwow").removeClass("wow"); 1124 1125 gBody.append(filterContent); 1126 gInitAdvPopup(); 1127 } 1128 1129 if ("ajax" != gutentorLS.adv_popup_load) { 1130 filterContent($(".g-adv-popup")); 1131 } else { 1132 let gParam = { 1133 condition: gutentorLS.condition, 1134 }; 1135 $.ajax({
1136 type: "GET", 1137 url: gutentorLS.restUrl + "gutentor-self-api/v1/popup", 1138 data: gParam, 1139 beforeSend: function (xhr) { 1140 xhr.setRequestHeader("X-WP-Nonce", gutentorLS.restNonce); 1141 }, 1142 }) 1143 .done(function (data) { 1144 data && 1145 data.map((item, i) => { 1146 let dataContent = $(item); 1147 filterContent(dataContent); 1148 }); 1149 }) 1150 .fail(function (jqXHR, textStatus, errorThrown) { 1151 console.log(jqXHR + " :: " + textStatus + " :: " + errorThrown); 1152 }) 1153 .always(function () {}); 1154 } 1155 } 1156 1157 function GutentorGenerateCSS(prop, value) { 1158 if (value) { 1159 return `${prop}: ${value};`; 1160 } 1161 return ""; 1162 } 1163 1164 /*Page Disabled for Pagination*/ 1165 function gPageDisabled(gThis) { 1166 let gAB = gThis.closest(".gutentor-advanced-post-module"); 1167 if ( 1168 gAB.attr("data-maxnumpages") && 1169 parseInt(gAB.attr("data-maxnumpages")) < 2 1170 ) { 1171 gThis.addClass("gutentor-disabled"); 1172 } else { 1173 gThis.removeClass("gutentor-disabled"); 1174 } 1175 } 1176 1177 /*Popover Block*/ 1178 /*show popover content block*/ 1179 function gPopOver() { 1180 gDocument.on( 1181 "mouseenter", 1182 ".g-m-popover.g-po-e-hover .g-m-popover-normal", 1183 function (e) { 1184 $(this).next(".g-m-popover-content").removeClass("d-none"); 1185 }, 1186 ); 1187 gDocument.on( 1188 "mouseleave", 1189 ".g-m-popover.g-po-e-hover .g-m-popover-normal", 1190 function (e) { 1191 $(this).next(".g-m-popover-content").addClass("d-none"); 1192 }, 1193 ); 1194 gDocument.on( 1195 "click", 1196 ".g-m-popover.g-po-e-hover .g-m-popover-normal", 1197 function (e) { 1198 e.preventDefault(); 1199 }, 1200 ); 1201 gDocument.on( 1202 "click", 1203 ".g-m-popover.g-po-e-click .g-m-popover-normal", 1204 function (e) { 1205 $(this).next(".g-m-popover-content").toggleClass("d-none"); 1206 e.preventDefault(); 1207 }, 1208 ); 1209 $(".g-m-popover.g-m-popover-c-on") 1210 .find(".g-m-popover-content") 1211 .removeClass("d-none"); 1212 } 1213 1214 /*Acme Ticker*/ 1215 function gAcmeTicker(gThis) { 1216 let news_ticker_data = gThis.find(".gutentor-news-ticker-data"), 1217 news_ticker_Pause = gThis 1218 .find(".gutentor-news-ticker-controls") 1219 .find(".gutentor-news-ticker-pause"), 1220 news_ticker_up = gThis 1221 .find(".gutentor-news-ticker-controls") 1222 .find(".gutentor-news-ticker-prev"), 1223 news_ticker_down = gThis 1224 .find(".gutentor-news-ticker-controls") 1225 .find(".gutentor-news-ticker-next"); 1226 let options = { 1227 type: "horizontal", 1228 direction: "right", 1229 speed: 600, 1230 controls: { 1231 toggle: 1232 news_ticker_Pause /*Can be used for vertical/horizontal/marquee/typewriter*/, 1233 }, 1234 }; 1235 if (gThis.attr("data-type")) { 1236 options.type = gThis.attr("data-type"); 1237 if (gThis.attr("data-type") !== "marquee") { 1238 options.controls.prev = news_ticker_up; 1239 options.controls.next = news_ticker_down; 1240 } 1241 } 1242 if (gThis.attr("data-direction")) { 1243 options.direction = gThis.attr("data-direction"); 1244 } 1245 if (gThis.attr("data-speed")) { 1246 options.speed = Number(gThis.attr("data-speed")); 1247 } 1248 if (gThis.attr("data-pauseOnHover")) { 1249 options.pauseOnHover = "1" === gThis.attr("data-pauseOnHover"); 1250 } 1251 news_ticker_data.AcmeTicker(options); 1252 } 1253 1254 function gEddCartIcon(gThis) { 1255 let icon = gThis.attr("data-icon"), 1256 button_class = gThis.find(".gutentor-button"); 1257 if (button_class.hasClass("gutentor-icon-before")) { 1258 button_class.prepend( 1259 '<i class="gutentor-button-icon ' + icon + '" ></i>', 1260 ); 1261 } 1262 if (button_class.hasClass("gutentor-icon-after")) { 1263 button_class.append('<i class="gutentor-button-icon ' + icon + '" ></i>'); 1264 } 1265 } 1266 1267 function gFlexMenu(gThis) { 1268 /*FlexMenu ( Responsive Menu)*/ 1269 if (typeof $.fn.flexMenu !== "undefined") { 1270 if (gThis.length) { 1271 gThis.flexMenu({ 1272 threshold: 0, 1273 cutoff: 0, 1274 linkText: '<span class="screen-reader-text">More</span>', 1275 linkTextAll: '<span class="screen-reader-text">More</span>', 1276 linkTitle: "", 1277 linkTitleAll: "", 1278 showOnHover: gWindowWidth > 991 ? true : false, 1279 }); 1280 if (!gFlexInit) { 1281 gDocument.click(function (e) { 1282 let flexMenuPopup = $("ul.flexMenu-popup"); 1283 if ( 1284 !( 1285 $(e.target).closest("li.flexMenu-viewMore ").length > 0 || 1286 !flexMenuPopup.length || 1287 !flexMenuPopup.is(":visible") 1288 ) 1289 ) { 1290 $("li.flexMenu-viewMore > a").trigger("click"); 1291 } 1292 }); 1293 } 1294 gFlexInit = true; 1295 } 1296 } 1297 } 1298 1299 function gRefreshJS($wrap) { 1300 /*Counter and Bar*/ 1301 gCountAndBar($wrap); 1302 1303 /*Initilized disabled*/ 1304 $wrap 1305 .find(".gutentor-post-footer.g-ap-load-more-template a.gutentor-button") 1306 .each(function () { 1307 gPageDisabled($(this)); 1308 }); 1309 1310 /*Slick*/ 1311 if (typeof $.fn.slick !== "undefined") { 1312 $wrap.find(".gutentor-slider-wrapper").each(function () { 1313 gSlick($(this)); 1314 }); 1315 $wrap.find(".gutentor-module-slider-row").each(function () { 1316 gSlick($(this)); 1317 });
1318 $wrap.find(".gutentor-carousel-row").each(function () { 1319 gSlick($(this)); 1320 }); 1321 $wrap.find(".gutentor-image-carousel-row").each(function () { 1322 gSlick($(this)); 1323 }); 1324 $wrap.find(".gutentor-module-carousel-row").each(function () { 1325 gSlick($(this)); 1326 }); 1327 } 1328 1329 // Gutentor Countdown 1330 $wrap.find(".gutentor-countdown-wrapper").each(function () { 1331 gCountDown($(this)); 1332 }); 1333 1334 // gutentor popover blocks 1335 gPopOver(); 1336 1337 /*Acme Ticker*/ 1338 if (typeof $.fn.AcmeTicker !== "undefined") { 1339 $wrap.find(".gutentor-post-module-p5").each(function () { 1340 gAcmeTicker($(this)); 1341 }); 1342 } 1343 1344 /*edd add to cart*/ 1345 $wrap.find(".g-edd-cart").each(function () { 1346 gEddCartIcon($(this)); 1347 }); 1348 1349 /*Flex*/ 1350 gFlexMenu($wrap.find(".g-responsive-menu")); 1351 1352 /*Filter*/ 1353 gFilter(); 1354 1355 /*sticky sidebar*/ 1356 if (typeof $.fn.theiaStickySidebar !== "undefined") { 1357 $wrap.find(".gutentor-enable-sticky-column").each(function () { 1358 gTheiaStickySidebar($(this)); 1359 }); 1360 } 1361 1362 /*Video Autoplay*/ 1363 gVideoAutoplay(); 1364 1365 //Gutentor Gallery Box 1366 if (typeof $.fn.imagesLoaded !== "undefined") { 1367 let galleryWrapper = $wrap.find(".gutentor-gallery-wrapper"); 1368 galleryWrapper.each(function () { 1369 gGalleryMasonry($(this)); 1370 }); 1371 let postModule = $(".gutentor-post-module-p1"); 1372 postModule.each(function () { 1373 gPostModuleMasonry($(this)); 1374 }); 1375 } 1376 1377 /*Isotop Refresh*/ 1378 if (!gM11Init) { 1379 if (typeof $.fn.isotope === "function") { 1380 gM11(); 1381 } 1382 } 1383 1384 if (typeof $.fn.isotope !== "undefined") { 1385 if ($wrap.find(".g-gm-item-wrap").hasClass("isotope")) { 1386 $wrap.find(".g-gm-item-wrap").isotope("reloadItems").isotope(); 1387 } 1388 if ($wrap.find(".gutentor-filter-item-wrap").hasClass("isotope")) { 1389 $wrap 1390 .find(".gutentor-filter-item-wrap") 1391 .isotope("reloadItems") 1392 .isotope(); 1393 } 1394 } 1395 /*masonry Refresh*/ 1396 $wrap.find(".gutentor-gallery-wrapper").each(function () { 1397 let masonryBoxes = $(this); 1398 if (masonryBoxes.hasClass("enable-masonry")) { 1399 let container = masonryBoxes.find(".full-width-row"); 1400 container.masonry({ 1401 itemSelector: ".gutentor-gallery-item", 1402 }); 1403 } 1404 }); 1405 $wrap.find(".gutentor-post-module-p1").each(function () { 1406 let masonryBoxes = $(this); 1407 if (masonryBoxes.hasClass("g-masonry")) { 1408 let container = masonryBoxes.find(".grid-row"); 1409 container.masonry({ 1410 itemSelector: ".gutentor-post", 1411 }); 1412 } 1413 }); 1414 $wrap.find(".g-gm-module").each(function (i, item) { 1415 let thisFilterWrap = $(this); 1416 if (thisFilterWrap.hasClass("g-on-masonry")) { 1417 let container = thisFilterWrap.find(".g-gm-item-wrap"); 1418 container.masonry({ 1419 itemSelector: ".g-gm-col ", 1420 }); 1421 } 1422 }); 1423 } 1424 1425 /*Document ready function*/ 1426 gDocument.ready(function () { 1427 /*Gutentor Advanced Popup*/ 1428 if ( 1429 "is_admin" in gutentorLS && 1430 "is_on_adv_popup" in gutentorLS && 1431 "adv_popup_load" in gutentorLS && 1432 gutentorLS.is_on_adv_popup && 1433 !gutentorLS.is_admin 1434 ) { 1435 gAdvPopupData(); 1436 } 1437 1438 /*Magnific Popup close*/ 1439 gDocument.on("click", ".g-adv-popup-close", function (e) { 1440 e.preventDefault(); 1441 $.magnificPopup.close(); 1442 }); 1443 1444 /*WOW*/ 1445 if (typeof WOW !== "undefined") { 1446 new WOW().init(); 1447 } 1448 /*Magnific Popup*/ 1449 /* video popup and button link popup */ 1450 $(".gutentor-video-popup-holder").each(function () { 1451 gMagnificPopup($(this)); 1452 }); 1453 $(".g-v-btn").each(function () { 1454 gMagnificPopup($(this)); 1455 }); 1456 $(".g-v-fp-btn").each(function () { 1457 gMagnificPopup($(this)); 1458 }); 1459 $(".gutentor-element-button-link-popup").each(function () { 1460 gMagnificPopup($(this)); 1461 }); 1462 1463 /*Initilized disabled*/ 1464 $(".gutentor-post-footer.g-ap-load-more-template a.gutentor-button").each( 1465 function () { 1466 gPageDisabled($(this)); 1467 }, 1468 ); 1469 1470 /*Slick*/ 1471 if (typeof $.fn.slick !== "undefined") { 1472 $(".gutentor-slider-wrapper").each(function () { 1473 gSlick($(this)); 1474 }); 1475 $(".gutentor-module-slider-row").each(function () { 1476 gSlick($(this)); 1477 });
1478 $(".gutentor-carousel-row").each(function () { 1479 gSlick($(this)); 1480 }); 1481 $(".gutentor-image-carousel-row").each(function () { 1482 gSlick($(this)); 1483 }); 1484 $(".gutentor-module-carousel-row").each(function () { 1485 gSlick($(this)); 1486 }); 1487 } 1488 1489 /*Accordion*/ 1490 gDocument.on("click", ".gutentor-accordion-heading", function (e) { 1491 var gThis = $(this), 1492 accordion_content = gThis.closest(".gutentor-accordion-wrap"), 1493 accordion_item = gThis.closest(".gutentor-single-item"), 1494 accordion_details = accordion_item.find(".gutentor-accordion-body"), 1495 accordion_all_items = accordion_content.siblings( 1496 ".gutentor-accordion-wrap", 1497 ); 1498 1499 accordion_all_items.each(function () { 1500 $(this).find(".gutentor-accordion-body").slideUp(); 1501 $(this).find(".gutentor-accordion-heading").removeClass("active"); 1502 }); 1503 1504 if (accordion_details.is(":visible")) { 1505 accordion_details.slideUp().removeClass("gutentor-active-body"); 1506 gThis.removeClass("active"); 1507 } else { 1508 accordion_details.slideDown().addClass("gutentor-active-body"); 1509 gThis.addClass("active"); 1510 } 1511 e.preventDefault(); 1512 }); 1513 1514 /* Module Accordion*/ 1515 function moduleAccordion(gThis) { 1516 let a_g_p = gThis.closest(".gutentor-module-accordion"), 1517 a_item = gThis.closest(".gutentor-module-accordion-item"), 1518 a_details = a_item.find(".gutentor-module-accordion-body"), 1519 a_o_items = a_item.siblings(".gutentor-module-accordion-item"), 1520 a_i_wrap = gThis.find(".gutentor-module-accordion-icon"); 1521 1522 if (a_g_p.hasClass("gutentor-module-accordion-enable-toggle")) { 1523 a_o_items.removeClass("gutentor-module-accordion-active"); 1524 1525 a_o_items.each(function () { 1526 $(this).find(".gutentor-module-accordion-body").slideUp(); 1527 $(this) 1528 .find(".gutentor-module-accordion-icon") 1529 .removeClass("gutentor-module-accordion-icon-active"); 1530 }); 1531 } 1532 if (a_details.is(":visible")) { 1533 a_details.slideUp(); 1534 a_i_wrap.removeClass("gutentor-module-accordion-icon-active"); 1535 a_details.removeClass("gutentor-module-accordion-icon-active"); 1536 a_item.removeClass("gutentor-module-accordion-active"); 1537 } else { 1538 a_details.slideDown(); 1539 a_details.addClass("gutentor-module-accordion-icon-active"); 1540 a_i_wrap.addClass("gutentor-module-accordion-icon-active"); 1541 a_item.addClass("gutentor-module-accordion-active"); 1542 1543 gRefreshJS(a_details); 1544 } 1545 } 1546 gDocument.on( 1547 "click", 1548 ".gutentor-module-accordion-item-heading", 1549 function (e) { 1550 moduleAccordion($(this)); 1551 e.preventDefault(); 1552 }, 1553 ); 1554 gDocument.on( 1555 "keypress", 1556 ".gutentor-module-accordion-item-heading", 1557 function (e) { 1558 if (e.keyCode == 13) { 1559 moduleAccordion($(this)); 1560 e.preventDefault(); 1561 } 1562 }, 1563 ); 1564 1565 /* Table of content Accordion*/ 1566 gDocument.on("click", ".g-toc-header", function (e) { 1567 let gThis = $(this), 1568 toc_parent = gThis.closest(".gutentor-module-table-of-contents"), 1569 toc_body = toc_parent.find(".g-toc-body"); 1570 if (toc_parent.hasClass("g-enable-collapsible")) { 1571 if (toc_body.is(":visible")) { 1572 toc_body.slideUp(); 1573 gThis.removeClass("g-collapsible-active"); 1574 } else { 1575 gThis.addClass("g-collapsible-active"); 1576 toc_body.slideDown(); 1577 } 1578 } 1579 e.preventDefault(); 1580 }); 1581 1582 /* Module Tab*/ 1583 function moduleTabs(gThis) { 1584 let gThisIndex = gThis.index(), 1585 gThisWrap = gThis.closest(".gutentor-module-tabs-wrap"), 1586 gThisWrapID = gThisWrap.data("id"), 1587 gThisContentID = ".gm-tc-" + gThisWrapID; 1588 if (gThis.hasClass("gutentor-tabs-nav-active")) { 1589 return; 1590 } 1591 gThis.addClass("gutentor-tabs-nav-active"); 1592 gThis.siblings().removeClass("gutentor-tabs-nav-active"); 1593 gThisWrap 1594 .find(gThisContentID) 1595 .eq(gThisIndex) 1596 .siblings() 1597 .removeClass("gutentor-tabs-content-active"); 1598 gThisWrap 1599 .find(gThisContentID) 1600 .eq(gThisIndex) 1601 .addClass("gutentor-tabs-content-active"); 1602 1603 /*Slick Fixed*/ 1604 gRefreshJS(gThisWrap.find(gThisContentID).eq(gThisIndex)); 1605 } 1606 gDocument.on("click", ".gutentor-module-tabs-item", function (e) { 1607 moduleTabs($(this)); 1608 e.preventDefault(); 1609 });
1610 gDocument.on("keypress", ".gutentor-module-tabs-item", function (e) { 1611 if (e.keyCode == 13) { 1612 moduleTabs($(this)); 1613 e.preventDefault(); 1614 } 1615 }); 1616 1617 /*Counter*/ 1618 gDocument.on("click", ".gutentor-countup-wrap", function () { 1619 $(this).addClass("gutentor-countup-open"); 1620 }); 1621 gDocument.on("click", ".gutentor-countup-box-close", function () { 1622 $(".gutentor-countup-box").addClass("hide-input"); 1623 $(this).hide(); 1624 }); 1625 gDocument.on("click", ".gutentor-countup", function () { 1626 $(".gutentor-countup-box").removeClass("hide-input"); 1627 }); 1628 1629 // Gutentor Countdown 1630 $(".gutentor-countdown-wrapper").each(function () { 1631 gCountDown($(this)); 1632 }); 1633 1634 // gutentor popover blocks 1635 gPopOver(); 1636 1637 /*Flex Menu*/ 1638 gFlexMenu($(".g-responsive-menu")); 1639 1640 /*Show more Block*/ 1641 gShowMoreBlock(".gutentor-show-more-button"); 1642 gShowMoreBlock(".gutentor-show-less-action-button"); 1643 gShowMoreBlock(".gutentor-adv-s-m-btn"); 1644 gShowMoreBlock(".gutentor-adv-s-l-btn"); 1645 1646 /*Acme Ticker*/ 1647 if (typeof $.fn.AcmeTicker !== "undefined") { 1648 $(".gutentor-post-module-p5").each(function () { 1649 gAcmeTicker($(this)); 1650 }); 1651 /*Pause fixed*/ 1652 $(document).on("acmeTickerToggle", function (e, thisTicker) { 1653 $(thisTicker) 1654 .closest(".gutentor-news-ticker") 1655 .toggleClass("gutentor-ticker-pause"); 1656 }); 1657 } 1658 /*Tabs*/ 1659 gTabs(); 1660 1661 /*edd add to cart*/ 1662 $(".g-edd-cart").each(function () { 1663 gEddCartIcon($(this)); 1664 }); 1665 }); 1666 1667 /*Filter Module*/ 1668 function gM11() { 1669 let buttonM11Filters = {}, 1670 buttonM11Filter = {}, 1671 m11Regex = {}, 1672 m11FilWrap = $(".g-fm-module"), 1673 currentFilter; 1674 if (m11FilWrap.length) { 1675 m11FilWrap.find(".g-gm-item-wrap").isotope({ 1676 itemSelector: ".g-gm-col", 1677 layoutMode: "fitRows", 1678 filter: function () { 1679 let gThis = $(this), 1680 searchResult = 1681 currentFilter && m11Regex[currentFilter] 1682 ? gThis.text().match(m11Regex[currentFilter]) 1683 : true, 1684 buttonResult = 1685 currentFilter && buttonM11Filter[currentFilter] 1686 ? gThis.is(buttonM11Filter[currentFilter]) 1687 : true; 1688 1689 return searchResult && buttonResult; 1690 }, 1691 }); 1692 } 1693 gDocument.on("click", ".g-fm-fi", function () { 1694 $(this).siblings().removeClass("g-fm-active"); 1695 $(this).addClass("g-fm-active"); 1696 1697 let masonryBoxes = $(this).closest(".g-fm-module"); 1698 currentFilter = masonryBoxes.attr("data-filter-number"); 1699 let gThis = $(this); 1700 // get group key 1701 let btnGroup = gThis.parents(".g-fm-fis"), 1702 filterGroup = btnGroup.attr("data-filter-group"); 1703 1704 // set filter for group 1705 if (buttonM11Filters[currentFilter] === undefined) { 1706 buttonM11Filters[currentFilter] = {}; 1707 } 1708 buttonM11Filters[currentFilter][filterGroup] = gThis.attr("data-filter"); 1709 // combine filters 1710 if (buttonM11Filter[currentFilter] === undefined) { 1711 buttonM11Filter[currentFilter] = {}; 1712 } 1713 buttonM11Filter[currentFilter] = gConcatValues( 1714 buttonM11Filters[currentFilter], 1715 ); 1716 // Isotope arrange 1717 let this_grid_wrapper = gThis 1718 .closest(".g-fm-module") 1719 .find(".g-gm-item-wrap"); 1720 this_grid_wrapper.isotope(); 1721 }); 1722 1723 $(".g-gm-module") 1724 .find(".grid-container") 1725 .each(function () { 1726 let str = $(".g-nothing-found-text").text(); 1727 str = str ? str : "Nothing Found!!!!"; 1728 let html = '<div class="g-nothing-found">' + str + "</div>"; 1729 $(this).append(html); 1730 $(".g-nothing-found").hide(); 1731 }); 1732 1733 //filter search 1734 function filterSearchEvent(thisData) { 1735 let masonryBoxes = thisData.closest(".g-fm-module"); 1736 currentFilter = masonryBoxes.attr("data-filter-number"); 1737 m11Regex[currentFilter] = new RegExp(thisData.val(), "gi"); 1738 let this_grid_wrapper = thisData 1739 .closest(".g-fm-module") 1740 .find(".g-gm-item-wrap"); 1741 1742 this_grid_wrapper.isotope(); 1743 // display message box if no filtered items 1744 if (!this_grid_wrapper.data("isotope").filteredItems.length) { 1745 $(".g-nothing-found").show(); 1746 } else { 1747 $(".g-nothing-found").hide(); 1748 } 1749 } 1750
1751 /* use value of search field to filter*/ 1752 $(".g-fm-module .g-fm-search").keyup( 1753 gDebounce(function () { 1754 filterSearchEvent($(this)); 1755 }), 1756 ); 1757 $(".g-fm-module .g-fm-search").on("search", function () { 1758 filterSearchEvent($(this)); 1759 }); 1760 1761 // flatten object by concatting values 1762 function gConcatValues(obj) { 1763 let value = ""; 1764 for (let prop in obj) { 1765 value += obj[prop]; 1766 } 1767 return value; 1768 } 1769 1770 // gDebounce so filtering doesn't happen every millisecond 1771 function gDebounce(fn, threshold) { 1772 let timeout; 1773 threshold = threshold || 100; 1774 return function gDebounced() { 1775 clearTimeout(timeout); 1776 let args = arguments; 1777 let _this = this; 1778 1779 function delayed() { 1780 fn.apply(_this, args); 1781 } 1782 timeout = setTimeout(delayed, threshold); 1783 }; 1784 } 1785 1786 gDocument.find(".g-fm-module").each(function (i, item) { 1787 let thisFilterWrap = $(this); 1788 thisFilterWrap.attr("data-filter-number", i); 1789 }); 1790 gDocument.find(".g-gm-module").each(function (i, item) { 1791 let thisFilterWrap = $(this); 1792 if (thisFilterWrap.hasClass("g-on-masonry")) { 1793 let container = thisFilterWrap.find(".g-gm-item-wrap"); 1794 container.isotope({ layoutMode: "masonry" }); 1795 } 1796 let thisFilterWrapPopup = $(this); 1797 if (thisFilterWrapPopup.hasClass("g-on-popup")) { 1798 let container = thisFilterWrapPopup.find(".g-gm-item-wrap"); 1799 if (typeof $.fn.imagesLoaded !== "undefined") { 1800 container.imagesLoaded(function () { 1801 thisFilterWrapPopup.fadeIn("slow"); 1802 container.masonry({ 1803 itemSelector: ".g-gm-col ", 1804 }); 1805 }); 1806 } 1807 } 1808 let popupIcon = thisFilterWrapPopup.find(".g-gm-popup"), 1809 popupMediaType = popupIcon.attr("data-media-type"); 1810 if (popupMediaType === "g-popup-img") { 1811 gMagnificPopup(popupIcon, true, true); 1812 } else { 1813 gMagnificPopup(popupIcon, false, true); 1814 } 1815 }); 1816 1817 gM11Init = true; 1818 } 1819 1820 /*Gallery Gutenberg Module Popup Link 1821 * gMagnificPopup initilize above */ 1822 gDocument.on("click", ".g-gm-popup", function (e) { 1823 e.preventDefault(); 1824 $(this).magnificPopup.open(); 1825 }); 1826 1827 /*Gallery Wrapper Masonry*/ 1828 function gGalleryMasonry(masonryBoxes) { 1829 if (masonryBoxes.hasClass("enable-masonry")) { 1830 let container = masonryBoxes.find(".full-width-row"); 1831 1832 container.imagesLoaded(function () { 1833 masonryBoxes.fadeIn("slow"); 1834 container.masonry({ 1835 itemSelector: ".gutentor-gallery-item", 1836 }); 1837 }); 1838 } 1839 gMagnificPopup(masonryBoxes.find(".image-gallery"), true, true); 1840 } 1841 1842 function gPostModuleMasonry(masonryBoxes) { 1843 if (masonryBoxes.hasClass("g-masonry")) { 1844 let container = masonryBoxes.find(".grid-row"); 1845 container.imagesLoaded(function () { 1846 masonryBoxes.fadeIn("slow"); 1847 container.masonry({ 1848 itemSelector: ".gutentor-post", 1849 }); 1850 }); 1851 } 1852 } 1853 1854 function gReloadMasonry(masonryBoxes) { 1855 if (masonryBoxes.hasClass("g-masonry")) { 1856 let container = masonryBoxes.find(".grid-row"); 1857 container.imagesLoaded(function () { 1858 container.masonry("destroy"); 1859 }); 1860 } 1861 gPostModuleMasonry(masonryBoxes); 1862 } 1863 1864 /*Video Autoplay */ 1865 function gVideoAutoplay() { 1866 let videos = document.getElementsByClassName("gutentor-bg-video"), 1867 i; 1868 for (i = 0; i < videos.length; i++) { 1869 if (videos[i].hasAttribute("autoplay")) { 1870 if (!videos[i].playing) { 1871 if (!videos[i].hasAttribute("muted")) { 1872 videos[i].muted = true; 1873 } 1874 videos[i].play(); 1875 } 1876 } 1877 } 1878 } 1879 1880 /*Filter*/ 1881 function gFilter() { 1882 //Gutentor filter Box 1883 let buttonFilters = {}, 1884 buttonFilter = {}, 1885 qsRegex = {}, 1886 filter_wrap = $(".gutentor-filter-item-wrap"), 1887 currentFilter; 1888 if (filter_wrap.length) { 1889 filter_wrap.isotope({ 1890 itemSelector: ".gutentor-gallery-item", 1891 layoutMode: "fitRows", 1892 filter: function () { 1893 let gThis = $(this); 1894 let searchResult = 1895 currentFilter && qsRegex[currentFilter] 1896 ? gThis.text().match(qsRegex[currentFilter]) 1897 : true; 1898 let buttonResult = 1899 currentFilter && buttonFilter[currentFilter] 1900 ? gThis.is(buttonFilter[currentFilter]) 1901 : true; 1902 return searchResult && buttonResult; 1903 }, 1904 }); 1905 } 1906 gDocument.on("click", ".gutentor-filter-btn", function () { 1907 $(this).siblings().removeClass("gutentor-filter-btn-active"); 1908 $(this).addClass("gutentor-filter-btn-active"); 1909 1910 let masonryBoxes = $(this).closest(".gutentor-filter-wrapper"); 1911 currentFilter = masonryBoxes.attr("data-filter-number"); 1912 let gThis = $(this); 1913 // get group key 1914 let $buttonGroup = gThis.parents(".gutentor-filter-group"), 1915 filterGroup = $buttonGroup.attr("data-filter-group"); 1916 1917 // set filter for group 1918 if (buttonFilters[currentFilter] === undefined) { 1919 buttonFilters[currentFilter] = {}; 1920 } 1921 buttonFilters[currentFilter][filterGroup] = gThis.attr("data-filter");
1922 // combine filters 1923 if (buttonFilter[currentFilter] === undefined) { 1924 buttonFilter[currentFilter] = {}; 1925 } 1926 buttonFilter[currentFilter] = concatValues(buttonFilters[currentFilter]); 1927 // Isotope arrange 1928 let this_grid_wrapper = $(this) 1929 .closest(".gutentor-filter-container") 1930 .next(".gutentor-filter-item-wrap"); 1931 this_grid_wrapper.isotope(); 1932 }); 1933 // use value of search field to filter 1934 $(".gutentor-search-filter").keyup( 1935 debounce(function () { 1936 let masonryBoxes = $(this).closest(".gutentor-filter-wrapper"); 1937 currentFilter = masonryBoxes.attr("data-filter-number"); 1938 qsRegex[currentFilter] = new RegExp($(this).val(), "gi"); 1939 let this_grid_wrapper = $(this) 1940 .closest(".gutentor-filter-container") 1941 .next(".gutentor-filter-item-wrap"); 1942 1943 this_grid_wrapper.isotope(); 1944 }), 1945 ); 1946 1947 // flatten object by concatting values 1948 function concatValues(obj) { 1949 let value = ""; 1950 for (let prop in obj) { 1951 value += obj[prop]; 1952 } 1953 return value; 1954 } 1955 1956 // debounce so filtering doesn't happen every millisecond 1957 function debounce(fn, threshold) { 1958 let timeout; 1959 threshold = threshold || 100; 1960 return function debounced() { 1961 clearTimeout(timeout); 1962 let args = arguments; 1963 let _this = this; 1964 1965 function delayed() { 1966 fn.apply(_this, args); 1967 } 1968 timeout = setTimeout(delayed, threshold); 1969 }; 1970 } 1971 1972 gDocument.find(".gutentor-filter-wrapper").each(function (i, item) { 1973 let thisFilterWrap = $(this); 1974 thisFilterWrap.attr("data-filter-number", i); 1975 gMagnificPopup(thisFilterWrap.find(".image-gallery"), true, true); 1976 1977 let container = thisFilterWrap.find(".gutentor-filter-item-wrap"); 1978 1979 if (thisFilterWrap.hasClass("enable-masonry")) { 1980 container.isotope({ layoutMode: "masonry" }); 1981 } 1982 }); 1983 } 1984 1985 /*Sticky Sidebar*/ 1986 function gTheiaStickySidebar(gThis) { 1987 let stickyChildren = gThis 1988 .find(".grid-row:first") 1989 .children(".gutentor-single-column"), 1990 mTop = gThis.attr("data-top"), 1991 mBottom = gThis.attr("data-bottom"); 1992 1993 stickyChildren.theiaStickySidebar({ 1994 // Settings 1995 additionalMarginTop: parseInt(mTop), 1996 additionalMarginBottom: parseInt(mBottom), 1997 }); 1998 } 1999 /*Window Load*/ 2000 gWindow.on("load", function () { 2001 //Gutentor Gallery Box 2002 if (typeof $.fn.imagesLoaded !== "undefined") { 2003 let galleryWrapper = $(".gutentor-gallery-wrapper"); 2004 galleryWrapper.each(function () { 2005 gGalleryMasonry($(this)); 2006 }); 2007 let postModule = $(".gutentor-post-module-p1"); 2008 postModule.each(function () { 2009 gPostModuleMasonry($(this)); 2010 }); 2011 } 2012 2013 /*Filter*/ 2014 gFilter(); 2015 2016 /*sticky sidebar*/ 2017 if (typeof $.fn.theiaStickySidebar !== "undefined") { 2018 $(".gutentor-enable-sticky-column").each(function () { 2019 gTheiaStickySidebar($(this)); 2020 }); 2021 } 2022 2023 /*WooCommerce added cart*/ 2024 2025 $(document.body).on("added_to_cart", function (e, button) { 2026 setTimeout(function () { 2027 $(".gutentor-woo-add-to-cart .added_to_cart.wc-forward").addClass( 2028 "gutentor-button button gutentor-post-button", 2029 ); 2030 }, 1); 2031 }); 2032 2033 if (typeof $.fn.isotope !== "undefined") { 2034 /*m11 filter*/ 2035 gM11(); 2036 } 2037 2038 /*Video Autoplay*/ 2039 gVideoAutoplay(); 2040 }); 2041})(jQuery);
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.