var THEMEVISION = THEMEVISION || {}; (function($) { "use strict"; THEMEVISION.initialize = { init: function(){ THEMEVISION.initialize.responsiveClasses(); THEMEVISION.initialize.slider(); THEMEVISION.initialize.blogGridIsotope(); THEMEVISION.initialize.blogInfiniteScroll(); THEMEVISION.initialize.goToTop(); }, responsiveClasses: function(){ var jRes = jRespond([ { label: 'smallest', enter: 0, exit: 575 },{ label: 'handheld', enter: 576, exit: 767 },{ label: 'tablet', enter: 768, exit: 991 },{ label: 'laptop', enter: 992, exit: 1199 },{ label: 'desktop', enter: 1200, exit: 10000 } ]); jRes.addFunc([ { breakpoint: 'desktop', enter: function() { $body.addClass('device-xl'); }, exit: function() { $body.removeClass('device-xl'); } },{ breakpoint: 'laptop', enter: function() { $body.addClass('device-lg'); }, exit: function() { $body.removeClass('device-lg'); } },{ breakpoint: 'tablet', enter: function() { $body.addClass('device-md'); }, exit: function() { $body.removeClass('device-md'); } },{ breakpoint: 'handheld', enter: function() { $body.addClass('device-sm'); }, exit: function() { $body.removeClass('device-sm'); } },{ breakpoint: 'smallest', enter: function() { $body.addClass('device-xs'); }, exit: function() { $body.removeClass('device-xs'); } } ]); }, particles: function( $circles_color, $lines_color ) { if( $( '#particles-js' ).hasClass( 'agama-particles' ) ) { particlesJS('particles-js', { "particles": { "number": { "value": 80, "density": { "enable": true, "value_area": 800 } }, "color": { "value": $circles_color }, "shape": { "type": "circle", "stroke": { "width": 0, "color": $circles_color }, "polygon": { "nb_sides": 5 }, "image": { "src": "img/github.svg", "width": 100, "height": 100 } }, "opacity": { "value": 0.5, "random": false, "anim": { "enable": false, "speed": 1, "opacity_min": 0.1, "sync": false } }, "size": { "value": 5, "random": true, "anim": { "enable": false, "speed": 40, "size_min": 0.1, "sync": false } }, "line_linked": { "enable": true, "distance": 150, "color": $lines_color, "opacity": 0.4, "width": 1 }, "move": { "enable": true, "speed": 6, "direction": "none", "random": false, "straight": false, "out_mode": "out", "attract": { "enable": false, "rotateX": 600, "rotateY": 1200 } } }, "interactivity": { "detect_on": "canvas", "events": { "onhover": { "enable": true, "mode": "repulse" }, "onclick": { "enable": false, "mode": "push" }, "resize": true }, "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": true, "config_demo": { "hide_card": false, "background_color": "#b61924", "background_image": "", "background_position": "50% 50%", "background_repeat": "no-repeat", "background_size": "cover" } }); } }, slider: function() { if( agama.slider_enable == true ) { if( agama.headerStyle == 'transparent' && true == agama.is_admin_bar_showing ) { var $height = THEMEVISION.initialize.height() - 32; } else if( agama.headerStyle == 'transparent' && ! agama.is_admin_bar_showing ) { var $height = THEMEVISION.initialize.height(); } if( agama.headerStyle == 'default' && true == agama.is_admin_bar_showing ) { var $height = THEMEVISION.initialize.height() - 32 - $header.height(); } else if( agama.headerStyle == 'default' && ! agama.is_admin_bar_showing ) { var $height = THEMEVISION.initialize.height() - $header.height(); } if( agama.headerStyle == 'sticky' && true == agama.is_admin_bar_showing ) { var $height = THEMEVISION.initialize.height() - 32 - $header.height(); } else if( agama.headerStyle == 'sticky' && ! agama.is_admin_bar_showing ) { var $height = THEMEVISION.initialize.height() - $header.height(); } if( agama.slider_height > 0 ) { var $height = agama.slider_height; } if( $('#agama_slider').hasClass('camera_wrap') ) { $slider.camera({ height: $height + 'px', loader: 'bar', loaderColor: agama.primaryColor, overlay: false, fx: 'simpleFade', time: agama.slider_time, pagination: false, thumbnails: false, transPeriod: 1000, overlayer: true, playPause: false, hover: false, }); } // If Particles Enabled if( agama.slider_particles == true ) { THEMEVISION.initialize.particles( agama.slider_particles_circle_color, agama.slider_particles_lines_color ); } } }, blogGridIsotope: function() { if( agama.blog_layout == 'grid' && ! $('body').hasClass('single-post') && $('div.article-wrapper').hasClass('grid-style') ) { $('#content').imagesLoaded( function(){ var $grid = $('#content').isotope({ itemSelector: 'div.article-wrapper' }); }); } }, blogInfiniteScroll: function() { if( agama.infinite_scroll == '1' && $('.navigation a').hasClass('next') ) { var $container = $('#content'); $('.home.blog .navigation').hide(); // If blog layout grid, setup isotope. if( agama.blog_layout == 'grid' ) { $container.isotope({ itemSelector: '.article-wrapper' }); var iso = $container.data('isotope'); $( window ).smartresize(function(){ $container.isotope({ itemSelector: '.article-wrapper', masonry: { columnWidth: $container.width() / 5 } }); }); } // If blog layout == list && infinite trigger == button. if( agama.blog_layout == 'list' && agama.infinite_trigger == 'button' ) { var options = { path: '.navigation a.next', append: '.article-wrapper', button: '#infinite-loadmore', scrollThreshold: false, status: '.infscr-load-status', history: false }; } // If blog layout == grid && infinite trigger == button. else if( agama.blog_layout == 'grid' && agama.infinite_trigger == 'button' ) { var options = { path: '.navigation a.next', button: '#infinite-loadmore', scrollThreshold: false, append: '.article-wrapper', outlayer: iso, status: '.infscr-load-status', history: false }; } // If blog layout == small_thumbs && infinite trigger == button. else if ( agama.blog_layout == 'small_thumbs' && agama.infinite_trigger == 'button' ) { var options = { path: '.navigation a.next', append: '.article-wrapper', button: '#infinite-loadmore', scrollThreshold: false, status: '.infscr-load-status', history: false }; } // If blog layout == list && infinite trigger == auto. else if( agama.blog_layout == 'list' && agama.infinite_trigger == 'auto' ) { var options = { path: '.navigation a.next', append: '.article-wrapper', scrollThreshold: 50, status: '.infscr-load-status', history: false, debug: true }; } // If blog layout == grid && infinite trigger == auto. else if( agama.blog_layout == 'grid' && agama.infinite_trigger == 'auto' ) { var options = { path: '.navigation a.next', append: '.article-wrapper', outlayer: iso, scrollThreshold: 50, status: '.infscr-load-status', history: false, debug: true }; } // If blog layout == small_thumbs && infinite trigger == auto. else if( agama.blog_layout == 'small_thumbs' && agama.infinite_trigger == 'auto' ) { var options = { path: '.navigation a.next', append: '.article-wrapper', scrollThreshold: 50, status: '.infscr-load-status', history: false, debug: true }; } $container.infiniteScroll(options); } }, goToTop: function(){ $goToTopEl.click(function() { $('body,html').stop(true).animate({scrollTop:0},400); return false; }); }, goToTopScroll: function(){ if($window.scrollTop() > 450) { $goToTopEl.slideDown(); } else { $goToTopEl.slideUp(); } }, width: function() { return $window.width(); }, height: function() { if( $window.width() < 601 ) { return $window.height(); } else { return $window.height(); } } }; THEMEVISION.header = { init: function() { THEMEVISION.header.contentDistance(); THEMEVISION.header.superfish(); THEMEVISION.header.mobilemenu(); THEMEVISION.header.header_image(); }, contentDistance: function() { var top = $header.outerHeight() - 1; if( agama.headerStyle == 'sticky' || agama.headerStyle == 'transparent' && ! $slider.length && ! $headerImage.length ) { $headerDistance.css('height', top); } }, superfish: function() { // No menu location assigned fix if( $('div.agama-navigation').length ) { $('div.agama-navigation').children('ul').addClass('agama-navigation').unwrap(); } THEMEVISION.header.menuInvert(); if( !$().superfish ) { $body.addClass('no-superfish'); console.log('superfish: Superfish not Defined.'); return true; } $('body:not(.side-header) ul.agama-navigation:not(.on-click)').superfish({ popUpSelector: 'ul', delay: 250, speed: 350, animation: {opacity:'show'}, animationOut: {opacity:'hide'}, cssArrows: false }); }, menuInvert: function() { $('ul.agama-navigation ul').each( function( index, element ){ var $menuChildElement = $(element), menuChildOffset = $menuChildElement.offset(), menuChildWidth = $menuChildElement.width(), menuChildLeft = menuChildOffset.left; if(windowWidth - (menuChildWidth + menuChildLeft) < 0) { $menuChildElement.addClass('menu-pos-invert'); } }); }, topsocial: function(){ if( $topSocialEl.length > 0 ){ if( $body.hasClass('device-xl') || $body.hasClass('device-lg') ) { $topSocialEl.show(); $topSocialEl.find('a').css({width: 40}); $topSocialEl.find('.tv-text').each( function(){ var $clone = $(this).clone().css({'visibility': 'hidden', 'display': 'inline-block', 'font-size': '13px', 'font-weight':'bold'}).appendTo($body), cloneWidth = $clone.innerWidth() + 52; $(this).parent('a').attr('data-hover-width',cloneWidth); $clone.remove(); }); $topSocialEl.find('a').hover(function() { if( $(this).find('.tv-text').length > 0 ) { $(this).css({width: $(this).attr('data-hover-width')}); } }, function() { $(this).css({width: 40}); }); } else { $topSocialEl.show(); $topSocialEl.find('a').css({width: 40}); $topSocialEl.find('a').each(function() { var topIconTitle = $(this).find('.tv-text').text(); $(this).attr('title', topIconTitle); }); $topSocialEl.find('a').hover(function() { $(this).css({width: 40}); }, function() { $(this).css({width: 40}); }); if( $body.hasClass('device-xs') ) { $topSocialEl.hide(); $topSocialEl.slice(0, 8).show(); } } } }, mobilemenu: function(){ $(".mobile-menu ul.menu > li.menu-item-has-children").each(function(index) { var menuItemId = "mobile-menu-submenu-item-" + index; $('.mobile-menu ul.sub-menu').id = index; $('').insertAfter($(this).children("a")); $(this).children("ul").prop("id", menuItemId); $(this).children("ul").addClass("tv-collapse"); $("#" + menuItemId).on("show.tv.collapse", function() { $(this).parent().addClass("open"); }); $("#" + menuItemId).on("hidden.tv.collapse", function() { $(this).parent().removeClass("open"); }); }); $('.mobile-menu-toggle').click(function() { $(this).toggleClass('is-active'); $('nav.mobile-menu').slideToggle(); }); $window.on('resize', function(){ if( $window.width() > 992 ) { $('nav.mobile-menu').hide(); } }); }, header_image: function() { if( agama.headerImage && agama.header_image_particles == true ) { THEMEVISION.initialize.particles( agama.header_img_particles_c_color, agama.header_img_particles_l_color ); } } }; THEMEVISION.widgets = { init: function() { THEMEVISION.widgets.animations(); }, animations: function(){ if( !$().appear ) { console.log('animations: Appear not Defined.'); return true; } var $dataAnimateEl = $('[data-animate]'); if( $dataAnimateEl.length > 0 ){ if( $body.hasClass('device-xl') || $body.hasClass('device-lg') || $body.hasClass('device-md') ){ $dataAnimateEl.each(function(){ var element = $(this), animationDelay = element.attr('data-delay'), animationDelayTime = 0; if( animationDelay ) { animationDelayTime = Number( animationDelay ) + 500; } else { animationDelayTime = 500; } if( !element.hasClass('animated') ) { element.addClass('not-animated'); var elementAnimation = element.attr('data-animate'); element.appear(function () { setTimeout(function() { element.removeClass('not-animated').addClass( elementAnimation + ' animated'); }, animationDelayTime); },{accX: 0, accY: -120},'easeInCubic'); } }); } } } }; THEMEVISION.extras = { init: function(){ THEMEVISION.extras.tipsntabs(); THEMEVISION.extras.customclasses(); THEMEVISION.extras.bbPress(); THEMEVISION.extras.contact7form(); }, tipsntabs: function(){ $('[data-toggle="tv-tooltip"]').tooltip(); $('#tabs a:first').tab('show'); // Show first tab by default $('#tabs a').click(function (e) { e.preventDefault() $(this).tab('show'); }) }, customclasses: function(){ if( $('a').hasClass('comment-reply-link') ) { $('a.comment-reply-link').append(''); } }, bbPress: function(){ $('#bbp_search').addClass('sm-form-control'); $('#bbp_topic_title').addClass('sm-form-control'); }, contact7form: function() { if( $('input').hasClass('wpcf7-submit') ) { $('.wpcf7-submit').addClass('button button-3d'); } } }; THEMEVISION.isMobile = { Android: function() { return navigator.userAgent.match(/Android/i); }, BlackBerry: function() { return navigator.userAgent.match(/BlackBerry/i); }, iOS: function() { return navigator.userAgent.match(/iPhone|iPad|iPod/i); }, Opera: function() { return navigator.userAgent.match(/Opera Mini/i); }, Windows: function() { return navigator.userAgent.match(/IEMobile/i); }, any: function() { return (THEMEVISION.isMobile.Android() || THEMEVISION.isMobile.BlackBerry() || THEMEVISION.isMobile.iOS() || THEMEVISION.isMobile.Opera() || THEMEVISION.isMobile.Windows()); } }; // Document on resize THEMEVISION.documentOnResize = { init: function(){ var t = setTimeout( function(){ THEMEVISION.header.topsocial(); }, 500 ); THEMEVISION.header.contentDistance(); } }; // Document on ready THEMEVISION.documentOnReady = { init: function(){ THEMEVISION.initialize.init(); THEMEVISION.header.init(); THEMEVISION.widgets.init(); THEMEVISION.extras.init(); THEMEVISION.documentOnReady.windowscroll(); }, windowscroll: function(){ $window.on( 'scroll', function(){ THEMEVISION.initialize.goToTopScroll(); // Sticky Header Class if(jQuery(this).scrollTop() > 1){ // If sticky header & top navigation enabled if( agama.headerStyle == 'sticky' && agama.top_navigation ) { $topbar.hide(); } if( $header.hasClass('header_v1') && ! $body.hasClass('device-xs') || $header.hasClass('header_v3') && ! $body.hasClass('device-xs') ) { $header.addClass("shrinked"); } }else{ // If sticky header & top navigation enabled if( agama.headerStyle == 'sticky' && agama.top_navigation ) { $topbar.show(); } $header.removeClass("shrinked"); } }); } }; // Document on load THEMEVISION.documentOnLoad = { init: function(){ THEMEVISION.header.topsocial(); } }; var $window = $(window), $document = $(document), windowWidth = $window.width(), $body = $('body'), $wpadminbar = $('#wpadminbar'), $topbar = $('.agama-top-nav-wrapper'), $header = $('#masthead'), $header_v1 = $('#masthead.header_v1'), $header_v2 = $('#masthead.header_v2'), $header_v3 = $('#masthead.header_v3'), $headerImage = $('.header-image'), $headerDistance = $('#agama-header-distance'), $slider = $('#agama_slider'), $topSocialEl = $('#agama-top-social').find('li'), $goToTopEl = $('#toTop'); $(document).ready( THEMEVISION.documentOnReady.init ); $window.load( THEMEVISION.documentOnLoad.init ); $window.on( 'resize', THEMEVISION.documentOnResize.init ); })(jQuery);