(function($){
"use strict";
$(window).load(function() {
// Preloader
$('.loader').fadeOut();
$('.loader-mask').delay(350).fadeOut('slow');
$(window).trigger("resize");
initMasonry();
});
$(document).ready(function(){
$(window).trigger("resize");
initOwlCarousel();
initTextrotator();
initOnepagenav();
initPiechart();
if(window.location.hash.length > 0) {
window.scrollTo(0, $(window.location.hash).offset().top);
}
});
/* Full Height Container / Dropdowns
-------------------------------------------------------*/
$(window).resize(function(){
container_full_height_init();
var windowWidth = $(window).width();
if (windowWidth <= 974) {
$('.dropdown-toggle').attr('data-toggle', 'dropdown');
$('.navigation').removeClass("sticky offset scrolling");
$('.nav-type-4').find(".local-scroll-no-offset").removeClass('local-scroll-no-offset').addClass("local-scroll");
}
if (windowWidth > 974) {
$('.dropdown-toggle').removeAttr('data-toggle', 'dropdown');
$('.dropdown').removeClass('open');
$('.nav-type-4').find(".local-scroll").removeClass('local-scroll').addClass("local-scroll-no-offset");
}
/* Mobile Menu Resize
-------------------------------------------------------*/
$(".navbar .navbar-collapse").css("max-height", $(window).height() - $(".navbar-header").height() );
});
/* Sticky Navigation
-------------------------------------------------------*/
$(window).scroll(function(){
if ($(window).scrollTop() > 50 && $('.navbar-toggle').is(":hidden")){
$('.navigation-overlay, .navigation').addClass("sticky");
$('.logo-wrap').addClass("shrink");
$('.nav-left .logo-wrap').removeClass("shrink");
} else {
$('.navigation-overlay, .navigation').removeClass("sticky");
$('.logo-wrap').removeClass("shrink");
}
if ($(window).scrollTop() > 200 && $('.navbar-toggle').is(":hidden")){
$('.navigation').addClass("offset");
} else {
$('.navigation').removeClass("offset");
}
if ($(window).scrollTop() > 500 && $('.navbar-toggle').is(":hidden")){
$('.navigation').addClass("scrolling");
} else {
$('.navigation').removeClass("scrolling");
}
});
/* Full screen Navigation
-------------------------------------------------------*/
$('#nav-icon, .overlay-menu').on("click", function(){
$('#nav-icon').toggleClass('open');
$('#overlay').toggleClass('open');
});
// Closes the Responsive Menu on Menu Item Click
function initOnepagenav(){
$('.navigation-overlay .navbar-collapse ul li a, .nav-type-4 .navbar-collapse ul li a').on('click',function() {
$('.navbar-toggle:visible').click();
});
// Smooth Scroll Navigation
$('.local-scroll').localScroll({offset: {top: -60},duration: 1500,easing:'easeInOutExpo'});
$('.local-scroll-no-offset').localScroll({offset: {top: 0},duration: 1500,easing:'easeInOutExpo'});
}
/* Search
-------------------------------------------------------*/
$('.search-trigger').on('click',function(e){
e.preventDefault();
$('.search-wrap').animate({opacity: 'toggle'},500);
$('.nav-search').addClass("open");
$('.search-wrap .form-control').focus();
});
$('.search-close').on('click',function(e){
e.preventDefault();
$('.search-wrap').animate({opacity: 'toggle'},500);
$('.nav-search').removeClass("open");
});
function closeSearch(){
$('.search-wrap').fadeOut(200);
$('.nav-search').removeClass("open");
}
$(document.body).on('click',function(e) {
closeSearch();
});
$(".search-wrap, .search-trigger").on('click',function(e) {
e.stopPropagation();
});
/* Bootstrap Dropdown Navigation
-------------------------------------------------------*/
"use strict";!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):"object"==typeof exports?module.exports=a(require("jquery")):a(jQuery)}(function(a){function b(b){this.$element=a(b),this.$main=this.$element.closest(".dropdown, .dropup, .btn-group"),this.$menu=this.$element.parent(),this.$drop=this.$menu.parent().parent(),this.$menus=this.$menu.siblings(".dropdown-submenu");var d=this.$menu.find("> .dropdown-menu > "+c);this.$submenus=d.filter(".dropdown-submenu"),this.$items=d.not(".dropdown-submenu"),this.init()}var c=":not(.disabled, .divider, .dropdown-header)";return b.prototype={init:function(){this.$element.on({"click.bs.dropdown":this.click.bind(this),keydown:this.keydown.bind(this)}),this.$menu.on("hide.bs.submenu",this.hide.bind(this)),this.$items.on("keydown",this.item_keydown.bind(this)),this.$menu.nextAll(c+":first:not(.dropdown-submenu)").children("a").on("keydown",this.next_keydown.bind(this))},click:function(a){a.stopPropagation(),this.toggle()},toggle:function(){this.$menu.hasClass("open")?this.close():(this.$menu.addClass("open"),this.$menus.trigger("hide.bs.submenu"))},hide:function(a){a.stopPropagation(),this.close()},close:function(){this.$menu.removeClass("open"),this.$submenus.trigger("hide.bs.submenu")},keydown:function(a){if(/^(32|38|40)$/.test(a.keyCode)&&a.preventDefault(),/^(13|32)$/.test(a.keyCode))this.toggle();else if(/^(27|38|40)$/.test(a.keyCode))if(a.stopPropagation(),27==a.keyCode)this.$menu.hasClass("open")?this.close():(this.$menus.trigger("hide.bs.submenu"),this.$drop.removeClass("open").children("a").trigger("focus"));else{var b=this.$main.find("li:not(.disabled):visible > a"),c=b.index(a.target);if(38==a.keyCode&&0!==c)c--;else{if(40!=a.keyCode||c===b.length-1)return;c++}b.eq(c).trigger("focus")}},item_keydown:function(a){27==a.keyCode&&(a.stopPropagation(),this.close(),this.$element.trigger("focus"))},next_keydown:function(a){if(38==a.keyCode){a.preventDefault(),a.stopPropagation();var b=this.$drop.find("li:not(.disabled):visible > a"),c=b.index(a.target);b.eq(c-1).trigger("focus")}}},a.fn.submenupicker=function(c){var d=this instanceof a?this:a(c);return d.each(function(){var c=a.data(this,"bs.submenu");c||(c=new b(this),a.data(this,"bs.submenu",c))})}});
$('.dropdown-submenu > a').submenupicker();
/* Mobile Navigation
-------------------------------------------------------*/
$('.dropdown-toggle').on('click', function(e){
e.preventDefault();
});
/* IE Detect
-------------------------------------------------------*/
if(Function('/*@cc_on return document.documentMode===10@*/')()){ $("html").addClass("ie"); }
/* Mobile Detect
-------------------------------------------------------*/
if (/Android|iPhone|iPad|iPod|BlackBerry|Windows Phone/i.test(navigator.userAgent || navigator.vendor || window.opera)) {
$("html").addClass("mobile");
$('.dropdown-toggle').attr('data-toggle', 'dropdown');
}
else {
$("html").removeClass("mobile");
}
// Detect touch devices
if (!("ontouchstart" in document.documentElement)) {
document.documentElement.className += " no-touch";
}
/* Text Rotator
-------------------------------------------------------*/
function initTextrotator(){
$(".rotate").textrotator({
animation: "dissolve", // You can pick the way it animates when rotating through words. Options are dissolve (default), fade, flip, flipUp, flipCube, flipCubeUp and spin.
separator: ",",
speed: 15000
});
}
/* Lightbox popup
-------------------------------------------------------*/
$('.lightbox-gallery').magnificPopup({
type: 'image',
tLoading: 'Loading image #%curr%...',
gallery: {
enabled: true,
navigateByImgClick: true,
preload: [0,1]
},
image: {
titleSrc: 'title',
verticalFit: true
}
});
$(".lightbox-video").magnificPopup();
/* Isotope Filter
-------------------------------------------------------*/
$('.portfolio-filter').on( 'click', 'a', function(e) {
e.preventDefault();
var filterValue = $(this).attr('data-filter');
$container.isotope({ filter: filterValue });
$('.portfolio-filter a').removeClass('active');
$(this).closest('a').addClass('active');
});
/* Portfolio
-------------------------------------------------------*/
var $container = $('.works-grid');
$container.imagesLoaded( function() {
$container.isotope({
itemSelector: '.work-item',
layoutMode: 'fitRows',
percentPosition: true,
masonry: { columnWidth: '.work-img' }
});
});
/* Masonry
-------------------------------------------------------*/
function initMasonry(){
var $masonry = $('.masonry-grid');
$masonry.imagesLoaded( function() {
$masonry.isotope({
itemSelector: '.work-item',
layoutMode: 'masonry',
percentPosition: true,
resizable: false,
isResizeBound: false,
masonry: { columnWidth: '.work-item.quarter' }
});
});
$masonry.isotope();
}
/* Counters
-------------------------------------------------------*/
$('.statistic').appear(function() {
$('.timer').countTo({
speed: 4000,
refreshInterval: 60,
formatter: function (value, options) {
return value.toFixed(options.decimals);
}
});
});
/* Progress Bars
-------------------------------------------------------*/
var $section = $('#animated-skills').appear(function() {
function loadDaBars() {
var bar = $('.progress-bar');
var bar_width = $(this);
$(function(){
$(bar).each(function(){
bar_width = $(this).attr('aria-valuenow');
$(this).width(bar_width + '%');
});
});
}
loadDaBars();
});
/* Accordion
-------------------------------------------------------*/
var allPanels = $(".accordion > .panel-content").hide();
allPanels.first().slideDown("easeOutExpo");
$(".accordion > .acc-panel > a").first().addClass("active");
$(".accordion > .acc-panel > a").on('click', function(){
var current = $(this).parent().next(".panel-content");
$(".accordion > .acc-panel > a").removeClass("active");
$(this).addClass("active");
allPanels.not(current).slideUp("easeInExpo");
$(this).parent().next().slideDown("easeOutExpo");
return false;
});
/* Pie Charts
-------------------------------------------------------*/
function initPiechart(){
$('.chart').appear(function() {
$('.chart').easyPieChart({
animate:{
duration:1500,
enabled:true
},
scaleColor:false,
trackColor:'#f2f2f2',
lineWidth: 10,
size: 174,
lineCap: 'square',
onStep: function(from, to, percent) {
$(this.el).find('.percent').text(Math.round(percent));
}
});
var chart = window.chart = $('.chart').data('easyPieChart');
$('.js_update').on('click', function() {
chart.update(Math.random()*200-100);
});
});
}
/* Flexslider / Masonry
-------------------------------------------------------*/
$('#one-img-slide').flexslider({
animation: "slide",
directionNav: true,
touch: true,
slideshow: false,
prevText: [""],
nextText: [""],
start: function(){
var $container = $('.masonry');
$container.imagesLoaded( function() {
$container.isotope({
itemSelector: '.masonry-item',
layoutMode: 'masonry'
});
});
}
});
/* Owl Carousel
-------------------------------------------------------*/
function initOwlCarousel(){
(function($){
"use strict";
$("#owl-partners").owlCarousel({
autoPlay: 3000,
pagination: false,
itemsCustom: [
[0, 2],
[450, 2],
[700, 3],
[1000, 3],
[1200, 4],
[1400, 5],
[1600, 6]
],
})
// Owl Single
$("#owl-single").owlCarousel({
slideSpeed: 300,
singleItem: true,
paginationSpeed: 200,
pagination: true,
paginationNumbers: true
});
// Promo Section
var owlPromo = $("#owl-promo");
owlPromo.owlCarousel({
slideSpeed: 300,
pagination: false,
paginationSpeed: 400,
singleItem: true
});
// Blog Gallery Post
var owlBlog = $("#owl-blog");
owlBlog.owlCarousel({
slideSpeed: 300,
pagination: false,
paginationSpeed: 400,
itemsCustom: [
[0, 1],
[450, 1],
[1200, 2],
],
});
var owlRelated = $("#owl-related-works");
owlRelated.owlCarousel({
slideSpeed: 300,
paginationSpeed: 400,
items: 3,
itemsDesktop: [1199,3],
itemsDesktopSmall: [979,3],
pagination: false
});
// Custom Navigation Events
$(".next").on('click',function(){
owlPromo.trigger('owl.next');
owlBlog.trigger('owl.next');
owlRelated.trigger('owl.next');
})
$(".prev").on('click',function(){
owlPromo.trigger('owl.prev');
owlBlog.trigger('owl.prev');
owlRelated.trigger('owl.prev');
});
// Testimonials
$("#owl-testimonials").owlCarousel({
navigation: false,
slideSpeed: 300,
pagination: true,
paginationSpeed: 400,
singleItem: true,
autoPlay: 4000,
stopOnHover: true
});
// Owl Hero Slider
$("#owl-slider-one-img").owlCarousel({
transitionStyle: "fadeUp",
autoHeight: true,
navigation: true,
slideSpeed: 300,
singleItem: true,
navigationText: ["", ""]
});
})(jQuery);
};
// Wow Animations
var wow = new WOW({
offset: 50,
mobile: false
});
wow.init();
/* FitVIds
-------------------------------------------------------*/
$(".video-wrap").fitVids();
/* ---------------------------------------------------------------------- */
/* Contact Form
/* ---------------------------------------------------------------------- */
document.getElementById('contact-form').onsubmit = function(evt) {
evt.preventDefault();
var xhr = new XMLHttpRequest();
var url = 'https://bnlv03j2j9.execute-api.us-east-1.amazonaws.com/dev/contactform';
xhr.open('POST', url, true);
xhr.setRequestHeader("Content-type", "application/json");
xhr.onreadystatechange = function () {
if (xhr.readyState == 4 && xhr.status == 200) {
let alertMessage = $('#msg');
alertMessage.hide().removeClass('success').removeClass('error').addClass('success').html('Message sent!').fadeIn('slow').delay(5000).fadeOut('slow');
} else {
let alertMessage = $('#msg');
alertMessage.hide().removeClass('success').removeClass('error').addClass('error').html('Error sending contact email. Please e-mail zenchimesuk@gmail.com directly.').fadeIn('slow').delay(5000).fadeOut('slow');
}
}
var data = JSON.stringify({
contactEmail: evt.target.mail.value,
message: evt.target.comment.value,
subject: evt.target.subject.value,
name: evt.target.name.value
});
xhr.send(data);
}
})(jQuery);
/* Scroll to Top
-------------------------------------------------------*/
(function() {
"use strict";
var docElem = document.documentElement,
didScroll = false,
changeHeaderOn = 550;
document.querySelector( '#back-to-top' );
function init() {
window.addEventListener( 'scroll', function() {
if( !didScroll ) {
didScroll = true;
setTimeout( scrollPage, 50 );
}
}, false );
}
})();
$(window).scroll(function(event){
var scroll = $(window).scrollTop();
if (scroll >= 50) {
$("#back-to-top").addClass("show");
} else {
$("#back-to-top").removeClass("show");
}
});
$('a[href="#top"]').on('click',function(){
$('html, body').animate({scrollTop: 0}, 'slow');
return false;
});
/* Full Height Container
-------------------------------------------------------*/
function container_full_height_init(){
(function($){
$(".container-full-height").height($(window).height());
})(jQuery);
}