1/* 2Template Name: Charity Addon for Elementor 3Author: NicheAddon 4Version: 1.0.0 5Email: [email protected] 6*/ 7 8(function($){ 9'use strict'; 10/*----- ELEMENTOR LOAD SWIPER CALL ---*/ 11function SwiperSliderInit(slider_el){ 12 //Atrakt Swiper Slider Script 13 let animEndEv = 'webkitAnimationEnd animationend'; 14 let swipermw = (slider_el.hasClass('swiper-mousewheel')) ? true : false; 15 let swiperkb = (slider_el.hasClass('swiper-keyboard')) ? true : false; 16 let swipercentered = (slider_el.hasClass('swiper-center')) ? true : false; 17 let swiperautoplay = slider_el.data('autoplay'); 18 let swiperinterval = slider_el.data('interval'); 19 let swiperloop = slider_el.data('loop'); 20 let swipermousedrag = slider_el.data('mousedrag'); 21 let swipereffect = slider_el.data('effect'); 22 let swiperclikable = slider_el.data('clickpage'); 23 let swiperspeed = slider_el.data('speed'); 24 let swiperinteraction = slider_el.data('interaction'); 25 26 let swipersitems = ( slider_el.data('items') ) ? slider_el.data('items') : 1; 27 let swiperstabitems = ( slider_el.data('tab-items') ) ? slider_el.data('tab-items') : 1; 28 let swipersmobileitems = ( slider_el.data('mobile-items') ) ? slider_el.data('mobile-items') : 1; 29 30 //Atrakt Swiper Slides Script 31 let autoplay = swiperinterval; 32 33 // Init elementor swiper 34 let Swiper = elementorFrontend.utils.swiper; 35 initSwiper(); 36 37 async function initSwiper() { 38 let slidervar = await new Swiper( slider_el, { 39 autoplayDisableOnInteraction: swiperinteraction, 40 slidesPerView: swipersitems, 41 effect: swipereffect, 42 speed: swiperspeed, 43 loop: swiperloop, 44 paginationClickable: swiperclikable, 45 watchSlidesProgress: true, 46 autoplay: swiperautoplay, 47 simulateTouch: swipermousedrag, 48 breakpoints: { 49 // when window width is >= 320px 50 320: { 51 slidesPerView: swipersmobileitems, 52 }, 53 // when window width is >= 480px 54 480: { 55 slidesPerView: swipersmobileitems, 56 }, 57 // when window width is >= 640px 58 640: { 59 slidesPerView: swiperstabitems, 60 }, 61 991: { 62 slidesPerView: swipersitems, 63 } 64 }, 65 pagination: { 66 el: '.swiper-pagination', 67 clickable: true, 68 }, 69 navigation: { 70 nextEl: '.swiper-button-next', 71 prevEl: '.swiper-button-prev', 72 }, 73 mousewheelControl: swipermw, 74 keyboardControl: swiperkb, 75 }); 76 slidervar.on('slideChange', function (s) { 77 let currentSlide = $(slidervar.slides[slidervar.activeIndex]); 78 let elems = currentSlide.find('.animated') 79 elems.each(function() { 80 let $this = $(this); 81 let animationType = $this.data('animation'); 82 $this.addClass(animationType, 100).on(animEndEv, function() { 83 $this.removeClass(animationType); 84 }); 85 }); 86 }); 87 } 88} 89 90/*----- ELEMENTOR LOAD FUNTION CALL ---*/ 91 92$( window ).on( 'elementor/frontend/init', function() { 93 //Owl Carousel Slider Script 94 var owl_carousel = function(){ 95 $('.owl-carousel').each( function() { 96 var $carousel = $(this); 97 var $items = ($carousel.data('items') !== undefined) ? $carousel.data('items') : 1; 98 var $items_tablet = ($carousel.data('items-tablet') !== undefined) ? $carousel.data('items-tablet') : 1; 99 var $items_mobile_landscape = ($carousel.data('items-mobile-landscape') !== undefined) ? $carousel.data('items-mobile-landscape') : 1; 100 var $items_mobile_portrait = ($carousel.data('items-mobile-portrait') !== undefined) ? $carousel.data('items-mobile-portrait') : 1; 101 $carousel.owlCarousel ({ 102 loop : ($carousel.data('loop') !== undefined) ? $carousel.data('loop') : true, 103 items : $carousel.data('items'), 104 margin : ($carousel.data('margin') !== undefined) ? $carousel.data('margin') : 0, 105 dots : ($carousel.data('dots') !== undefined) ? $carousel.data('dots') : true, 106 nav : ($carousel.data('nav') !== undefined) ? $carousel.data('nav') : false, 107 navText : ["<div class='slider-no-current'><span class='current-no'></span><span class='total-no'></span></div><span class='current-monials'></span>", "<div class='slider-no-next'></div><span class='next-monials'></span>"], 108 autoplay : ($carousel.data('autoplay') !== undefined) ? $carousel.data('autoplay') : false, 109 autoplayTimeout : ($carousel.data('autoplay-timeout') !== undefined) ? $carousel.data('autoplay-timeout') : 5000, 110 animateIn : ($carousel.data('animatein') !== undefined) ? $carousel.data('animatein') : false, 111 animateOut : ($carousel.data('animateout') !== undefined) ? $carousel.data('animateout') : false, 112 mouseDrag : ($carousel.data('mouse-drag') !== undefined) ? $carousel.data('mouse-drag') : true, 113 autoWidth : ($carousel.data('auto-width') !== undefined) ? $carousel.data('auto-width') : false, 114 autoHeight : ($carousel.data('auto-height') !== undefined) ? $carousel.data('auto-height') : false, 115 center : ($carousel.data('center') !== undefined) ? $carousel.data('center') : false, 116 responsiveClass: true, 117 dotsEachNumber: true, 118 smartSpeed: 600,
119 autoplayHoverPause: true, 120 responsive : { 121 0 : { 122 items : $items_mobile_portrait, 123 }, 124 480 : { 125 items : $items_mobile_landscape, 126 }, 127 768 : { 128 items : $items_tablet, 129 }, 130 992 : { 131 items : $items, 132 } 133 } 134 }); 135 var totLength = $('.owl-dot', $carousel).length; 136 $('.total-no', $carousel).html(totLength); 137 $('.current-no', $carousel).html(totLength); 138 $carousel.owlCarousel(); 139 $('.current-no', $carousel).html(1); 140 $carousel.on('changed.owl.carousel', function(event) { 141 var total_items = event.page.count; 142 var currentNum = event.page.index + 1; 143 $('.total-no', $carousel ).html(total_items); 144 $('.current-no', $carousel).html(currentNum); 145 }); 146 }); 147 }; // end 148 149 var item_hover_class = function( selector ){ 150 $(selector).on({ 151 mouseenter : function() { 152 $(this).addClass('nacep-hover'); 153 }, 154 mouseleave : function() { 155 $(this).removeClass('nacep-hover'); 156 } 157 }); 158 }; 159 160 var item_prev_class = function( selector ){ 161 $(selector).on({ 162 mouseenter : function() { 163 $(this).prevAll(selector).addClass('process-done'); 164 $(this).addClass('process-done'); 165 }, 166 mouseleave : function() { 167 $(this).prevAll(selector).removeClass('process-done'); 168 $(this).removeClass('process-done'); 169 } 170 }); 171 }; 172 173 //Charity Addon for Elementor Blog 174 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_basic_blog.default', function($scope, $){ 175 item_hover_class('.nacep-news-item'); 176 $('.nacep-item').matchHeight ({ 177 property: 'height' 178 }); 179 } ); 180 181 //Charity Addon for Elementor Contact 182 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_basic_contact.default', function($scope, $){ 183 item_hover_class('.nacep-contact-item'); 184 } ); 185 186 //Charity Addon for Elementor Gallery 187 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_basic_gallery.default', function($scope, $){ 188 item_hover_class('.nacep-gallery-item'); 189 $('.masonry-wrap').each(function(i, gridContainer) { 190 var $gridContainer = $(gridContainer); 191 var $grid = $gridContainer.find('.nacep-masonry').imagesLoaded(function() { 192 $grid.isotope ({ 193 itemSelector: '.masonry-item', 194 layoutMode: 'packery', 195 percentPosition: true, 196 isFitWidth: true, 197 }) 198 }); 199 $gridContainer.find('.masonry-filters').on('click', 'li a', function() { 200 var filterValue = $(this).attr('data-filter'); 201 $grid.isotope ({ 202 filter: filterValue, 203 }); 204 }); 205 }); 206 $('.masonry-filters').each( function( i, buttonGroup ) { 207 var $buttonGroup = $(buttonGroup); 208 $buttonGroup.on( 'click', 'li a', function() { 209 $buttonGroup.find('.active').removeClass('active'); 210 $(this).addClass('active'); 211 }); 212 }); 213 } ); 214 215 //Charity Addon for Elementor History 216 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_basic_history.default', function($scope, $){ 217 // item_hover_class('.nacep-history-item'); 218 owl_carousel(); 219 $('.nacep-item').matchHeight ({ 220 property: 'height' 221 }); 222 } ); 223 224 //Charity Addon for Elementor Process 225 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_basic_process.default', function($scope, $){ 226 item_prev_class('.nacep-process-item'); 227 } ); 228 229 //Charity Addon for Elementor Services 230 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_basic_services.default', function($scope, $){ 231 item_hover_class('.nacep-service-item'); 232 } ); 233 234 //Charity Addon for Elementor Slider 235 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_basic_slider.default', function($scope, $){ 236 //Charity Swiper Slider Script 237 let slider_el = $scope.find(".swiper-slides"); 238 SwiperSliderInit(slider_el); 239 } ); 240 241 //Charity Addon for Elementor Team 242 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_basic_team.default', function($scope, $){ 243 item_hover_class('.nacep-team-item'); 244 } ); 245 246 //Charity Addon for Elementor Testimonials 247 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_basic_testimonials.default', function($scope, $){ 248 item_hover_class('.nacep-testimonial-item'); 249 owl_carousel(); 250 } ); 251 252 //Charity Addon for Elementor Video Popup 253 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_basic_video.default', function($scope, $){ 254 item_hover_class('.nacep-video-wrap'); 255 } ); 256 257 // Charity Addon for Elementor Countdown 258 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_unique_countdown.default', function($scope, $){ 259 //Countdown Script 260 $('.nacep-countdown.static, .nacep-countdown.dynamic').each( function() { 261 var $countdown = $(this); 262 var date = $countdown.data("date"); 263 var format = $countdown.data("format"); 264 var count_format = format ? format : 'dHMS'; 265 // Plural Labels 266 var years = $countdown.data("years"); 267 var months = $countdown.data("months"); 268 var weeks = $countdown.data("weeks"); 269 var days = $countdown.data("days"); 270 var hours = $countdown.data("hours"); 271 var minutes = $countdown.data("minutes"); 272 var seconds = $countdown.data("seconds"); 273 // Singular Labels 274 var year = $countdown.data("year");
275 var month = $countdown.data("month"); 276 var week = $countdown.data("week"); 277 var day = $countdown.data("day"); 278 var hour = $countdown.data("hour"); 279 var minute = $countdown.data("minute"); 280 var second = $countdown.data("second"); 281 282 var austDay = new Date(); 283 austDay = new Date(date); 284 285 $countdown.countdown({ 286 until: austDay, 287 labels: [years,months,weeks,days,hours,minutes,seconds], 288 labels1: [year,month,week,day,hour,minute,second], 289 format: count_format, 290 padZeroes: true, 291 }); 292 }); 293 294 // Fake COuntdown Script 295 $('.nacep-countdown.fake').each( function() { 296 var $countdown = $(this); 297 var date = $countdown.data("date"); 298 var today = new Date(); 299 var newdate = new Date(); 300 newdate.setDate(today.getDate() + date); 301 var mm = today.getMonth() + 1; //January is 0! 302 var yyyy = today.getFullYear(); 303 today = new Date(newdate); 304 305 // Plural Labels 306 var years = $countdown.data("years"); 307 var months = $countdown.data("months"); 308 var weeks = $countdown.data("weeks"); 309 var days = $countdown.data("days"); 310 var hours = $countdown.data("hours"); 311 var minutes = $countdown.data("minutes"); 312 var seconds = $countdown.data("seconds"); 313 // Singular Labels 314 var year = $countdown.data("year"); 315 var month = $countdown.data("month"); 316 var week = $countdown.data("week"); 317 var day = $countdown.data("day"); 318 var hour = $countdown.data("hour"); 319 var minute = $countdown.data("minute"); 320 var second = $countdown.data("second"); 321 322 $(this).countdown({ 323 until: today, 324 labels: [years,months,weeks,days,hours,minutes,seconds], 325 labels1: [year,month,week,day,hour,minute,second], 326 padZeroes: true, 327 }); 328 }); 329 } ); 330 331 // Charity Addon for Elementor Urgent Cause 332 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_unique_urgent_cause.default', function($scope, $){ 333 //Countdown Script 334 $('.nacep-countdown.static, .nacep-countdown.dynamic').each( function() { 335 var $countdown = $(this); 336 var date = $countdown.data("date"); 337 var format = $countdown.data("format"); 338 var count_format = format ? format : 'dHMS'; 339 // Plural Labels 340 var years = $countdown.data("years"); 341 var months = $countdown.data("months"); 342 var weeks = $countdown.data("weeks"); 343 var days = $countdown.data("days"); 344 var hours = $countdown.data("hours"); 345 var minutes = $countdown.data("minutes"); 346 var seconds = $countdown.data("seconds"); 347 // Singular Labels 348 var year = $countdown.data("year"); 349 var month = $countdown.data("month"); 350 var week = $countdown.data("week"); 351 var day = $countdown.data("day"); 352 var hour = $countdown.data("hour"); 353 var minute = $countdown.data("minute"); 354 var second = $countdown.data("second"); 355 356 var austDay = new Date(); 357 austDay = new Date(date); 358 359 $countdown.countdown({ 360 until: austDay, 361 labels: [years,months,weeks,days,hours,minutes,seconds], 362 labels1: [year,month,week,day,hour,minute,second], 363 format: count_format, 364 padZeroes: true, 365 }); 366 }); 367 368 // Fake COuntdown Script 369 $('.nacep-countdown.fake').each( function() { 370 var $countdown = $(this); 371 var date = $countdown.data("date"); 372 var today = new Date(); 373 var newdate = new Date(); 374 newdate.setDate(today.getDate() + date); 375 var mm = today.getMonth() + 1; //January is 0! 376 var yyyy = today.getFullYear(); 377 today = new Date(newdate); 378 379 // Plural Labels 380 var years = $countdown.data("years"); 381 var months = $countdown.data("months"); 382 var weeks = $countdown.data("weeks"); 383 var days = $countdown.data("days"); 384 var hours = $countdown.data("hours"); 385 var minutes = $countdown.data("minutes"); 386 var seconds = $countdown.data("seconds"); 387 // Singular Labels 388 var year = $countdown.data("year"); 389 var month = $countdown.data("month"); 390 var week = $countdown.data("week"); 391 var day = $countdown.data("day"); 392 var hour = $countdown.data("hour"); 393 var minute = $countdown.data("minute"); 394 var second = $countdown.data("second"); 395 396 $(this).countdown({ 397 until: today,
398 labels: [years,months,weeks,days,hours,minutes,seconds], 399 labels1: [year,month,week,day,hour,minute,second], 400 padZeroes: true, 401 }); 402 }); 403 $('.circle-progressbar-wrap').each( function() { 404 var $bar = $(this); 405 var $color = ($bar.data('color') !== undefined) ? $bar.data('color') : '#55c981'; 406 var $fill = ($bar.data('fill') !== undefined) ? $bar.data('fill') : '#ffffff'; 407 var $reverse = ($bar.data('reverse') !== undefined) ? $bar.data('reverse') : true; 408 var $size = ($bar.data('size') !== undefined) ? $bar.data('size') : 150; 409 var $thickness = ($bar.data('thickness') !== undefined) ? $bar.data('thickness') : 10; 410 $('.circle-progressbar').circleProgress ({ 411 size: $size, 412 fill: { 413 color: $color 414 }, 415 thickness: $thickness, 416 emptyFill: $fill, 417 startAngle: 300, 418 reverse: $reverse, 419 lineCap: 'round', 420 animation: { 421 duration: 1800 422 } 423 }) 424 .on('circle-animation-progress', function (event, progress, stepValue) { 425 $(this).find('.circle-counter').text((stepValue * 100).toFixed(0)); 426 }); 427 }); 428 } ); 429 430 //Charity Addon for Elementor Needs 431 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_unique_peoples_need.default', function($scope, $){ 432 owl_carousel(); 433 } ); 434 435 //Charity Addon for Elementor Slider 436 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_unique_slider.default', function($scope, $){ 437 //Charity Swiper Slider Script 438 let slider_el = $scope.find(".swiper-slides"); 439 SwiperSliderInit(slider_el); 440 441 var delay = 0; 442 $('.progress-bar').each(function(i) { 443 $(this).delay( delay*i ).animate ({ 444 width: $(this).attr('aria-valuenow') + '%' 445 }, delay); 446 $(this).prop('Counter',0).animate ({ 447 Counter: $(this).text() 448 }, 449 { 450 duration: delay, 451 easing: 'swing', 452 }); 453 }); 454 } ); 455 456 //Charity Addon for Elementor Cause List 457 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_unique_cause_list.default', function($scope, $){ 458 var delay = 0; 459 $('.progress-bar').each(function(i) { 460 $(this).delay( delay*i ).animate ({ 461 width: $(this).attr('aria-valuenow') + '%' 462 }, delay); 463 $(this).prop('Counter',0).animate ({ 464 Counter: $(this).text() 465 }, 466 { 467 duration: delay, 468 easing: 'swing', 469 }); 470 }); 471 } ); 472 473 //Charity Addon for Elementor Cause Single 474 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_unique_single_cause.default', function($scope, $){ 475 $('.circle-progressbar-wrap').each( function() { 476 var $bar = $(this); 477 var $color = ($bar.data('color') !== undefined) ? $bar.data('color') : '#55c981'; 478 var $fill = ($bar.data('fill') !== undefined) ? $bar.data('fill') : '#ffffff'; 479 var $reverse = ($bar.data('reverse') !== undefined) ? $bar.data('reverse') : true; 480 var $size = ($bar.data('size') !== undefined) ? $bar.data('size') : 150; 481 var $thickness = ($bar.data('thickness') !== undefined) ? $bar.data('thickness') : 10; 482 $('.circle-progressbar').circleProgress ({ 483 size: $size, 484 fill: { 485 color: $color 486 }, 487 thickness: $thickness, 488 emptyFill: $fill, 489 startAngle: 300, 490 reverse: $reverse, 491 lineCap: 'round', 492 animation: { 493 duration: 1800 494 } 495 }) 496 .on('circle-animation-progress', function (event, progress, stepValue) { 497 $(this).find('.circle-counter').text((stepValue * 100).toFixed(0)); 498 }); 499 }); 500 } ); 501 502 //Charity Addon for Elementor Filter 503 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_unique_cause_filter.default', function($scope, $){ 504 $('.masonry-wrap').each(function(i, gridContainer) { 505 var $gridContainer = $(gridContainer); 506 var $grid = $gridContainer.find('.nacep-masonry').imagesLoaded(function() { 507 $grid.isotope ({ 508 itemSelector: '.masonry-item', 509 layoutMode: 'packery', 510 percentPosition: true, 511 isFitWidth: true, 512 }) 513 }); 514 $gridContainer.find('.masonry-filters').on('click', 'li a', function() { 515 var filterValue = $(this).attr('data-filter'); 516 $grid.isotope ({ 517 filter: filterValue, 518 }); 519 }); 520 }); 521 $('.masonry-filters').each( function( i, buttonGroup ) { 522 var $buttonGroup = $(buttonGroup); 523 $buttonGroup.on( 'click', 'li a', function() { 524 $buttonGroup.find('.active').removeClass('active'); 525 $(this).addClass('active'); 526 }); 527 }); 528 owl_carousel();
529 var delay = 0; 530 $('.progress-bar').each(function(i) { 531 $(this).delay( delay*i ).animate ({ 532 width: $(this).attr('aria-valuenow') + '%' 533 }, delay); 534 $(this).prop('Counter',0).animate ({ 535 Counter: $(this).text() 536 }, 537 { 538 duration: delay, 539 easing: 'swing', 540 }); 541 }); 542 } ); 543 544 //Charity Addon for Elementor Cause List Charitable 545 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_unique_cause_list_charitable.default', function($scope, $){ 546 var delay = 0; 547 $('.progress-bar').each(function(i) { 548 $(this).delay( delay*i ).animate ({ 549 width: $(this).attr('aria-valuenow') + '%' 550 }, delay); 551 $(this).prop('Counter',0).animate ({ 552 Counter: $(this).text() 553 }, 554 { 555 duration: delay, 556 easing: 'swing', 557 }); 558 }); 559 } ); 560 561 // Charity Addon for Elementor Countdown Charitable 562 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_unique_countdown_charitable.default', function($scope, $){ 563 //Countdown Script 564 $('.nacep-countdown.static, .nacep-countdown.dynamic').each( function() { 565 var $countdown = $(this); 566 var date = $countdown.data("date"); 567 var format = $countdown.data("format"); 568 var count_format = format ? format : 'dHMS'; 569 // Plural Labels 570 var years = $countdown.data("years"); 571 var months = $countdown.data("months"); 572 var weeks = $countdown.data("weeks"); 573 var days = $countdown.data("days"); 574 var hours = $countdown.data("hours"); 575 var minutes = $countdown.data("minutes"); 576 var seconds = $countdown.data("seconds"); 577 // Singular Labels 578 var year = $countdown.data("year"); 579 var month = $countdown.data("month"); 580 var week = $countdown.data("week"); 581 var day = $countdown.data("day"); 582 var hour = $countdown.data("hour"); 583 var minute = $countdown.data("minute"); 584 var second = $countdown.data("second"); 585 586 var austDay = new Date(); 587 austDay = new Date(date); 588 589 $countdown.countdown({ 590 until: austDay, 591 labels: [years,months,weeks,days,hours,minutes,seconds], 592 labels1: [year,month,week,day,hour,minute,second], 593 format: count_format, 594 padZeroes: true, 595 }); 596 }); 597 598 // Fake COuntdown Script 599 $('.nacep-countdown.fake').each( function() { 600 var $countdown = $(this); 601 var date = $countdown.data("date"); 602 var today = new Date(); 603 var newdate = new Date(); 604 newdate.setDate(today.getDate() + date); 605 var mm = today.getMonth() + 1; //January is 0! 606 var yyyy = today.getFullYear(); 607 today = new Date(newdate); 608 609 // Plural Labels 610 var years = $countdown.data("years"); 611 var months = $countdown.data("months"); 612 var weeks = $countdown.data("weeks"); 613 var days = $countdown.data("days"); 614 var hours = $countdown.data("hours"); 615 var minutes = $countdown.data("minutes"); 616 var seconds = $countdown.data("seconds"); 617 // Singular Labels 618 var year = $countdown.data("year"); 619 var month = $countdown.data("month"); 620 var week = $countdown.data("week"); 621 var day = $countdown.data("day"); 622 var hour = $countdown.data("hour"); 623 var minute = $countdown.data("minute"); 624 var second = $countdown.data("second"); 625 626 $(this).countdown({ 627 until: today, 628 labels: [years,months,weeks,days,hours,minutes,seconds], 629 labels1: [year,month,week,day,hour,minute,second], 630 padZeroes: true, 631 }); 632 }); 633 } ); 634 635 // Charity Addon for Elementor Urgent Cause Charitable 636 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_unique_urgent_cause_charitable.default', function($scope, $){ 637 //Countdown Script 638 $('.nacep-countdown.static, .nacep-countdown.dynamic').each( function() { 639 var $countdown = $(this); 640 var date = $countdown.data("date"); 641 var format = $countdown.data("format"); 642 var count_format = format ? format : 'dHMS'; 643 // Plural Labels 644 var years = $countdown.data("years"); 645 var months = $countdown.data("months"); 646 var weeks = $countdown.data("weeks"); 647 var days = $countdown.data("days"); 648 var hours = $countdown.data("hours"); 649 var minutes = $countdown.data("minutes"); 650 var seconds = $countdown.data("seconds"); 651 // Singular Labels 652 var year = $countdown.data("year");
653 var month = $countdown.data("month"); 654 var week = $countdown.data("week"); 655 var day = $countdown.data("day"); 656 var hour = $countdown.data("hour"); 657 var minute = $countdown.data("minute"); 658 var second = $countdown.data("second"); 659 660 var austDay = new Date(); 661 austDay = new Date(date); 662 663 $countdown.countdown({ 664 until: austDay, 665 labels: [years,months,weeks,days,hours,minutes,seconds], 666 labels1: [year,month,week,day,hour,minute,second], 667 format: count_format, 668 padZeroes: true, 669 }); 670 }); 671 672 // Fake COuntdown Script 673 $('.nacep-countdown.fake').each( function() { 674 var $countdown = $(this); 675 var date = $countdown.data("date"); 676 var today = new Date(); 677 var newdate = new Date(); 678 newdate.setDate(today.getDate() + date); 679 var mm = today.getMonth() + 1; //January is 0! 680 var yyyy = today.getFullYear(); 681 today = new Date(newdate); 682 683 // Plural Labels 684 var years = $countdown.data("years"); 685 var months = $countdown.data("months"); 686 var weeks = $countdown.data("weeks"); 687 var days = $countdown.data("days"); 688 var hours = $countdown.data("hours"); 689 var minutes = $countdown.data("minutes"); 690 var seconds = $countdown.data("seconds"); 691 // Singular Labels 692 var year = $countdown.data("year"); 693 var month = $countdown.data("month"); 694 var week = $countdown.data("week"); 695 var day = $countdown.data("day"); 696 var hour = $countdown.data("hour"); 697 var minute = $countdown.data("minute"); 698 var second = $countdown.data("second"); 699 700 $(this).countdown({ 701 until: today, 702 labels: [years,months,weeks,days,hours,minutes,seconds], 703 labels1: [year,month,week,day,hour,minute,second], 704 padZeroes: true, 705 }); 706 }); 707 $('.circle-progressbar-wrap').each( function() { 708 var $bar = $(this); 709 var $color = ($bar.data('color') !== undefined) ? $bar.data('color') : '#55c981'; 710 var $fill = ($bar.data('fill') !== undefined) ? $bar.data('fill') : '#ffffff'; 711 var $reverse = ($bar.data('reverse') !== undefined) ? $bar.data('reverse') : true; 712 var $size = ($bar.data('size') !== undefined) ? $bar.data('size') : 150; 713 var $thickness = ($bar.data('thickness') !== undefined) ? $bar.data('thickness') : 10; 714 $('.circle-progressbar').circleProgress ({ 715 size: $size, 716 fill: { 717 color: $color 718 }, 719 thickness: $thickness, 720 emptyFill: $fill, 721 startAngle: 300, 722 reverse: $reverse, 723 lineCap: 'round', 724 animation: { 725 duration: 1800 726 } 727 }) 728 .on('circle-animation-progress', function (event, progress, stepValue) { 729 $(this).find('.circle-counter').text((stepValue * 100).toFixed(0)); 730 }); 731 }); 732 } ); 733 734 //Charity Addon for Elementor Slider Charitable 735 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_unique_slider_charitable.default', function($scope, $){ 736 //Charity Swiper Slider Script 737 let slider_el = $scope.find(".swiper-slides"); 738 SwiperSliderInit(slider_el); 739 var delay = 0; 740 $('.progress-bar').each(function(i) { 741 $(this).delay( delay*i ).animate ({ 742 width: $(this).attr('aria-valuenow') + '%' 743 }, delay); 744 $(this).prop('Counter',0).animate ({ 745 Counter: $(this).text() 746 }, 747 { 748 duration: delay, 749 easing: 'swing', 750 }); 751 }); 752 } ); 753 754 //Charity Addon for Elementor Slider Charitable 755 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_unique_slider_cause.default', function($scope, $){ 756 //Charity Swiper Slider Script 757 let slider_el = $scope.find(".swiper-slides"); 758 SwiperSliderInit(slider_el); 759 var delay = 0; 760 $('.progress-bar').each(function(i) { 761 $(this).delay( delay*i ).animate ({ 762 width: $(this).attr('aria-valuenow') + '%' 763 }, delay); 764 $(this).prop('Counter',0).animate ({ 765 Counter: $(this).text() 766 }, 767 { 768 duration: delay, 769 easing: 'swing', 770 }); 771 }); 772 } ); 773
774 //Charity Addon for Elementor Filter Charitable 775 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_unique_cause_filter_charitable.default', function($scope, $){ 776 $('.masonry-wrap').each(function(i, gridContainer) { 777 var $gridContainer = $(gridContainer); 778 var $grid = $gridContainer.find('.nacep-masonry').imagesLoaded(function() { 779 $grid.isotope ({ 780 itemSelector: '.masonry-item', 781 layoutMode: 'packery', 782 percentPosition: true, 783 isFitWidth: true, 784 }) 785 }); 786 $gridContainer.find('.masonry-filters').on('click', 'li a', function() { 787 var filterValue = $(this).attr('data-filter'); 788 $grid.isotope ({ 789 filter: filterValue, 790 }); 791 }); 792 }); 793 $('.masonry-filters').each( function( i, buttonGroup ) { 794 var $buttonGroup = $(buttonGroup); 795 $buttonGroup.on( 'click', 'li a', function() { 796 $buttonGroup.find('.active').removeClass('active'); 797 $(this).addClass('active'); 798 }); 799 }); 800 owl_carousel(); 801 var delay = 0; 802 $('.progress-bar').each(function(i) { 803 $(this).delay( delay*i ).animate ({ 804 width: $(this).attr('aria-valuenow') + '%' 805 }, delay); 806 $(this).prop('Counter',0).animate ({ 807 Counter: $(this).text() 808 }, 809 { 810 duration: delay, 811 easing: 'swing', 812 }); 813 }); 814 } ); 815 816 //Charity Addon for Elementor Cause Single Charitable 817 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_unique_single_cause_charitable.default', function($scope, $){ 818 $('.circle-progressbar-wrap').each( function() { 819 var $bar = $(this); 820 var $color = ($bar.data('color') !== undefined) ? $bar.data('color') : '#55c981'; 821 var $fill = ($bar.data('fill') !== undefined) ? $bar.data('fill') : '#ffffff'; 822 var $reverse = ($bar.data('reverse') !== undefined) ? $bar.data('reverse') : true; 823 var $size = ($bar.data('size') !== undefined) ? $bar.data('size') : 150; 824 var $thickness = ($bar.data('thickness') !== undefined) ? $bar.data('thickness') : 10; 825 $('.circle-progressbar').circleProgress ({ 826 size: $size, 827 fill: { 828 color: $color 829 }, 830 thickness: $thickness, 831 emptyFill: $fill, 832 startAngle: 300, 833 reverse: $reverse, 834 lineCap: 'round', 835 animation: { 836 duration: 1800 837 } 838 }) 839 .on('circle-animation-progress', function (event, progress, stepValue) { 840 $(this).find('.circle-counter').text((stepValue * 100).toFixed(0)); 841 }); 842 }); 843 } ); 844 845 //Chart 846 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_basic_chart.default', function($scope, $){ 847 //Chart Script 848 let $canvas = $scope.find(".eclt-chart canvas"); 849 let chartData = $canvas.data('chart'); 850 851 if (chartData) { 852 // Global configs 853 Chart.defaults.global.responsive = true; 854 Chart.defaults.global.maintainAspectRatio = false; 855 Chart.defaults.global.tooltips.backgroundColor = 'rgba(35,35,35,0.9)'; 856 Chart.defaults.global.tooltips.bodyFontSize = 13; 857 Chart.defaults.global.tooltips.bodyFontStyle = 'bold'; 858 Chart.defaults.global.tooltips.yPadding = 13; 859 Chart.defaults.global.tooltips.xPadding = 10; 860 Chart.defaults.doughnut.cutoutPercentage = 60; 861 862 // Create the chart 863 new Chart($canvas, { 864 type: chartData.type, 865 data: { 866 labels: chartData.labels, 867 datasets: chartData.datasets 868 }, 869 options: chartData.options 870 }); 871 } 872 } ); 873 874 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_basic_typewriter.default', function($scope, $) { 875 let target_el = $scope.find(".nacep-typewriter"); 876 let $id = target_el.attr('data-id'); 877 let $typed_id = target_el.attr('data-type-id'); 878 let $typeSpeed = target_el.attr('data-type-speed'); 879 let $backSpeed = target_el.attr('data-back-speed'); 880 let $backDelay = target_el.attr('data-back-delay'); 881 let $startDelay = target_el.attr('data-start-delay');
882 let $cursorChar = target_el.attr('data-cursor-char'); 883 884 let target_var = 'typed_' + $typed_id + '_' + $id; 885 886 target_var = new Typed('.' + target_var, { 887 typeSpeed: parseInt($typeSpeed), 888 backSpeed: parseInt($backSpeed), 889 backDelay: parseInt($backDelay), 890 startDelay: parseInt($startDelay), 891 cursorChar: $cursorChar, 892 loop: true, 893 stringsElement: '.'+ target_var +'_strings', 894 }); 895 } ); 896 897 elementorFrontend.hooks.addAction( 'frontend/element_ready/nacharity_basic_image_compare.default', function($scope, $) { 898 let target_el = $scope.find(".nacep-compare"); 899 let beforeUrl = target_el.data('before-url'); 900 let beforeTitle = target_el.data('before-title'); 901 let afterUrl = target_el.data('after-url'); 902 let afterTitle = target_el.data('after-title'); 903 let showLabels = target_el.data('show-labels'); 904 let startingPosition = target_el.data('starting-position'); 905 let compareStyle = target_el.data('compare-style'); 906 907 new juxtapose.JXSlider(target_el[0], [ 908 { 909 src: beforeUrl, 910 label: beforeTitle 911 }, 912 { 913 src: afterUrl, 914 label: afterTitle 915 } 916 ], { 917 animate: true, 918 showLabels: showLabels, 919 showCredits: false, 920 startingPosition: startingPosition + "%", 921 makeResponsive: true, 922 mode: compareStyle 923 }); 924 } ); 925 926} ); 927 928})(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.