1/*---------------------------------------------- 2* 3* [Main Scripts] 4* 5* Theme : NEXGEN 6* Version : 1.0.0 7* Author : Codings 8* Support : codings.dev 9* 10----------------------------------------------*/ 11 12/*---------------------------------------------- 13 14[ALL CONTENTS] 15 161. Preloader 172. Responsive Menu 183. Navigation 194. Slides 205. Particles 216. Progress Bar 227. Shuffle 238. Sign and Register Form 249. Simple Form 2510. Recaptcha 2611. Cookie Notice 27 28----------------------------------------------*/ 29 30/*---------------------------------------------- 311. Preloader 32----------------------------------------------*/ 33 34jQuery(function ($) { 35 36 'use strict'; 37 38 let preloader = $('.preloader'); 39 40 setTimeout(function() { 41 preloader.addClass('ready'); 42 43 }, preloader.data('timeout')) 44}) 45 46/*---------------------------------------------- 472. Responsive Menu 48----------------------------------------------*/ 49 50jQuery(function ($) { 51 52 'use strict'; 53 54 function navResponsive() { 55 56 let navbar = $('.navbar .items'); 57 let menu = $('#menu .items'); 58 59 menu.html(''); 60 navbar.clone().appendTo(menu); 61 62 $('.menu .icon-arrow-right').removeClass('icon-arrow-right').addClass('icon-arrow-down'); 63 } 64 65 navResponsive(); 66 67 $(window).on('resize', function () { 68 navResponsive(); 69 }) 70 71 $('.menu .dropdown-menu').each(function() { 72 var children = $(this).children('.dropdown').length; 73 $(this).addClass('children-'+children); 74 }) 75 76 77 $('.menu .nav-item.dropdown').each(function() { 78 var children = $(this).children('.nav-link'); 79 children.addClass('prevent'); 80 }) 81 82 $(document).on('click', '#menu .nav-item .nav-link', function (e) { 83 84 if($(this).hasClass('prevent')) { 85 e.preventDefault(); 86 } 87 88 var nav_link = $(this); 89 90 nav_link.next().toggleClass('show'); 91 92 if(nav_link.hasClass('smooth-anchor')) { 93 $('#menu').modal('hide'); 94 } 95 }) 96}) 97 98/*---------------------------------------------- 993. Navigation 100----------------------------------------------*/ 101 102jQuery(function ($) { 103 104 'use strict'; 105 106 var position = $(window).scrollTop(); 107 var navbar = $('.navbar.sub'); 108 var toTop = $('#scroll-to-top'); 109 110 $(document).ready(function() { 111 if (position > 0) { 112 navbar.addClass('navbar-sticky'); 113 } 114 toTop.hide(); 115 }) 116 117 $(window).scroll(function () { 118 119 navbar.removeAttr('data-aos'); 120 navbar.removeAttr('data-aos-delay'); 121 122 var scroll = $(window).scrollTop(); 123 124 if (!navbar.hasClass('relative')) { 125 126 // Down 127 if (scroll > position) { 128 129 navbar.addClass('navbar-sticky'); 130 navbar.removeClass('navbar-relative'); 131 132 if (navbar.hasClass('navbar-fixed') || navbar.hasClass('navbar-relative') || window.innerWidth <= 767) { 133 navbar.addClass('visible'); 134 135 } else { 136 137 if ($(window).scrollTop() >= window.innerHeight) { 138 //navbar.removeClass('visible').addClass('hidden'); 139 } 140 } 141 142 toTop.fadeOut('fast'); 143 144 // Up 145 } else { 146 147 navbar.removeClass('hidden').addClass('visible'); 148 149 // Top 150 if ($(window).scrollTop() <= 100) { 151 navbar.removeClass('navbar-sticky'); 152 navbar.addClass('navbar-relative'); 153 } else { 154 155 if(!navbar.hasClass('navbar-no-fixed')) { 156 navbar.addClass('visible'); 157 } 158 } 159 160 if (position >= window.innerHeight && window.innerWidth >= 767) { 161 toTop.fadeIn('fast'); 162 163 } else { 164 toTop.fadeOut('fast'); 165 } 166 } 167 position = scroll; 168 } 169 }) 170 171 $('.nav-link').each(function() { 172 let href = $(this).attr('href'); 173 if (href.length > 1 && href.indexOf('#') != -1) { 174 $(this).addClass('smooth-anchor'); 175 } 176 }) 177 178 $('.nav-link').each(function() { 179 180 if(this.hasAttribute('href')) { 181 let href = $(this).attr('href'); 182 if (href.length > 1 && href.indexOf('#') != -1) { 183 $(this).addClass('smooth-anchor'); 184 } 185 } 186 187 let body = $('body'); 188 189 if(this.hasAttribute('href') && ! body.hasClass('home')) { 190 let href = $(this).attr('href'); 191 if (href.length > 1 && href.indexOf('#') != -1) { 192 $(this).removeClass('smooth-anchor'); 193 $(this).attr('href', '/'+href); 194 } 195 } 196 }) 197 198 $(document).on('click', '.smooth-anchor', function (e) { 199 e.preventDefault(); 200 201 let href = $(this).attr('href'); 202 let target = $.attr(this, 'href'); 203 204 if($(target).length > 0) { 205 206 if (href.length > 1 && href.indexOf('#') != -1) { 207 $('html, body').animate({ 208 scrollTop: $(target).offset().top-100 209 }, 1000); 210 } 211 } 212 }) 213 214 $('.dropdown-menu').each(function () { 215 216 let dropdown = $(this); 217 218 dropdown.hover(function () { 219 dropdown.parent().find('.nav-link').first().addClass('active'); 220 221 }, function () { 222 dropdown.parent().find('.nav-link').first().removeClass('active'); 223 }) 224 }) 225 226 let navbar_holder = $('.navbar-holder'); 227 let navbar_height = $('.navbar-expand.sub').outerHeight(); 228 229 if(navbar_holder.length > 0) { 230 $('.navbar-holder').css('min-height', navbar_height); 231 } 232}) 233 234/*---------------------------------------------- 2354. Slides 236----------------------------------------------*/ 237 238//jQuery(function ($) { 239 240// setTimeout(function() { 241// $('.no-slider .left').addClass('init'); 242// $('.no-slider .right').addClass('init'); 243// }, 1200) 244 245// var animation = function(slider) { 246 247// let image = $(slider + ' .swiper-slide-active img'); 248// let title = $(slider + ' .title'); 249// let description = $(slider + ' .description'); 250// let btn = $(slider + ' .buttons'); 251// let nav = $(slider + ' nav'); 252 253// image.toggleClass('aos-animate'); 254// title.toggleClass('aos-animate'); 255// description.toggleClass('aos-animate'); 256// btn.toggleClass('aos-animate'); 257// nav.toggleClass('aos-animate'); 258 259// setTimeout(function() { 260// image.toggleClass('aos-animate'); 261// title.toggleClass('aos-animate'); 262// description.toggleClass('aos-animate'); 263// btn.toggleClass('aos-animate'); 264// nav.toggleClass('aos-animate'); 265 266// AOS.refresh();
267 268// }, 100) 269 270// if ($('.full-slider').hasClass('animation')) { 271 272// $('.full-slider .left').addClass('off'); 273// $('.full-slider .left').removeClass('init'); 274// $('.full-slider .right').addClass('off'); 275// $('.full-slider .right').removeClass('init'); 276 277// setTimeout(function() { 278// $('.full-slider .left').removeClass('off'); 279// $('.full-slider .right').removeClass('off'); 280// }, 200) 281 282// setTimeout(function() { 283// $('.full-slider .left').addClass('init'); 284// $('.full-slider .right').addClass('init'); 285// }, 1000) 286 287// } else { 288// $('.full-slider .left').addClass('init'); 289// $('.full-slider .right').addClass('init'); 290// } 291// } 292 293// var fullSlider = new Swiper('.full-slider', { 294 295// autoplay: { 296// delay: 10000, 297// }, 298// parallax: true, 299// slidesPerView: 1, 300// spaceBetween: 0, 301// navigation: false, 302// pagination: { 303// el: '.full-slider .swiper-pagination', 304// clickable: true 305// }, 306// keyboard: { 307// enabled: true, 308// onlyInViewport: false 309// }, 310// on: { 311// init: function() { 312// animation('.full-slider'); 313// let pagination = $('.full-slider .swiper-pagination'); 314// pagination.hide(); 315 316// setTimeout(function() { 317// pagination.fadeIn('slow'); 318// }, 3600) 319// }, 320// slideChange: function() { 321// animation('.full-slider'); 322 323// let title = $('.full-slider .title'); 324// let description = $('.full-slider .description'); 325// let btn = $('.full-slider .buttons'); 326 327// title.attr('data-aos-delay', 400); 328// description.attr('data-aos-delay', 800); 329// btn.attr('data-aos-delay', 1200); 330// } 331// } 332// }) 333 334// $('.mid-slider').each(function() { 335 336// if($(this).data('perview')) { 337// var midPerView = $(this).data('perview'); 338// } else { 339// midPerView = 3; 340// } 341 342// var midSlider = new Swiper(this, { 343 344// autoplay: false, 345// loop: true, 346// slidesPerView: 1, 347// spaceBetween: 30, 348// breakpoints: { 349// 767: { 350// slidesPerView: 2, 351// spaceBetween: 30 352// }, 353// 1023: { 354// slidesPerView: midPerView, 355// spaceBetween: 30 356// } 357// } 358// }) 359// }) 360 361// var minSlider = new Swiper('.min-slider', { 362 363// autoplay: { 364// delay: 5000, 365// }, 366// loop: false, 367// centerInsufficientSlides: true, 368// slidesPerView: 2, 369// spaceBetween: 15, 370// breakpoints: { 371// 424: { 372// slidesPerView: 2, 373// spaceBetween: 15 374// }, 375// 767: { 376// slidesPerView: 3, 377// spaceBetween: 15 378// }, 379// 1023: { 380// slidesPerView: 4, 381// spaceBetween: 15 382// }, 383// 1199: { 384// slidesPerView: 6, 385// spaceBetween: 15 386// } 387// }, 388// pagination: false 389// }) 390 391// var noSlider = new Swiper('.no-slider', { 392 393// autoplay: false, 394// loop: false, 395// keyboard: false, 396// grabCursor: false, 397// allowTouchMove: false, 398// on: { 399// init: function() { 400// animation('.no-slider') 401// } 402// } 403// }) 404//}) 405 406/*---------------------------------------------- 4075. Particles 408----------------------------------------------*/ 409 410//function particles(type, ID) { 411 412// if(type === 'default') { 413// particlesJS(ID,{particles:{number:{value:80,density:{enable:!0,value_area:800}},color:{value:"#ffffff"},shape:{type:"circle",stroke:{width:0,color:"#000000"},polygon:{nb_sides:5},image:{src:"img/github.svg",width:100,height:100}},opacity:{value:.25,random:!1,anim:{enable:!1,speed:1,opacity_min:.1,sync:!1}},size:{value:5,random:!0,anim:{enable:!1,speed:40,size_min:.1,sync:!1}},line_linked:{enable:!0,distance:150,color:"#ffffff",opacity:.25,width:1},move:{enable:!0,speed:6,direction:"none",random:!1,straight:!1,out_mode:"out",attract:{enable:!1,rotateX:600,rotateY:1200}}},interactivity:{detect_on:"canvas",events:{onhover:{enable:0,mode:"repulse"},onclick:{enable:!0,mode:"push"},resize:!0},modes:{grab:{distance:400,line_linked:{opacity:1}},bubble:{distance:400,size:40,duration:2,opacity:8,speed:3},repulse:{distance:200},push:{particles_nb:4},remove:{particles_nb:2}}},retina_detect:!0,config_demo:{hide_card:!1,background_color:"#b61924",background_image:"",background_position:"50% 50%",background_repeat:"no-repeat",background_size:"cover"}}); 414// } 415 416// if(type === 'squares') { 417// particlesJS(ID,{particles:{number:{value:20,density:{enable:!0,value_area:800}},color:{value:"#21333e"},shape:{type:"edge",stroke:{width:0,color:"#000"},image:{src:"img/github.svg",width:100,height:100}},opacity:{value:.15,random:!0,anim:{enable:!1,speed:1,opacity_min:.05,sync:!1}},size:{value:80,random:!1,anim:{enable:!0,speed:5,size_min:5,sync:!1}},line_linked:{enable:!1,distance:200,color:"#ffffff",opacity:1,width:2},move:{enable:!0,speed:5,direction:"none",random:!1,straight:!1,out_mode:"out",bounce:!1,attract:{enable:!1,rotateX:600,rotateY:1200}}},interactivity:{detect_on:"canvas",events:{onhover:{enable:!1,mode:"grab"},onclick:{enable:!1,mode:"push"},resize:!0},modes:{grab:{distance:400,line_linked:{opacity:1}},bubble:{distance:400,size:40,duration:2,opacity:8,speed:3},repulse:{distance:200,duration:.4},push:{particles_nb:4},remove:{particles_nb:2}}},retina_detect:!0}) 418// } 419 420// if(type === 'bubble') { 421// particlesJS(ID,{particles:{number:{value:6,density:{enable:!0,value_area:800}},color:{value:"#182c50"},shape:{type:"polygon",stroke:{width:0,color:"#000"},polygon:{nb_sides:6},image:{src:"img/github.svg",width:100,height:100}},opacity:{value:.3,random:!0,anim:{enable:!1,speed:1,opacity_min:.1,sync:!1}},size:{value:160,random:!1,anim:{enable:!0,speed:10,size_min:40,sync:!1}},line_linked:{enable:!1,distance:200,color:"#ffffff",opacity:1,width:2},move:{enable:!0,speed:8,direction:"none",random:!1,straight:!1,out_mode:"out",bounce:!1,attract:{enable:!1,rotateX:600,rotateY:1200}}},interactivity:{detect_on:"canvas",events:{onhover:{enable:!1,mode:"grab"},onclick:{enable:!1,mode:"push"},resize:!0},modes:{grab:{distance:400,line_linked:{opacity:1}},bubble:{distance:400,size:40,duration:2,opacity:8,speed:3},repulse:{distance:200,duration:.4},push:{particles_nb:4},remove:{particles_nb:2}}},retina_detect:!0}); 422// } 423 424// if(type === 'space') { 425// particlesJS(ID,{particles:{number:{value:160,density:{enable:!0,value_area:800}},color:{value:"#ffffff"},shape:{type:"circle",stroke:{width:0,color:"#000000"},polygon:{nb_sides:5},image:{src:"img/github.svg",width:100,height:100}},opacity:{value:1,random:!0,anim:{enable:!0,speed:1,opacity_min:0,sync:!1}},size:{value:3,random:!0,anim:{enable:!1,speed:4,size_min:.3,sync:!1}},line_linked:{enable:!1,distance:150,color:"#ffffff",opacity:.4,width:1},move:{enable:!0,speed:1,direction:"none",random:!0,straight:!1,out_mode:"out",bounce:!1,attract:{enable:!1,rotateX:600,rotateY:600}}},interactivity:{detect_on:"canvas",events:{onhover:{enable:!0,mode:"bubble"},onclick:{enable:!0,mode:"repulse"},resize:!0},modes:{grab:{distance:400,line_linked:{opacity:1}},bubble:{distance:250,size:0,duration:2,opacity:0,speed:3},repulse:{distance:400,duration:.4},push:{particles_nb:4},remove:{particles_nb:2}}},retina_detect:!0}); 426// } 427//} 428 429/*---------------------------------------------- 4306. Progress Bar 431----------------------------------------------*/ 432 433jQuery(function($) { 434 435 'use strict'; 436 437 function initCounter(section, item, duration) { 438 439 $(document).one('inview', item, function(event, inview) { 440 441 if (inview) { 442 443 $(item).each(function() { 444 445 var percent = $(this).data('percent'); 446 var pcolor = getComputedStyle(document.documentElement).getPropertyValue('--secondary-color'); 447 var scolor = getComputedStyle(document.documentElement).getPropertyValue('--secondary-color'); 448 449 if ( $(section).hasClass('odd')) { 450 var tmode = 'rgba(255, 255, 255, 0.075)'; 451 } else { 452 var tmode = 'rgba(0, 0, 0, 0.075)'; 453 } 454 455 if ( $(section).hasClass('preloader') || $(section).hasClass('skills')) { 456 var symbol = '<i>%</i>'; 457 } else { 458 var symbol = ''; 459 } 460 461 if(section == '.counter.preloader' || section == '.counter.funfacts') { 462 var height = 70; 463 } else { 464 var height = 110; 465 } 466 467 $(this).radialProgress({ 468 value: (percent / 100), 469 size: height, 470 thickness: 10, 471 lineCap: 'butt', 472 emptyFill: tmode, 473 animation: { 474 duration: duration, 475 easing: "radialProgressEasing" 476 }, 477 fill: { 478 gradient: [[pcolor, 0.1], [scolor, 1]], 479 gradientAngle: Math.PI / 4 480 } 481 }).on('radial-animation-progress', function(event, progress) { 482 $(this).find('span').html(Math.round(percent * progress) + symbol); 483 }) 484 }) 485 } 486 }) 487 } 488 489 let preloader = $('.preloader'); 490 let preloader_timeout = ( preloader.data('timeout') - 800); 491
492 initCounter('.counter.preloader', '.counter.preloader .radial', preloader_timeout); 493 initCounter('.counter.funfacts', '.counter.funfacts .radial', 5000); 494 initCounter('.counter.skills', '.counter.skills .radial', 5000); 495}) 496 497/*---------------------------------------------- 4987. Shuffle 499----------------------------------------------*/ 500 501//jQuery(function ($) { 502 503// 'use strict'; 504 505// $('.filter-section').each(function(index) { 506 507// var count = index + 1; 508 509// $(this).find('.filter-items').removeClass('filter-items').addClass('filter-items-'+count); 510// $(this).find('.filter-item').removeClass('filter-item').addClass('filter-item-'+count); 511// $(this).find('.filter-sizer').removeClass('filter-sizer').addClass('filter-sizer-'+count); 512// $(this).find('.btn-filter-item').removeClass('btn-filter-item').addClass('btn-filter-item-'+count); 513 514// var Shuffle = window.Shuffle; 515// var Filter = new Shuffle(document.querySelector('.filter-items-'+count), { 516// itemSelector: '.filter-item-'+count, 517// sizer: '.filter-sizer-'+count, 518// buffer: 1, 519// }) 520 521// $('.btn-filter-item-'+count).on('change', function (e) { 522 523// var input = e.currentTarget; 524 525// if (input.checked) { 526// Filter.filter(input.value); 527// } 528// }) 529// }) 530//}) 531 532/*---------------------------------------------- 5338. Sign and Register Form 534----------------------------------------------*/ 535 536jQuery(function ($) { 537 538 'use strict'; 539 540 $(document).on('click', 'a[data-target="#register"]', function() { 541 $('#sign').modal('hide'); 542 }) 543 544 $(document).on('click', 'a[data-target="#sign"]', function() { 545 $('#register').modal('hide'); 546 }) 547 548}) 549 550/*---------------------------------------------- 5519. Simple Form 552----------------------------------------------*/ 553 554jQuery(function ($) { 555 556 'use strict'; 557 558 function sendForm(ID) { 559 560 var form = $(ID); 561 var input = $(ID+' .form-control') 562 var btn = $(ID+' .btn:first-child'); 563 var alert = $(ID+' .form-alert'); 564 565 alert.hide(); 566 567 $(document).on('click', ID+' .btn:first-child', function() { 568 $(this).addClass('effect-motion-bg'); 569 form.submit(); 570 }) 571 572 form.submit(function(e) { 573 e.preventDefault(); 574 575 if ($('input[name="reCAPTCHA"]').length) { 576 let reCAPTCHA = $('input[name="reCAPTCHA"]'); 577 578 grecaptcha.ready(function() { 579 grecaptcha.execute(reCAPTCHA.data('key'), { action: "create_comment" }).then(function(token) { 580 reCAPTCHA.val(token); 581 }) 582 }) 583 } 584 585 var url = form.attr('action'); 586 587 $.ajax({
588 type: 'POST', 589 url: url, 590 data: form.serialize(), 591 success: function(response) { 592 593 try { 594 JSON.parse(response); 595 var obj = JSON.parse(response); 596 597 if (obj.status == 'success') { 598 setTimeout(function() { 599 btn.removeClass('effect-motion-bg'); 600 input.val('').removeClass('invalid').removeClass('valid'); 601 alert.text(obj.info).removeClass('invalid').addClass('valid').fadeIn(); 602 }, 1200); 603 604 } else if(obj.status == 'invalid') { 605 setTimeout(function() { 606 btn.removeClass('effect-motion-bg'); 607 alert.text(obj.info).removeClass('valid').addClass('invalid').fadeIn(); 608 }, 1200); 609 610 input.each(function() { 611 let input_name = $(this).attr('name'); 612 613 if(obj.fields[input_name] == true) { 614 $(ID+' .field-'+input_name).removeClass('valid').addClass('invalid'); 615 } else { 616 $(ID+' .field-'+input_name).removeClass('invalid').addClass('valid'); 617 } 618 }) 619 } else { 620 btn.removeClass('effect-motion-bg'); 621 input.val('').removeClass('invalid').removeClass('valid'); 622 alert.text(obj.info).removeClass('valid').addClass('invalid').fadeIn(); 623 624 } 625 626 } catch (e) { 627 btn.removeClass('effect-motion-bg'); 628 input.val('').removeClass('invalid').removeClass('valid'); 629 alert.text('Sorry. We were unable to send your message.').removeClass('valid').addClass('invalid').fadeIn(); 630 } 631 } 632 }) 633 }) 634 } 635 636 sendForm('#nexgen-simple-form'); 637 sendForm('#nexgen-subscribe'); 638}) 639 640/*---------------------------------------------- 64110. Recaptcha 642----------------------------------------------*/ 643 644jQuery(function ($) { 645 646 'use strict'; 647 648 if ($('input[name="reCAPTCHA"]').length) { 649 650 let siteKey = "6Lf-NwEVAAAAAPo_wwOYxFW18D9_EKvwxJxeyUx7"; // Put your site key here 651 652 if(siteKey) { 653 $('input[name="reCAPTCHA"]').attr("data-key", siteKey); 654 grecaptcha.ready(function() { 655 grecaptcha.execute(siteKey, { action: "create_comment" }).then(function(token) { 656 $('input[name="reCAPTCHA"]').val(token); 657 }) 658 }) 659 } 660 } 661}) 662 663/*---------------------------------------------- 66411. Cookie Notice 665----------------------------------------------*/ 666 667jQuery(function ($) { 668 669 'use strict'; 670 671 let cookieNotice = true; 672 673 if(cookieNotice) { 674 675 // Translate 676 gdprCookieNoticeLocales.en = { 677 description: 'We use cookies to offer you a better browsing experience, personalise content and ads, to provide social media features and to analyse our traffic.', 678 settings: 'Cookie settings', 679 accept: 'Accept cookies', 680 statement: 'Our cookie statement', 681 save: 'Save settings', 682 always_on: 'Always on', 683 cookie_essential_title: 'Essential website cookies', 684 cookie_essential_desc: 'Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.', 685 cookie_performance_title: 'Performance cookies', 686 cookie_performance_desc: 'These cookies are used to enhance the performance and functionality of our websites but are non-essential to their use. For example it stores your preferred language or the region that you are in.', 687 cookie_analytics_title: 'Analytics cookies', 688 cookie_analytics_desc: 'We use analytics cookies to help us measure how users interact with website content, which helps us customize our websites and application for you in order to enhance your experience.', 689 cookie_marketing_title: 'Marketing cookies', 690 cookie_marketing_desc: 'These cookies are used to make advertising messages more relevant to you and your interests. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.' 691 } 692 693 gdprCookieNotice({ 694 locale: 'en', // This is the default value 695 timeout: 2000, // Time until the cookie bar appears 696 expiration: 30, // This is the default value, in days 697 domain: window.location.hostname, // If you run the same cookie notice on all subdomains, define the main domain starting with a . 698 implicit: true, // Accept cookies on page scroll automatically 699 statement: 'https://nexgen.codings.dev', // Link to your cookie statement page 700 performance: ['JSESSIONID'], // Cookies in the performance category. 701 analytics: ['ga'], // Cookies in the analytics category. 702 marketing: ['SSID'] // Cookies in the marketing category. 703 }) 704 } 705})
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.