1jQuery(document).ready(function($) { 2 "use strict"; 3 //SaaSpot On Has Div Remove Class In Another Div Script 4 if($('.saspot-main-wrap').has('.saspot-menu').length) { 5 $('.saspot-header').removeClass('saspot-sticky'); 6 }; 7 if (navigator.userAgent.search('Firefox') >= 0) { 8 $('html').addClass('firefox'); 9 $('body').find('.wow').closest('.elementor-widget-container').addClass('wow-class'); 10 } 11 12 // Menu Classes 13 $('.saspot-navigation > ul > li.normal-style ul').addClass('normal-style'); 14 15 //SaaSpot Sticky Script 16 $('.saspot-sticky').sticky ({ 17 topSpacing: 0, 18 zIndex: 99 19 }); 20 21 // Mean Menu 22 var $navmenu = $('nav'); 23 var $menu_starts = ($navmenu.data('nav') !== undefined) ? $navmenu.data('nav') : 1199; 24 $('.saspot-header .saspot-navigation').meanmenu({ 25 meanMenuContainer: '.saspot-header .header-right', 26 meanMenuOpen: '<span></span>', 27 meanMenuClose: '<span></span>', 28 meanExpand: '<i class="fa fa-angle-down"></i>', 29 meanContract: '<i class="fa fa-angle-up"></i>', 30 meanScreenWidth: $menu_starts, 31 }); 32 33 //SaaSpot Nice Select Script 34 $('select').niceSelect(); 35 36 $('.saspot-sidebar .saspot-widget.widget_nav_menu ul li, .saspot-sidebar .saspot-widget.widget_nav_menu ul').removeAttr("class"); 37 $('.footer-widget.widget_nav_menu ul li, .footer-widget.widget_nav_menu ul').removeAttr("class"); 38 $('.sitemap-item .bullet-list li, .sitemap-item .bullet-list ul').removeAttr("class"); 39 $('<span class="dropdown-arrow"></span>').prependTo('.saspot-fullscreen-navigation .saspot-navigation > ul li.has-dropdown'); 40 41 $('#user_login').attr( 'placeholder', 'Email address' ); 42 $('#user_pass').attr( 'placeholder', 'Password' ); 43 44 //SaaSpot Onclick Slideup Slidedown Parent And Add Class Script 45 $('.dropdown-arrow').on('click', function() { 46 var element = $(this).parent('.has-dropdown'); 47 if (element.hasClass('open')) { 48 element.removeClass('open'); 49 element.find('.has-dropdown').removeClass('open'); 50 element.find('.dropdown-nav').slideUp(); 51 } 52 else { 53 element.addClass('open'); 54 element.children('.dropdown-nav').slideDown(); 55 element.siblings('.has-dropdown').children('.dropdown-nav').slideUp(); 56 element.siblings('.has-dropdown').removeClass('open'); 57 element.siblings('.has-dropdown').find('.has-dropdown').removeClass('open'); 58 element.siblings('.has-dropdown').find('.dropdown-nav').slideUp(); 59 } 60 }); 61 $('.saspot-color').on('click', function() { 62 $('.saspot-brand-color').find('.copy-text').text('Click to copy.'); 63 $(this).parent('.saspot-brand-color').find('.copy-text').text('Copied!'); 64 var $temp = $("<input>"); 65 $("body").append($temp); 66 $temp.val($(this).parent('.saspot-brand-color').find('span').text()).select(); 67 document.execCommand("copy"); 68 $temp.remove(); 69 }); 70 71 $(window).load(function() { 72 73 //SaaSpot Onclick Get Text Script 74 $('.pricing-plan').each( function() { 75 var $plan = $(this); 76 $plan.find('.nav-link').on('click', function() { 77 $plan.find('.pricing-plan-title span').text($(this).text()); 78 }); 79 if($plan.find('.nav-link').hasClass('active')) { 80 $plan.find('.pricing-plan-title span').text($plan.find('.nav-link.active').text()); 81 }; 82 }); 83 84 if ($('div').hasClass('woocommerce-tabs')) { 85 $('.woocommerce-tabs').addClass('saspot-form'); 86 } 87 if ($('section').hasClass('shipping-calculator-form')) { 88 $('.shipping-calculator-form').addClass('saspot-form'); 89 } 90 if ($('form').hasClass('woocommerce-checkout')) { 91 $('.woocommerce-checkout').addClass('saspot-form'); 92 } 93 if ($('form').hasClass('woocommerce-form')) { 94 $('.woocommerce-form').addClass('saspot-form'); 95 } 96 97 function getId(url){ 98 var m = url.match(/[\\?\\&]v=([^\\?\\&]+)/); 99 var v = url.match(/https:\/\/(www\.)?vimeo.com\/(\d+)($|\/)/); 100 var d = url.match(/^.+dailymotion.com\/(video|hub)\/([^_]+)[^#]*(#video=([^_&]+))?/); 101 if ( !m && !v && !d) return null; 102 if(m) { 103 return m[1]; 104 } 105 if(v){ 106 return v[2]; 107 } 108 if(d){ 109 return d[2]; 110 } 111 } 112 $('.saspot-video-btn').each( function() { 113 var $link = $(this); 114 var myId; 115 var myUrl = $link.attr("data-src"); 116 myId = getId(myUrl); 117 118 if(myUrl.match(/[\\?\\&]v=([^\\?\\&]+)/)) { 119 $($link).attr("data-src", "https://www.youtube.com/embed/"+ myId + ""); 120 } 121 if(myUrl.match(/https:\/\/(www\.)?vimeo.com\/(\d+)($|\/)/)) { 122 $($link).attr("data-src", "https://player.vimeo.com/video/"+ myId + "?title=0&byline=0&portrait=0"); 123 } 124 if(myUrl.match(/^.+dailymotion.com\/(video|hub)\/([^_]+)[^#]*(#video=([^_&]+))?/)) { 125 $($link).attr("data-src", "https://iframespot.blogspot.com/ncr/?m=0&type=dv&url=https%3A%2F%2Fwww.dailymotion.com%2Fembed%2Fvideo%2F"+ myId + "%3Fapi%3D0%26autoplay%3D1%26info%3D0%26logo%3D0%26social%3D0%26related%3D0"); 126 } 127 }); 128 129 130 if($('div').hasClass('has-checker')) { 131 var checker = document.getElementById('checkme'); 132 var sendbtn = document.getElementById('register'); 133 checker.checked = false;
134 // when unchecked or checked, run the function 135 checker.onchange = function(){ 136 if(this.checked){ 137 sendbtn.disabled = false; 138 } else { 139 sendbtn.disabled = true; 140 } 141 } 142 } 143 144 //SaaSpot Hover Script 145 $('.header-contact-link, .looking-item, .client-item, .resource-item, .specialist-item, .job-item, .class-item, .environment-item, .video-wrap-inner, .promote-item, .common-feature-inner, .history-quality .saspot-image').hover ( 146 function() { 147 $(this).addClass('saspot-hover'); 148 }, 149 function() { 150 $(this).removeClass('saspot-hover'); 151 } 152 ); 153 154 //SaaSpot Set Equal Height Script 155 $('.saspot-item').matchHeight ({ 156 property: 'height' 157 }); 158 159 //SaaSpot Masonry Script 160 var $grid = $('.saspot-masonry').isotope ({ 161 itemSelector: '.masonry-item', 162 layoutMode: 'packery', 163 percentPosition: true, 164 isFitWidth: true, 165 }); 166 var filterFns = { 167 ium: function() { 168 var name = $(this).find('.name').text(); 169 return name.match(/ium$/); 170 } 171 }; 172 $('.masonry-filters').on('click', 'li a', function() { 173 var filterValue = $(this).attr('data-filter'); 174 filterValue = filterFns[ filterValue ] || filterValue; 175 $grid.isotope({ 176 filter: filterValue 177 }); 178 $('.saspot-masonry').find('.first').removeClass('first'); 179 $($grid.data('isotope').filteredItems[0].element).addClass('first'); 180 $grid.isotope('layout'); 181 }); 182 $('.masonry-filters').each(function(i, buttonGroup) { 183 var $buttonGroup = $(buttonGroup); 184 $buttonGroup.on('click', 'li a', function() { 185 $buttonGroup.find('.active').removeClass('active'); 186 $(this).addClass('active'); 187 }); 188 }); 189 190 //SaaSpot Preloader Script 191 $('.saspot-preloader').fadeOut(500); 192 193 if($('div').hasClass('swiper-slides')) { 194 $('.swiper-slides').each(function (index) { 195 //SaaSpot Swiper Slider Script 196 var animEndEv = 'webkitAnimationEnd animationend'; 197 var swipermw = $('.swiper-container.swiper-mousewheel').length ? true : false; 198 var swiperkb = $('.swiper-container.swiper-keyboard').length ? true : false; 199 var swipercentered = $('.swiper-container.swiper-center').length ? true : false; 200 var swiperautoplay = $('.swiper-container').data('autoplay'); 201 var swiperinterval = $('.swiper-container').data('interval'); 202 var swiperloop = $('.swiper-container').data('loop'); 203 var swipermousedrag = $('.swiper-container').data('mousedrag'); 204 var swipereffect = $('.swiper-container').data('effect'); 205 var swiperclikable = $('.swiper-container').data('clickpage'); 206 var swiperspeed = $('.swiper-container').data('speed'); 207 var swiperinteraction = $('.swiper-container').data('interaction'); 208 209 //SaaSpot Swiper Slides Script 210 var autoplay = swiperinterval; 211 var swiper = new Swiper($(this), { 212 autoplayDisableOnInteraction: swiperinteraction, 213 effect: swipereffect, 214 speed: swiperspeed, 215 loop: swiperloop, 216 paginationClickable: swiperclikable, 217 watchSlidesProgress: true, 218 autoplay: swiperautoplay, 219 simulateTouch: swipermousedrag, 220 pagination: { 221 el: '.swiper-pagination', 222 clickable: true, 223 }, 224 navigation: { 225 nextEl: '.swiper-button-next', 226 prevEl: '.swiper-button-prev', 227 }, 228 mousewheelControl: swipermw, 229 keyboardControl: swiperkb, 230 }); 231 swiper.on('slideChange', function (s) { 232 var currentSlide = $(swiper.slides[swiper.activeIndex]); 233 var elems = currentSlide.find('.animated') 234 elems.each(function() { 235 var $this = $(this); 236 var animationType = $this.data('animation'); 237 $this.addClass(animationType, 100).on(animEndEv, function() { 238 $this.removeClass(animationType); 239 }); 240 }); 241 }); 242 }); 243 } 244 245 }); 246 247 //SaaSpot Parallax And Get Inline CSS Script 248 $(window).resize(function() { 249 if (screen.width >= 992) { 250 $('.has-dropdown').hover ( 251 function() { 252 $(this).addClass('open'); 253 }, 254 function() { 255 $(this).removeClass('open'); 256 } 257 ); 258 }; 259 if (screen.width >= 768) { 260 $('.saspot-parallax').jarallax ({ 261 speed: 0.6, 262 }); 263 }; 264 if (screen.width >= 1200) { 265 $('.saspot-sticky-footer .main-wrap-inner').css('margin-bottom', $('.saspot-footer').outerHeight()); 266 }; 267 }); 268 $(window).trigger('resize'); 269 270 //SaaSpot Wow Animation Script 271 $('body').waypoint(function() { 272 new WOW().init(); 273 }, 274 { 275 offset: '100%', 276 triggerOnce: true, 277 }); 278 279 //SaaSpot Onclick Remove Script 280 $('.cookies-close').on('click', function() { 281 $('.saspot-cookies').fadeOut('normal', function() { 282 $(this).remove(); 283 }); 284 }); 285
286 //SaaSpot Owl Carousel Slider Script 287 $('.owl-carousel').each( function() { 288 var $carousel = $(this); 289 var $items = ($carousel.data('items') !== undefined) ? $carousel.data('items') : 1; 290 var $items_tablet = ($carousel.data('items-tablet') !== undefined) ? $carousel.data('items-tablet') : 1; 291 var $items_mobile_landscape = ($carousel.data('items-mobile-landscape') !== undefined) ? $carousel.data('items-mobile-landscape') : 1; 292 var $items_mobile_portrait = ($carousel.data('items-mobile-portrait') !== undefined) ? $carousel.data('items-mobile-portrait') : 1; 293 $carousel.owlCarousel ({ 294 loop : ($carousel.data('loop') !== undefined) ? $carousel.data('loop') : true, 295 items : $carousel.data('items'), 296 margin : ($carousel.data('margin') !== undefined) ? $carousel.data('margin') : 0, 297 dots : ($carousel.data('dots') !== undefined) ? $carousel.data('dots') : true, 298 nav : ($carousel.data('nav') !== undefined) ? $carousel.data('nav') : false, 299 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>"], 300 autoplay : ($carousel.data('autoplay') !== undefined) ? $carousel.data('autoplay') : false, 301 autoplayTimeout : ($carousel.data('autoplay-timeout') !== undefined) ? $carousel.data('autoplay-timeout') : 5000, 302 animateIn : ($carousel.data('animatein') !== undefined) ? $carousel.data('animatein') : false, 303 animateOut : ($carousel.data('animateout') !== undefined) ? $carousel.data('animateout') : false, 304 mouseDrag : ($carousel.data('mouse-drag') !== undefined) ? $carousel.data('mouse-drag') : true, 305 autoWidth : ($carousel.data('auto-width') !== undefined) ? $carousel.data('auto-width') : false, 306 autoHeight : ($carousel.data('auto-height') !== undefined) ? $carousel.data('auto-height') : false, 307 center : ($carousel.data('center') !== undefined) ? $carousel.data('center') : false, 308 responsiveClass: true, 309 dotsEachNumber: true, 310 smartSpeed: 600, 311 autoplayHoverPause: true, 312 responsive : { 313 0 : { 314 items : $items_mobile_portrait, 315 }, 316 480 : { 317 items : $items_mobile_landscape, 318 }, 319 768 : { 320 items : $items_tablet, 321 }, 322 992 : { 323 items : $items, 324 } 325 } 326 }); 327 var totLength = $('.owl-dot', $carousel).length; 328 $('.total-no', $carousel).html(totLength); 329 $('.current-no', $carousel).html(totLength); 330 $carousel.owlCarousel(); 331 $('.current-no', $carousel).html(1); 332 $carousel.on('changed.owl.carousel', function(event) { 333 var total_items = event.page.count; 334 var currentNum = event.page.index + 1; 335 $('.total-no', $carousel ).html(total_items); 336 $('.current-no', $carousel).html(currentNum); 337 }); 338 }); 339 340 $('.subscribe-form input[type=checkbox]').each( function() { 341 $(this).wrap('<span class="checkbox-icon-wrap"></span>'); 342 $('<span class="checkbox-icon"></span>').appendTo($(this).parent('.checkbox-icon-wrap')); 343 }); 344 $('.login-remember input[type=checkbox]').each( function() { 345 $(this).wrap('<span class="checkbox-icon-wrap"></span>'); 346 $('<span class="checkbox-icon"></span>').appendTo($(this).parent('.checkbox-icon-wrap')); 347 }); 348 $('.saspot-comment-form input[type=checkbox]').each( function() { 349 $(this).wrap('<span class="checkbox-icon-wrap"></span>'); 350 $('<span class="checkbox-icon"></span>').appendTo($(this).parent('.checkbox-icon-wrap')); 351 }); 352 353 //SaaSpot File Selector Script 354 $('.file-selector').change(function() { 355 $(this).parents('label').children('.file-title').text(this.files[0].name); 356 }); 357 $('.file-selector').appendTo('.FileSelector'); 358 359 //SaaSpot Boostrap Video Modal Script 360 $('<div class="modal modal-video fade" id="SaaSpotVideoModal"><div class="modal-dialog modal-lg modal-dialog-centered"><div class="modal-content"><div class="modal-body"><div class="embed-responsive embed-responsive-16by9"><iframe class="embed-responsive-item saspot-video-iframe" id="ModalVideoWrap"></iframe></div></div></div></div></div>').appendTo('body'); 361 var $videoSrc; 362 $('[data-target="#SaaSpotVideoModal"]').on('click', function() { 363 $videoSrc = $(this).data('src'); 364 }); 365 $('#SaaSpotVideoModal').on('shown.bs.modal', function (e) { 366 $('#ModalVideoWrap').attr('src',$videoSrc + "?rel=0&showinfo=0&modestbranding=1&autoplay=1"); 367 }); 368 $('#SaaSpotVideoModal').on('hide.bs.modal', function (e) { 369 $('#ModalVideoWrap').attr('src',$videoSrc); 370 }); 371 372 //SaaSpot Parallax Scroll Script 373 $('.saspot-menu ul li a').on('click', function() { 374 $('.saspot-menu ul li a').mPageScroll2id ({ 375 offset: '.sticky-wrapper', 376 scrollSpeed: 700, 377 }); 378 }); 379 $('.saspot-apps-section .masonry-filters ul li a').mPageScroll2id ({ 380 offset: 150, 381 scrollSpeed: 1300, 382 }); 383 384 //SaaSpot Counter Script 385 $('.saspot-counter').counterUp ({ 386 delay: 1, 387 time: 1000, 388 }); 389 390 //SaaSpot Multiple Checkbox Checked Script 391 $('.plan-feature-item > label input').on('click', function () { 392 $('.plan-feature-item input[type="checkbox"]').not(this).prop('checked', this.checked); 393 var Allfavorite = []; 394 $.each($("input[name='feature']:checked"), function(){ 395 Allfavorite.push($(this).val()); 396 }); 397 var checkedValue = Allfavorite.join("&"); 398 var Clink = $('.plan-feature-item').find(".saspot-btn").attr("data-link"); 399 $('.plan-feature-item').find(".saspot-btn").attr("href", Clink + checkedValue); 400 }); 401 402 $('.plan-feature-item .checkbox-wrap label input').on('click', function () { 403 var favorite = []; 404 $.each($("input[name='feature']:checked"), function(){ 405 favorite.push($(this).val()); 406 }); 407 var checkedValue = favorite.join("&"); 408 var Clink = $('.plan-feature-item').find(".saspot-btn").attr("data-link"); 409 $('.plan-feature-item').find(".saspot-btn").attr("href", Clink + checkedValue); 410 }); 411 $(".input-checkbox").change(function(){ 412 if ($('.input-checkbox:checked').length == $('.input-checkbox').length) {
413 $('.Minput-checkbox').prop('checked', true); 414 } else { 415 $('.Minput-checkbox').prop('checked', false); 416 } 417 }); 418 419 // Accordion Active Only One At a Time. 420 $('.collapse-others').each(function() { 421 var $this = $(this); 422 $('.collapse', $this).on('show.bs.collapse', function (e) { 423 var all = $this.find('.collapse'); 424 var actives = $this.find('.collapsing, .collapse.show'); 425 all.each(function (index, element) { 426 $(element).collapse('hide'); 427 }) 428 actives.each(function (index, element) { 429 $(element).collapse('show'); 430 }) 431 }); 432 }); 433 434 //SaaSpot Tooltip script 435 $('[data-toggle="tooltip"]').tooltip(); 436 var Tooltip = $.fn.tooltip.Constructor; 437 $.extend( Tooltip.Default, { 438 customClass: '', 439 }); 440 var _show = Tooltip.prototype.show; 441 Tooltip.prototype.show = function () { 442 _show.apply(this,Array.prototype.slice.apply(arguments)); 443 if ( this.config.customClass ) { 444 var tip = this.getTipElement(); 445 $(tip).addClass(this.config.customClass); 446 } 447 }; 448 449 //SaaSpot Add And Remove Class Script 450 $('.saspot-full-page .saspot-toggle').on('click', function() { 451 $('html').addClass('fullscreen-navigation-open'); 452 }); 453 $('.close-btn, .saspot-navigation-overlay').on('click', function() { 454 $('html').removeClass('fullscreen-navigation-open'); 455 }); 456 $('html:has(.saspot-full-page)').addClass('has-full-page'); 457 458 //SaaSpot Navigation Hover Script 459 $('.saspot-fullscreen-navigation .has-dropdown').hover ( 460 function() { 461 $(this).find('ul.dropdown-nav').first().stop(false, false).slideDown(300); 462 }, 463 function() { 464 $(this).find('ul.dropdown-nav').first().stop(false, false).slideUp(300); 465 } 466 ); 467 468 //SaaSpot Popup Picture Script 469 $('.saspot-popup').magnificPopup ({ 470 delegate: 'a', 471 type: 'image', 472 closeOnContentClick: false, 473 closeBtnInside: false, 474 mainClass: 'mfp-with-zoom mfp-img-mobile', 475 closeMarkup:'<div class="mfp-close" title="%title%"></div>', 476 image: { 477 verticalFit: true, 478 titleSrc: function(item) { 479 return item.el.attr('title') + ' · <a class="image-source-link" href="'+item.el.attr('data-source')+'" target="_blank">image source</a>'; 480 } 481 }, 482 gallery: { 483 enabled: true, 484 arrowMarkup:'<div title="%title%" class="mfp-arrow mfp-arrow-%dir%"></div>', 485 }, 486 zoom: { 487 enabled: true, 488 duration: 300, 489 opener: function(element) { 490 return element.find('*'); 491 } 492 } 493 }); 494 495 if ($('div').hasClass('saspot-popup')) { 496 $('.saspot-popup').find('a').attr("data-elementor-open-lightbox","no"); 497 } 498 if ($('div').hasClass('gdpr-privacy-bar')) { 499 $('.gdpr-privacy-bar').addClass("saspot-cookies"); 500 $('button.gdpr-agreement').addClass("cookies-link"); 501 502 } 503 504 //SaaSpot Back Top Script 505 if ($('div').hasClass('saspot-back-top')) { 506 var backtop = $('.saspot-back-top'); 507 var position = backtop.offset().top; 508 $(window).scroll(function() { 509 var windowposition = $(window).scrollTop(); 510 if(windowposition + $(window).height() == $(document).height()) { 511 backtop.removeClass('active'); 512 } 513 else if (windowposition > 150) { 514 backtop.addClass('active'); 515 } 516 else { 517 backtop.removeClass('active'); 518 } 519 }); 520 jQuery('.saspot-back-top a').on('click', function () { 521 jQuery('body,html').animate ({ 522 scrollTop: 0 523 }, 2000); 524 return false; 525 }); 526 } 527 528});
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.