1/* 2* Author: bslthemes 3* Author URL: http://themeforest.net/user/bslthemes 4*/ 5 6( function( $ ) { 7'use strict'; 8 9var elementor = 0; 10if ( window.location.href.indexOf('/?elementor-preview=') > -1 ) { 11 elementor = 1; 12} 13 14/* 15 Preloader 16*/ 17 18$(window).on("load", function() { 19 var preload = $('.preloader'); 20 preload.find('.spinner').fadeOut(function(){ 21 preload.fadeOut(function(){ 22 $('.grid-items').isotope( 'reloadItems' ).isotope(); 23 }); 24 }); 25}); 26 27$(function() { 28 'use strict'; 29 30 /* 31 Vars 32 */ 33 34 var width = $(window).width(); 35 var height = $(window).height(); 36 37 var header_offset_top = 15; 38 39 if(width <= 680) { 40 header_offset_top = $('.header').height(); 41 } 42 43 $(window).on('resize', function(){ 44 var width = $(window).width(); 45 if(width <= 680) { 46 header_offset_top = $('.header').height(); 47 } 48 }); 49 50 /* 51 Header Menu Desktop 52 */ 53 54 var container = $('.container'); 55 var card_items = $('.card-inner'); 56 var animation_in = container.data('animation-in'); 57 var animation_out = container.data('animation-out'); 58 var menu_items = $('.top-menu li'); 59 60 if( $('.top-menu-onepage').length ) { 61 62 $('.top-menu').on('click', 'a', function(){ 63 64 /* vars */ 65 var width = $(window).width(); 66 var id = $(this).attr('href'); 67 if(id=='') id = '#home'; 68 var card_item = $('#card-'+id.replace('#', '')); 69 var h = parseFloat(card_item.offset().top); 70 var menu_item = $(this).closest('li'); 71 72 if(id != '#home') { 73 window.location.hash = id; 74 } else { 75 history.replaceState(null, null, ' '); 76 } 77 78 if( width >= 1121 ) { 79 /* if desktop */ 80 if(!menu_item.hasClass('current-menu-item')) { 81 /* close card items */ 82 menu_items.removeClass('current-menu-item'); 83 container.find(card_items).removeClass('animated '+animation_in); 84 85 if($(container).hasClass('opened')) { 86 container.find(card_items).addClass('animated '+animation_out); 87 } 88 89 /* open card item */ 90 menu_item.addClass('current-menu-item'); 91 container.addClass('opened'); 92 container.find(card_item).removeClass('animated '+animation_out); 93 container.find(card_item).addClass('animated '+animation_in); 94 95 $(card_items).addClass('hidden'); 96 97 $(card_item).removeClass('hidden'); 98 $(card_item).addClass('active'); 99 100 for ( var i = 0; i<=100; i+=100 ) { 101 102 setTimeout(function(){ 103 $('.grid-items').isotope( 'reloadItems' ).isotope(); 104 }, i ); 105 106 } 107 108 skillsDotted_resize(); 109 } 110 } 111 /* if mobile */ 112 if( width < 1121 ) { 113 /* scroll to section */ 114 $('body,html').animate({ 115 scrollTop: h - header_offset_top 116 }, 800); 117 } 118 119 return false; 120 }); 121 } 122 123 $(window).on('resize', function(){ 124 var width = $(window).width(); 125 var height = $(window).height(); 126 127 if((width < 1121)) { 128 $('.card-inner').removeClass('hidden'); 129 $('.card-inner').removeClass('fadeOutLeft'); 130 $('.card-inner').removeClass('rotateOutUpLeft'); 131 $('.card-inner').removeClass('rollOut'); 132 $('.card-inner').removeClass('jackOutTheBox'); 133 $('.card-inner').removeClass('fadeOut'); 134 $('.card-inner').removeClass('fadeOutUp'); 135 $('.card-inner').removeClass('animated'); 136 } else { 137 if ( $('.top-menu li.current-menu-item a').length ) { 138 var current_id = $('.top-menu li.current-menu-item a').attr('href'); 139 if ( current_id.startsWith('#') == true ) { 140 var current_tab = $('#card-'+current_id.replace('#', '')); 141 current_tab.addClass('current-menu-item'); 142 } 143 } 144 } 145 146 /* 147 Dotted Skills Line On Resize Window 148 */ 149 150 setTimeout(skillsDotted_resize, 750); 151 }); 152 153 /* 154 Dotted Skills Line On Resize Window 155 */ 156 157 function skillsDotted_resize() { 158 var skills_dotted = $('.skills-list.dotted .progress'); 159 var skills_dotted_w = skills_dotted.width(); 160 if(skills_dotted.length){ 161 skills_dotted.find('.percentage .da').css({'width':skills_dotted_w+1}); 162 } 163 } 164 165 /* 166 One Page Mode 167 */ 168 169 var url_hash = location.hash; 170 var sectionElem = $('#card-'+url_hash.replace('#', '')); 171 if(sectionElem.length && $('.top-menu-onepage').length){ 172 menu_items.removeClass('current-menu-item'); 173 $('.top-menu li a[href="'+url_hash+'"]').parent('li').addClass('current-menu-item'); 174 175 if(width >= 1121) { 176 container.find(card_items).removeClass('animated '+animation_in); 177 if($(container).hasClass('opened')) { 178 container.find(card_items).addClass('animated '+animation_out); 179 } 180 container.addClass('opened'); 181 sectionElem.removeClass('animated '+animation_out); 182 sectionElem.addClass('animated '+animation_in); 183 $(card_items).addClass('hidden'); 184 sectionElem.removeClass('hidden'); 185 sectionElem.addClass('active'); 186 } else { 187 /* scroll to section */ 188 $('body,html').animate({ 189 scrollTop: parseFloat(sectionElem.offset().top) - header_offset_top 190 }, 500); 191 } 192 } 193 194 /* 195 Mode Switcher 196 */ 197 198 var skin_dir = $('.mode-switch-btn').data( 'ui-dir' ) + '/assets/css/'; 199 var skin_ui = $('.mode-switch-btn').data( 'ui' ); 200 var skin = $.cookie('skin'); 201 202 if ( skin != undefined ) { 203 if ( skin_ui == '1' ) { 204 $('#mode-switch-radio').prop("checked", true); 205 } 206 if ( skin_ui == '0' ) { 207 $('#mode-switch-radio').prop("checked", false); 208 } 209 } 210 211 if ( skin_ui != undefined ) { 212 if ( skin == '1' ) { 213 if ( $('#ryancv-dark-css').length ){ 214 $("#ryancv-dark-css").attr("href", skin_dir+"dark.css"); 215 } else { 216 $('head').append('<link rel="stylesheet" id="ryancv-dark-css" type="text/css" href="'+skin_dir+"dark.css"+'">'); 217 } 218 $('#mode-switch-radio').prop("checked", true); 219 $('.page_wrap').addClass('theme-style-dark'); 220 $('body').addClass('body-style-dark'); 221 } 222 if ( skin == '0' ) { 223 $("#ryancv-dark-css").attr("href", ""); 224 $('#mode-switch-radio').prop("checked", false); 225 $('.page_wrap').removeClass('theme-style-dark'); 226 $('body').removeClass('body-style-dark'); 227 } 228 } 229 230 if ( $('.page_wrap').hasClass('switcher-ui-disabled') ) { 231 $.removeCookie('skin', { path: '/' }); 232 } 233 234 $('#mode-switch-radio').on('change', function() { 235 if (this.checked) { 236 $.cookie('skin', '1', { expires: 7, path: '/' }); 237 $('.page_wrap').addClass('theme-style-dark'); 238 $('body').addClass('body-style-dark'); 239 $('#mode-switch-radio').prop("checked", true); 240 if ( $('#ryancv-dark-css').length ){ 241 $("#ryancv-dark-css").attr("href", skin_dir+"dark.css"); 242 } else { 243 $('head').append('<link rel="stylesheet" id="ryancv-dark-css" type="text/css" href="'+skin_dir+"dark.css"+'">'); 244 } 245 } else { 246 $.cookie('skin', '0', { expires: 7, path: '/' }); 247 $('.page_wrap').removeClass('theme-style-dark'); 248 $('body').removeClass('body-style-dark'); 249 $('#mode-switch-radio').prop("checked", false); 250 $("#ryancv-dark-css").attr("href", ""); 251 } 252 }); 253 254 /* 255 Hire Button 256 */ 257 258 $('.lnks').on('click', '.lnk[href*="#"]', function(){ 259 var lnk_url = $(this).attr('href'); 260 var lnk_idx = lnk_url.indexOf("#"); 261 var lnk_hash = lnk_idx != -1 ? lnk_url.substring(lnk_idx+1) : ""; 262 263 if($('.top-menu a[href="#'+lnk_hash+'"]').length) { 264 $('.top-menu a[href="#'+lnk_hash+'"]').trigger('click'); 265 } 266 }); 267 268 /* 269 Popup Menu Navigation 270 */ 271 272 $('.main-menu li.page_item_has_children').each(function(){ 273 $(this).find('> a').after('<span class="children_toggle"></span>'); 274 }); 275 $('.main-menu').on('click', '.children_toggle', function(){ 276 var main_menu_item = $(this).closest('.page_item_has_children'); 277 if(main_menu_item.hasClass('open')) { 278 main_menu_item.removeClass('open'); 279 main_menu_item.find('> ul').slideUp(250); 280 } else { 281 main_menu_item.addClass('open'); 282 main_menu_item.find('> ul').slideDown(250); 283 } 284 }); 285 286 /* 287 Smoothscroll 288 */ 289 290 if((width < 1121) && $('.top-menu-onepage').length) { 291 $(window).on('scroll', function(){ 292 var scrollPos = $(window).scrollTop(); 293 $('.top-menu ul li a').each(function () { 294 var currLink = $(this); 295 var currHref = currLink.attr('href'); 296 if(currHref == '') currHref = '#home'; 297 298 if(currHref.charAt(0) == "#") { 299 var refElement = $('#card-'+currHref.replace('#', '')); 300 if (refElement.offset().top - header_offset_top - 2 <= scrollPos) { 301 $('.top-menu ul li').removeClass("current-menu-item"); 302 currLink.closest('li').addClass("current-menu-item"); 303 } 304 } 305 }); 306 }); 307 } 308 309 if( width <= 560 ) { 310 $(window).on('scroll', function(){ 311 if($(window).scrollTop() > 46) { 312 $('.header').addClass('fixed'); 313 } 314 else { 315 $('.header').removeClass('fixed'); 316 } 317 }) 318 } 319 320 /* 321 Sidebar Show/Hide 322 */ 323 324 $('header, .profile').on('click', '.menu-btn', function(){ 325 $('.s_overlay').fadeIn(); 326 $('.content-sidebar').addClass('active'); 327 $('body,html').addClass('sidebar-open'); 328 return false;
329 }); 330 $('.content-sidebar, .container').on('click', '.close, .s_overlay', function(){ 331 $('.s_overlay').fadeOut(); 332 $('.content-sidebar').removeClass('active'); 333 $('body,html').removeClass('sidebar-open'); 334 }); 335 336 /* 337 Widget Title 338 */ 339 340 $('.widget-title').wrapInner('<span class="widget-title-span"></span>'); 341 342 /* 343 Default Menu 344 */ 345 346 $('.lnk-view-menu').on('click', function(){ 347 var btn_text1 = $(this).find('.text').text(); 348 var btn_text2 = $(this).find('.text').data('text-open'); 349 if($('.profile').hasClass('default-menu-open')){ 350 $('.profile').removeClass('default-menu-open'); 351 $(this).find('.text').data('text-open', btn_text1); 352 $(this).find('.text').text(btn_text2); 353 } else { 354 $('.profile').addClass('default-menu-open'); 355 $(this).find('.text').data('text-open', btn_text1); 356 $(this).find('.text').text(btn_text2); 357 } 358 359 return false; 360 }); 361 362 /* 363 Typed 364 */ 365 366 $('.r-typed').each(function(){ 367 var $this = $(this)[0]; 368 var $string = $(this).prev('.typing-title')[0]; 369 var typed = new Typed($this, { 370 stringsElement: $string, 371 backDelay: 3500, 372 typeSpeed: 80, 373 backSpeed: 20, 374 loop: true 375 }); 376 }); 377 378 /* 379 Initialize isotope works items 380 */ 381 382 var $container_works = $('.works-grid .grid-items'); 383 384 $container_works.imagesLoaded(function() { 385 $container_works.isotope({ 386 itemSelector: '.grid-item' 387 }); 388 }); 389 390 $('.works-grid .filter-button-group').on( 'click', '.f_btn', function() { 391 var filterValue = $(this).find('input').val(); 392 $container_works.isotope({ filter: filterValue }); 393 $('.works-grid .filter-button-group .f_btn').removeClass('active'); 394 $(this).addClass('active'); 395 }); 396 397 /* 398 Initialize isotope blog items 399 */ 400 401 var $container_blog = $('.blog-grid .grid-items'); 402 403 $container_blog.imagesLoaded(function() { 404 $container_blog.isotope({ 405 itemSelector: '.grid-item' 406 }); 407 }); 408 409 $('.blog-grid .filter-button-group').on( 'click', '.f_btn', function() { 410 var filterValue = $(this).find('input').val(); 411 $container_blog.isotope({ filter: filterValue }); 412 $('.blog-grid .filter-button-group .f_btn').removeClass('active'); 413 $(this).addClass('active'); 414 }); 415 416 /* 417 Gallery magnific popup 418 */ 419 420 if(!$('body').hasClass('elementor-page')){ 421 if(/\.(?:jpg|jpeg|gif|png)$/i.test($('.gallery-item:first a').attr('href'))){ 422 $('.gallery-item a').magnificPopup({ 423 gallery: { 424 enabled: true 425 }, 426 type: 'image', 427 closeBtnInside: false, 428 mainClass: 'mfp-fade' 429 }); 430 } 431 } 432 433 /* 434 Popups 435 */ 436 437 /* popup image */ 438 $('.has-popup-image').magnificPopup({ 439 type: 'image', 440 closeOnContentClick: true, 441 mainClass: 'popup-box', 442 image: { 443 verticalFit: true 444 } 445 }); 446 447 /* popup video */ 448 $('.has-popup-video').magnificPopup({ 449 type: 'iframe', 450 preloader: false, 451 fixedContentPos: false, 452 mainClass: 'popup-box', 453 callbacks: { 454 markupParse: function(template, values, item) { 455 template.find('iframe').attr('allow', 'autoplay'); 456 } 457 } 458 }); 459 460 /* popup music */ 461 $('.has-popup-music').magnificPopup({ 462 type: 'iframe', 463 preloader: false, 464 fixedContentPos: false, 465 mainClass: 'popup-box', 466 callbacks: { 467 markupParse: function(template, values, item) { 468 template.find('iframe').attr('allow', 'autoplay'); 469 } 470 } 471 }); 472 473 /* popup gallery */ 474 $('.has-popup-gallery').on('click', function() { 475 var gallery = $(this).attr('href'); 476 477 $(gallery).magnificPopup({ 478 delegate: 'a', 479 type:'image', 480 closeOnContentClick: false, 481 mainClass: 'mfp-fade', 482 removalDelay: 160, 483 fixedContentPos: false, 484 gallery: { 485 enabled: true 486 } 487 }).magnificPopup('open'); 488 489 return false; 490 }); 491 492 493 /* 494 Validate Contact Form 495 */ 496 497 $("#cform").validate({ 498 ignore: ".ignore", 499 rules: { 500 name: { 501 required: true 502 }, 503 message: { 504 required: true 505 }, 506 email: { 507 required: true, 508 email: true 509 } 510 }, 511 success: "valid", 512 submitHandler: function() { 513 $.ajax({ 514 url: 'mailer/feedback.php', 515 type: 'post', 516 dataType: 'json', 517 data: 'name='+ $("#cform").find('input[name="name"]').val() + '&email='+ $("#cform").find('input[name="email"]').val() + '&message=' + $("#cform").find('textarea[name="message"]').val(), 518 beforeSend: function() { 519 520 }, 521 complete: function() { 522 523 }, 524 success: function(data) { 525 $('#cform').fadeOut(); 526 $('.alert-success').delay(1000).fadeIn(); 527 } 528 }); 529 } 530 }); 531 532 533 /* 534 Validate Commect Form 535 */ 536 537 $("#comment_form").validate({ 538 rules: { 539 name: { 540 required: true 541 }, 542 message: { 543 required: true 544 } 545 }, 546 success: "valid", 547 submitHandler: function() { 548 } 549 }); 550 551 /* 552 Remove Lines 553 */ 554 555 var serv_num = $('.service-items .service-item').length; 556 if(serv_num%2 == 0){ 557 $('.service-items .service-item').eq(serv_num-1).parent().removeClass('border-line-h'); 558 $('.service-items .service-item').eq(serv_num-2).parent().removeClass('border-line-h'); 559 } else { 560 $('.service-items .service-item').eq(serv_num-1).parent().removeClass('border-line-h'); 561 } 562 563 /* 564 Wrap First Title Word 565 */ 566 567 $('.content .title, .widget-title-span').each(function(index) { 568 var title = $(this).text().split(' '); 569 if(title.length>1){ 570 var firstWord = title[0]; 571 var replaceWord = '<span class="first-word">' + firstWord + '</span>'; 572 var newString = $(this).html().replace(firstWord, replaceWord); 573 $(this).html(newString); 574 } else { 575 $(this).html('<span class="first-letter">'+ $(this).html() + '</span>'); 576 } 577 }); 578 579 /* 580 Active protected password card 581 */ 582 583 if($('body').hasClass('home') && $('.top-menu').hasClass('top-menu-onepage')){ 584 $('.post-password-form').on('submit', function(){ 585 $.cookie('submit-post-password', $(this).closest('.card-inner').attr('id'), { expires: 7, path: '/' }); 586 $(this).submit(); 587 }); 588 var post_password_cookie = $.cookie('submit-post-password'); 589 if(post_password_cookie!==undefined){ 590 $('a[href="#'+post_password_cookie+'"]').trigger('click'); 591 $.removeCookie('submit-post-password', { path: '/' }); 592 } 593 } 594 595 /* 596 Tesimonials Carousel
597 */ 598 599 var is_rtl = false; 600 if ($('body.rtl').length) { 601 is_rtl = true; 602 } 603 var prop_loop = $('.revs-carousel .swiper-container').data('swiper-loop'); 604 var prop_delay = $('.revs-carousel .swiper-container').data('swiper-delay'); 605 var prop_autoplay = $('.revs-carousel .swiper-container').data('swiper-autoplay'); 606 var objAutoplay = 0; 607 608 if ( prop_autoplay ) { 609 objAutoplay = { 610 disableOnInteraction: false, 611 delay: prop_delay 612 }; 613 } 614 615 var revs_slider_init = new Swiper('.revs-carousel .swiper-container', { 616 spaceBetween: 0, 617 slidesPerView: 1, 618 observer: true, 619 observeParents: true, 620 autoplay: objAutoplay, 621 loop: prop_loop, 622 pagination: { 623 el: '.revs-carousel .swiper-pagination', 624 clickable: true 625 } 626 }); 627 628 /* 629 Iframe margins 630 */ 631 632 $('.single-post-text, .post-box').each(function(){ 633 $(this).find('iframe').wrap('<div class="embed-container"></div>'); 634 }); 635 636 /* 637 No Menu Items 638 */ 639 640 if(!$('.top-menu ul').length){ 641 $('.container').addClass('no-sticky-menu'); 642 } 643 644 /* 645 Dotted Skills Line 646 */ 647 648 function skills(){ 649 var skills_dotted = $('.skills-list.dotted .progress'); 650 var skills_dotted_w = skills_dotted.width(); 651 if(skills_dotted.length){ 652 skills_dotted.append('<span class="dg"><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span></span>'); 653 skills_dotted.find('.percentage').append('<span class="da"><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span></span>'); 654 skills_dotted.find('.percentage .da').css({'width':skills_dotted_w}); 655 } 656 } 657 setTimeout(skills, 1000); 658 659 /* 660 Circle Skills Line 661 */ 662 663 var skills_circles = $('.skills-list.circles .progress'); 664 if(skills_circles.length){ 665 skills_circles.append('<div class="slice"><div class="bar"></div><div class="fill"></div></div>'); 666 } 667 668 /* 669 Cart Popup 670 */ 671 672 $('.header .cart-btn .cart-icon').on('click', function(){ 673 if($(this).closest('.cart-btn').hasClass('opened')){ 674 $(this).closest('.cart-btn').removeClass('opened'); 675 } else { 676 $(this).closest('.cart-btn').addClass('opened'); 677 } 678 679 return false; 680 }); 681 682 /* 683 Slideshow 684 */ 685 686 var slideshow_swiper = new Swiper('.ryan-slideshow', { 687 slidesPerView: 1, 688 effect: 'fade', 689 parallax: true, 690 autoplay: true, 691 speed: 1400, 692 }); 693 694 /* 695 Cursor 696 */ 697 initCursor(); 698 699}); 700 701function initCursor() { 702 var mouseX=window.innerWidth/2, mouseY=window.innerHeight/2; 703 704 var cursor = { 705 el: $('.cursor'), 706 x: window.innerWidth/2, 707 y: window.innerHeight/2, 708 w: 30, 709 h: 30, 710 update:function() { 711 var l = this.x-this.w/2; 712 var t = this.y-this.h/2; 713 this.el.css({ 'transform':'translate3d('+l+'px,'+t+'px, 0)' }); 714 } 715 } 716 717 $(window).mousemove (function(e) { 718 mouseX = e.clientX; 719 mouseY = e.clientY; 720 }); 721 722 $('a, .swiper-pagination, .swiper-button-prev, .swiper-button-next, button, .button, .btn, .lnk').hover(function() { 723 $('.cursor').addClass("cursor-zoom"); 724 }, function(){ 725 $('.cursor').removeClass("cursor-zoom"); 726 }); 727 728 setInterval(move,1000/60); 729 730 function move() { 731 cursor.x = lerp (cursor.x, mouseX, 0.1); 732 cursor.y = lerp (cursor.y, mouseY, 0.1); 733 cursor.update() 734 } 735 736 function lerp (start, end, amt) { 737 return (1-amt)*start+amt*end 738 } 739} 740 741} )( 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.