var $ = jquery.noconflict();
$.fn.inlinestyle = function (prop) {
return this.prop("style")[$.camelcase(prop)];
};
$.fn.doonce = function( func ) {
this.length && func.apply( this );
return this;
};
(function() {
var lasttime = 0;
var vendors = ['ms', 'moz', 'webkit', 'o'];
for(var x = 0; x < vendors.length && !window.requestanimationframe; ++x) {
window.requestanimationframe = window[vendors[x]+'requestanimationframe'];
window.cancelanimationframe = window[vendors[x]+'cancelanimationframe']
|| window[vendors[x]+'cancelrequestanimationframe'];
}
if (!window.requestanimationframe)
window.requestanimationframe = function(callback, element) {
var currtime = new date().gettime();
var timetocall = math.max(0, 16 - (currtime - lasttime));
var id = window.settimeout(function() { callback(currtime + timetocall); },
timetocall);
lasttime = currtime + timetocall;
return id;
};
if (!window.cancelanimationframe)
window.cancelanimationframe = function(id) {
cleartimeout(id);
};
}());
function debounce(func, wait, immediate) {
var timeout, args, context, timestamp, result;
return function() {
context = this;
args = arguments;
timestamp = new date();
var later = function() {
var last = (new date()) - timestamp;
if (last < wait) {
timeout = settimeout(later, wait - last);
} else {
timeout = null;
if (!immediate) result = func.apply(context, args);
}
};
var callnow = immediate && !timeout;
if (!timeout) {
timeout = settimeout(later, wait);
}
if (callnow) result = func.apply(context, args);
return result;
};
}
var requesting = false;
var killrequesting = debounce(function () {
requesting = false;
}, 100);
function onscrollsliderparallax() {
if (!requesting) {
requesting = true;
requestanimationframe(function(){
semicolon.slider.sliderparallax();
semicolon.slider.sliderelementsfade();
});
}
killrequesting();
}
var semicolon = semicolon || {};
(function($){
// use strict
"use strict";
semicolon.initialize = {
init: function(){
semicolon.initialize.responsiveclasses();
semicolon.initialize.stickyelements();
semicolon.initialize.gototop();
semicolon.initialize.lazyload();
semicolon.initialize.fullscreen();
semicolon.initialize.verticalmiddle();
semicolon.initialize.lightbox();
semicolon.initialize.resizevideos();
semicolon.initialize.imagefade();
semicolon.initialize.pagetransition();
semicolon.initialize.dataresponsiveclasses();
semicolon.initialize.dataresponsiveheights();
$('.fslider').addclass('preloader2');
},
responsiveclasses: function(){
if( typeof jrespond === 'undefined' ) {
console.log('responsiveclasses: jrespond not defined.');
return true;
}
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'); }
}
]);
},
verticalmiddle: function(){
if( $verticalmiddleel.length > 0 ) {
$verticalmiddleel.each( function(){
var element = $(this),
verticalmiddleh = element.outerheight(),
headerheight = $header.outerheight();
if( element.parents('#slider').length > 0 && !element.hasclass('ignore-header') ) {
if( $header.hasclass('transparent-header') && ( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) ) {
verticalmiddleh = verticalmiddleh - 70;
if( $slider.next('#header').length > 0 ) { verticalmiddleh = verticalmiddleh + headerheight; }
}
}
if( $body.hasclass('device-sm') || $body.hasclass('device-xs') ) {
if( element.parents('.full-screen').length && !element.parents('.force-full-screen').length ){
if( element.children('.col-padding').length > 0 ) {
element.css({ position: 'relative', top: '0', width: 'auto', margintop: '0' }).addclass('clearfix');
} else {
element.css({ position: 'relative', top: '0', width: 'auto', margintop: '0', paddingtop: '60px', paddingbottom: '60px' }).addclass('clearfix');
}
} else {
element.css({ position: 'absolute', top: '50%', width: '100%', paddingtop: '0', paddingbottom: '0', margintop: -(verticalmiddleh/2)+'px' });
}
} else {
element.css({ position: 'absolute', top: '50%', width: '100%', paddingtop: '0', paddingbottom: '0', margintop: -(verticalmiddleh/2)+'px' });
}
});
}
},
stickyelements: function(){
if( $sistickyel.length > 0 ) {
var sistickyh = $sistickyel.outerheight();
$sistickyel.css({ margintop: -(sistickyh/2)+'px' });
}
if( $dotsmenuel.length > 0 ) {
var opmdstickyh = $dotsmenuel.outerheight();
$dotsmenuel.css({ margintop: -(opmdstickyh/2)+'px' });
}
},
gototop: function(){
var elementscrollspeed = $gototopel.attr('data-speed'),
elementscrolleasing = $gototopel.attr('data-easing');
if( !elementscrollspeed ) { elementscrollspeed = 700; }
if( !elementscrolleasing ) { elementscrolleasing = 'easeoutquad'; }
$gototopel.click(function() {
$('body,html').stop(true).animate({
'scrolltop': 0
}, number( elementscrollspeed ), elementscrolleasing );
return false;
});
},
gototopscroll: function(){
var elementmobile = $gototopel.attr('data-mobile'),
elementoffset = $gototopel.attr('data-offset');
if( !elementoffset ) { elementoffset = 450; }
if( elementmobile != 'true' && ( $body.hasclass('device-sm') || $body.hasclass('device-xs') ) ) { return true; }
if( $window.scrolltop() > number(elementoffset) ) {
$gototopel.fadein();
$body.addclass('gototop-active');
} else {
$gototopel.fadeout();
$body.removeclass('gototop-active');
}
},
fullscreen: function(){
if( $fullscreenel.length > 0 ) {
$fullscreenel.each( function(){
var element = $(this),
scrheight = window.innerheight ? window.innerheight : $window.height(),
negativeheight = element.attr('data-negative-height');
if( element.attr('id') == 'slider' ) {
var sliderheightoff = $slider.offset().top;
scrheight = scrheight - sliderheightoff;
if( element.find('.slider-parallax-inner').length > 0 ) {
var transformval = element.find('.slider-parallax-inner').css('transform'),
transformx = transformval.match(/-?[\d\.]+/g);
if( !transformx ) { var transformxvalue = 0; } else { var transformxvalue = transformx[5]; }
scrheight = ( ( window.innerheight ? window.innerheight : $window.height() ) + number( transformxvalue ) ) - sliderheightoff;
}
if( $('#slider.with-header').next('#header:not(.transparent-header)').length > 0 && ( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) ) {
var headerheightoff = $header.outerheight();
scrheight = scrheight - headerheightoff;
}
}
if( element.parents('.full-screen').length > 0 ) { scrheight = element.parents('.full-screen').height(); }
if( $body.hasclass('device-sm') || $body.hasclass('device-xs') ) {
if( !element.hasclass('force-full-screen') ){ scrheight = 'auto'; }
}
if( negativeheight ){ scrheight = scrheight - number(negativeheight); }
element.css('height', scrheight);
if( element.attr('id') == 'slider' && !element.hasclass('canvas-slider-grid') ) { if( element.has('.swiper-slide') ) { element.find('.swiper-slide').css('height', scrheight); } }
});
}
},
maxheight: function(){
if( $commonheightel.length > 0 ) {
if( $commonheightel.hasclass('customjs') ) { return true; }
$commonheightel.each( function(){
var element = $(this);
if( element.find('.common-height').length > 0 ) {
semicolon.initialize.commonheight( element.find('.common-height:not(.customjs)') );
}
semicolon.initialize.commonheight( element );
});
}
},
commonheight: function( element ){
var maxheight = 0;
element.children('[class*=col-]').each( function(){
var elementchild = $(this).children();
if( elementchild.hasclass('max-height') ){
maxheight = elementchild.outerheight();
} else {
if (elementchild.outerheight() > maxheight)
maxheight = elementchild.outerheight();
}
});
element.children('[class*=col-]').each(function() {
$(this).height(maxheight);
});
},
testimonialsgrid: function(){
if( $testimonialsgridel.length > 0 ) {
if( $body.hasclass('device-md') || $body.hasclass('device-lg') || $body.hasclass('device-xl') ) {
var maxheight = 0;
$testimonialsgridel.each( function(){
$(this).find("li > .testimonial").each(function(){
if ($(this).height() > maxheight) { maxheight = $(this).height(); }
});
$(this).find("li").height(maxheight);
maxheight = 0;
});
} else {
$testimonialsgridel.find("li").css({ 'height': 'auto' });
}
}
},
lightbox: function(){
if( !$().magnificpopup ) {
console.log('lightbox: magnific popup not defined.');
return true;
}
var $lightboximageel = $('[data-lightbox="image"]'),
$lightboxgalleryel = $('[data-lightbox="gallery"]'),
$lightboxiframeel = $('[data-lightbox="iframe"]'),
$lightboxinlineel = $('[data-lightbox="inline"]'),
$lightboxajaxel = $('[data-lightbox="ajax"]'),
$lightboxajaxgalleryel = $('[data-lightbox="ajax-gallery"]');
if( $lightboximageel.length > 0 ) {
$lightboximageel.magnificpopup({
type: 'image',
closeoncontentclick: true,
closebtninside: false,
fixedcontentpos: true,
mainclass: 'mfp-no-margins mfp-fade', // class to remove default margin from left and right side
image: {
verticalfit: true
}
});
}
if( $lightboxgalleryel.length > 0 ) {
$lightboxgalleryel.each(function() {
var element = $(this);
if( element.find('a[data-lightbox="gallery-item"]').parent('.clone').hasclass('clone') ) {
element.find('a[data-lightbox="gallery-item"]').parent('.clone').find('a[data-lightbox="gallery-item"]').attr('data-lightbox','');
}
if( element.find('a[data-lightbox="gallery-item"]').parents('.cloned').hasclass('cloned') ) {
element.find('a[data-lightbox="gallery-item"]').parents('.cloned').find('a[data-lightbox="gallery-item"]').attr('data-lightbox','');
}
element.magnificpopup({
delegate: 'a[data-lightbox="gallery-item"]',
type: 'image',
closeoncontentclick: true,
closebtninside: false,
fixedcontentpos: true,
mainclass: 'mfp-no-margins mfp-fade', // class to remove default margin from left and right side
image: {
verticalfit: true
},
gallery: {
enabled: true,
navigatebyimgclick: true,
preload: [0,1] // will preload 0 - before current, and 1 after the current image
}
});
});
}
if( $lightboxiframeel.length > 0 ) {
$lightboxiframeel.magnificpopup({
disableon: 600,
type: 'iframe',
removaldelay: 160,
preloader: false,
fixedcontentpos: false
});
}
if( $lightboxinlineel.length > 0 ) {
$lightboxinlineel.magnificpopup({
type: 'inline',
mainclass: 'mfp-no-margins mfp-fade',
closebtninside: false,
fixedcontentpos: true,
overflowy: 'scroll'
});
}
if( $lightboxajaxel.length > 0 ) {
$lightboxajaxel.magnificpopup({
type: 'ajax',
closebtninside: false,
callbacks: {
ajaxcontentadded: function(mfpresponse) {
semicolon.widget.loadflexslider();
semicolon.initialize.resizevideos();
semicolon.widget.masonrythumbs();
},
open: function() {
$body.addclass('ohidden');
},
close: function() {
$body.removeclass('ohidden');
}
}
});
}
if( $lightboxajaxgalleryel.length > 0 ) {
$lightboxajaxgalleryel.magnificpopup({
delegate: 'a[data-lightbox="ajax-gallery-item"]',
type: 'ajax',
closebtninside: false,
gallery: {
enabled: true,
preload: 0,
navigatebyimgclick: false
},
callbacks: {
ajaxcontentadded: function(mfpresponse) {
semicolon.widget.loadflexslider();
semicolon.initialize.resizevideos();
semicolon.widget.masonrythumbs();
},
open: function() {
$body.addclass('ohidden');
},
close: function() {
$body.removeclass('ohidden');
}
}
});
}
},
modal: function(){
if( !$().magnificpopup ) {
console.log('modal: magnific popup not defined.');
return true;
}
var $modal = $('.modal-on-load:not(.customjs)');
if( $modal.length > 0 ) {
$modal.each( function(){
var element = $(this),
elementtarget = element.attr('data-target'),
elementtargetvalue = elementtarget.split('#')[1],
elementdelay = element.attr('data-delay'),
elementtimeout = element.attr('data-timeout'),
elementanimatein = element.attr('data-animate-in'),
elementanimateout = element.attr('data-animate-out');
if( !element.hasclass('enable-cookie') ) { $.removecookie( elementtargetvalue ); }
if( element.hasclass('enable-cookie') ) {
var elementcookie = $.cookie( elementtargetvalue );
if( typeof elementcookie !== 'undefined' && elementcookie == '0' ) {
return true;
}
}
if( !elementdelay ) {
elementdelay = 1500;
} else {
elementdelay = number(elementdelay) + 1500;
}
var t = settimeout(function() {
$.magnificpopup.open({
items: { src: elementtarget },
type: 'inline',
mainclass: 'mfp-no-margins mfp-fade',
closebtninside: true,
fixedcontentpos: true,
removaldelay: 500,
callbacks: {
open: function(){
if( elementanimatein != '' ) {
$(elementtarget).addclass( elementanimatein + ' animated' );
}
},
beforeclose: function(){
if( elementanimateout != '' ) {
$(elementtarget).removeclass( elementanimatein ).addclass( elementanimateout );
}
},
afterclose: function() {
if( elementanimatein != '' || elementanimateout != '' ) {
$(elementtarget).removeclass( elementanimatein + ' ' + elementanimateout + ' animated' );
}
if( element.hasclass('enable-cookie') ) {
$.cookie( elementtargetvalue, '0' );
}
}
}
}, 0);
}, number(elementdelay) );
if( elementtimeout != '' ) {
var to = settimeout(function() {
$.magnificpopup.close();
}, number(elementdelay) + number(elementtimeout) );
}
});
}
},
resizevideos: function(){
if( !$().fitvids ) {
console.log('resizevideos: fitvids not defined.');
return true;
}
$("#content,#footer,.slider-element:not(.revslider-wrap),.landing-offer-media,.portfolio-ajax-modal,.mega-menu-column").fitvids({
customselector: "iframe[src^='http://www.dailymotion.com/embed'], iframe[src*='maps.google.com'], iframe[src*='google.com/maps']",
ignore: '.no-fv'
});
},
imagefade: function(){
$('.image_fade').hover( function(){
$(this).filter(':not(:animated)').animate({opacity: 0.8}, 400);
}, function() {
$(this).animate({opacity: 1}, 400);
});
},
blogtimelineentries: function(){
$('.post-timeline.grid-2').find('.entry').each( function(){
var position = $(this).inlinestyle('left');
if( position == '0px' ) {
$(this).removeclass('alt');
} else {
$(this).addclass('alt');
}
$(this).find('.entry-timeline').fadein();
});
$('.entry.entry-date-section').next().next().find('.entry-timeline').css({ 'top': '70px' });
},
pagetransition: function(){
if( $body.hasclass('no-transition') ) { return true; }
if( !$().animsition ) {
$body.addclass('no-transition');
console.log('pagetransition: animsition not defined.');
return true;
}
window.onpageshow = function(event) {
if(event.persisted) {
window.location.reload();
}
};
var animationin = $body.attr('data-animation-in'),
animationout = $body.attr('data-animation-out'),
durationin = $body.attr('data-speed-in'),
durationout = $body.attr('data-speed-out'),
timeoutactive = false,
loadertimeout = $body.attr('data-loader-timeout'),
loaderstyle = $body.attr('data-loader'),
loadercolor = $body.attr('data-loader-color'),
loaderstylehtml = $body.attr('data-loader-html'),
loaderbgstyle = '',
loaderborderstyle = '',
loaderbgclass = '',
loaderborderclass = '',
loaderbgclass2 = '',
loaderborderclass2 = '';
if( !animationin ) { animationin = 'fadein'; }
if( !animationout ) { animationout = 'fadeout'; }
if( !durationin ) { durationin = 1500; }
if( !durationout ) { durationout = 800; }
if( !loaderstylehtml ) { loaderstylehtml = '
'; }
if( !loadertimeout ) {
timeoutactive = false;
loadertimeout = false;
} else {
timeoutactive = true;
loadertimeout = number(loadertimeout);
}
if( loadercolor ) {
if( loadercolor == 'theme' ) {
loaderbgclass = ' bgcolor';
loaderborderclass = ' border-color';
loaderbgclass2 = ' class="bgcolor"';
loaderborderclass2 = ' class="border-color"';
} else {
loaderbgstyle = ' style="background-color:'+ loadercolor +';"';
loaderborderstyle = ' style="border-color:'+ loadercolor +';"';
}
loaderstylehtml = ''
}
if( loaderstyle == '2' ) {
loaderstylehtml = '';
} else if( loaderstyle == '3' ) {
loaderstylehtml = '';
} else if( loaderstyle == '4' ) {
loaderstylehtml = '';
} else if( loaderstyle == '5' ) {
loaderstylehtml = '';
} else if( loaderstyle == '6' ) {
loaderstylehtml = '';
} else if( loaderstyle == '7' ) {
loaderstylehtml = '';
} else if( loaderstyle == '8' ) {
loaderstylehtml = '';
} else if( loaderstyle == '9' ) {
loaderstylehtml = '';
} else if( loaderstyle == '10' ) {
loaderstylehtml = '';
} else if( loaderstyle == '11' ) {
loaderstylehtml = '';
} else if( loaderstyle == '12' ) {
loaderstylehtml = '';
} else if( loaderstyle == '13' ) {
loaderstylehtml = '';
} else if( loaderstyle == '14' ) {
loaderstylehtml = '';
}
$wrapper.animsition({
inclass: animationin,
outclass: animationout,
induration: number(durationin),
outduration: number(durationout),
linkelement: '#primary-menu:not(.on-click) ul li a:not([target="_blank"]):not([href*="#"]):not([data-lightbox]):not([href^="mailto"]):not([href^="tel"]):not([href^="sms"]):not([href^="call"])',
loading: true,
loadingparentelement: 'body',
loadingclass: 'css3-spinner',
loadinginner: loaderstylehtml,
timeout: timeoutactive,
timeoutcountdown: loadertimeout,
onloadevent: true,
browser: [ 'animation-duration', '-webkit-animation-duration'],
overlay: false,
overlayclass: 'animsition-overlay-slide',
overlayparentelement: 'body'
});
},
lazyload: function() {
var lazyloadel = $('[data-lazyload]');
if( !$().appear ) {
console.log('lazyload: appear not defined.');
return true;
}
if( lazyloadel.length > 0 ) {
lazyloadel.each( function(){
var element = $(this),
elementimg = element.attr( 'data-lazyload' );
element.attr( 'src', 'images/blank.svg' ).css({ 'background': 'url(images/preloader.gif) no-repeat center center #fff' });
element.appear(function () {
element.css({ 'background': 'none' }).removeattr( 'width' ).removeattr( 'height' ).attr('src', elementimg);
},{accx: 0, accy: 120},'easeincubic');
});
}
},
topscrolloffset: function() {
var topoffsetscroll = 0;
if( ( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) && !semicolon.ismobile.any() ) {
if( $header.hasclass('sticky-header') ) {
if( $pagemenu.hasclass('dots-menu') ) { topoffsetscroll = 100; } else { topoffsetscroll = 144; }
} else {
if( $pagemenu.hasclass('dots-menu') ) { topoffsetscroll = 140; } else { topoffsetscroll = 184; }
}
if( !$pagemenu.length ) {
if( $header.hasclass('sticky-header') ) { topoffsetscroll = 100; } else { topoffsetscroll = 140; }
}
} else {
topoffsetscroll = 40;
}
return topoffsetscroll;
},
definecolumns: function( element ){
var column = 4,
xlcol = element.attr('data-xl-col'),
lgcol = element.attr('data-lg-col'),
mdcol = element.attr('data-md-col'),
smcol = element.attr('data-sm-col'),
xscol = element.attr('data-xs-col');
if( element.hasclass('portfolio-full') ) {
if( element.hasclass('portfolio-3') ) column = 3;
else if( element.hasclass('portfolio-5') ) column = 5;
else if( element.hasclass('portfolio-6') ) column = 6;
else column = 4;
if( $body.hasclass('device-md') && ( column == 4 || column == 5 || column == 6 ) ) {
column = 3;
} else if( $body.hasclass('device-sm') && ( column == 3 || column == 4 || column == 5 || column == 6 ) ) {
column = 2;
} else if( $body.hasclass('device-xs') ) {
column = 1;
}
} else if( element.hasclass('masonry-thumbs') ) {
if( element.hasclass('grid-2') ) column = 2;
else if( element.hasclass('grid-3') ) column = 3;
else if( element.hasclass('grid-5') ) column = 5;
else if( element.hasclass('grid-6') ) column = 6;
else column = 4;
}
if( $body.hasclass('device-xl') ) {
if( xlcol ) { column = number(xlcol); }
} else if( $body.hasclass('device-lg') ) {
if( lgcol ) { column = number(lgcol); }
} else if( $body.hasclass('device-md') ) {
if( mdcol ) { column = number(mdcol); }
} else if( $body.hasclass('device-sm') ) {
if( smcol ) { column = number(smcol); }
} else if( $body.hasclass('device-xs') ) {
if( xscol ) { column = number(xscol); }
}
return column;
},
setfullcolumnwidth: function( element ){
if( !$().isotope ) {
console.log('setfullcolumnwidth: isotope not defined.');
return true;
}
element.css({ 'width': '' });
if( element.hasclass('portfolio-full') ) {
var columns = semicolon.initialize.definecolumns( element ),
containerwidth = element.width(),
postwidth = math.floor(containerwidth/columns);
if( $body.hasclass('device-xs') ) { var devicesmallest = 1; } else { var devicesmallest = 0; }
element.find(".portfolio-item").each(function(index){
if( devicesmallest == 0 && $(this).hasclass('wide') ) { var elementsize = ( postwidth*2 ); } else { var elementsize = postwidth; }
$(this).css({"width":elementsize+"px"});
});
} else if( element.hasclass('masonry-thumbs') ) {
var columns = semicolon.initialize.definecolumns( element ),
containerwidth = element.innerwidth();
if( containerwidth == windowwidth ){
containerwidth = windowwidth*1.005;
element.css({ 'width': containerwidth+'px' });
}
var postwidth = (containerwidth/columns);
postwidth = math.floor(postwidth);
if( ( postwidth * columns ) >= containerwidth ) { element.css({ 'margin-right': '-1px' }); }
element.children('a').css({"width":postwidth+"px"});
var firstelementwidth = element.find('a:eq(0)').outerwidth();
element.isotope({
masonry: {
columnwidth: firstelementwidth
}
});
var bigimagenumbers = element.attr('data-big');
if( bigimagenumbers ) {
bigimagenumbers = bigimagenumbers.split(",");
var bigimagenumber = '',
bigi = '';
for( bigi = 0; bigi < bigimagenumbers.length; bigi++ ){
bigimagenumber = number(bigimagenumbers[bigi]) - 1;
element.find('a:eq('+bigimagenumber+')').css({ width: firstelementwidth*2 + 'px' });
}
var t = settimeout( function(){
element.isotope('layout');
}, 1000 );
}
}
},
aspectresizer: function(){
var $aspectresizerel = $('.aspect-resizer');
if( $aspectresizerel.length > 0 ) {
$aspectresizerel.each( function(){
var element = $(this),
elementw = element.inlinestyle('width'),
elementh = element.inlinestyle('height'),
elementpw = element.parent().innerwidth();
});
}
},
dataresponsiveclasses: function(){
var $dataclassxs = $('[data-class-xs]'),
$dataclasssm = $('[data-class-sm]'),
$dataclassmd = $('[data-class-md]'),
$dataclasslg = $('[data-class-lg]'),
$dataclassxl = $('[data-class-xl]');
if( $dataclassxs.length > 0 ) {
$dataclassxs.each( function(){
var element = $(this),
elementclass = element.attr('data-class-xs'),
elementclassdelete = element.attr('data-class-sm') + ' ' + element.attr('data-class-md') + ' ' + element.attr('data-class-lg') + ' ' + element.attr('data-class-xl');
if( $body.hasclass('device-xs') ) {
element.removeclass( elementclassdelete );
element.addclass( elementclass );
}
});
}
if( $dataclasssm.length > 0 ) {
$dataclasssm.each( function(){
var element = $(this),
elementclass = element.attr('data-class-sm'),
elementclassdelete = element.attr('data-class-xs') + ' ' + element.attr('data-class-md') + ' ' + element.attr('data-class-lg') + ' ' + element.attr('data-class-xl');
if( $body.hasclass('device-sm') ) {
element.removeclass( elementclassdelete );
element.addclass( elementclass );
}
});
}
if( $dataclassmd.length > 0 ) {
$dataclassmd.each( function(){
var element = $(this),
elementclass = element.attr('data-class-md'),
elementclassdelete = element.attr('data-class-xs') + ' ' + element.attr('data-class-sm') + ' ' + element.attr('data-class-lg') + ' ' + element.attr('data-class-xl');
if( $body.hasclass('device-md') ) {
element.removeclass( elementclassdelete );
element.addclass( elementclass );
}
});
}
if( $dataclasslg.length > 0 ) {
$dataclasslg.each( function(){
var element = $(this),
elementclass = element.attr('data-class-lg'),
elementclassdelete = element.attr('data-class-xs') + ' ' + element.attr('data-class-sm') + ' ' + element.attr('data-class-md') + ' ' + element.attr('data-class-xl');
if( $body.hasclass('device-lg') ) {
element.removeclass( elementclassdelete );
element.addclass( elementclass );
}
});
}
if( $dataclassxl.length > 0 ) {
$dataclassxl.each( function(){
var element = $(this),
elementclass = element.attr('data-class-xl'),
elementclassdelete = element.attr('data-class-xs') + ' ' + element.attr('data-class-sm') + ' ' + element.attr('data-class-md') + ' ' + element.attr('data-class-lg');
if( $body.hasclass('device-xl') ) {
element.removeclass( elementclassdelete );
element.addclass( elementclass );
}
});
}
},
dataresponsiveheights: function(){
var $dataheightxs = $('[data-height-xs]'),
$dataheightsm = $('[data-height-sm]'),
$dataheightmd = $('[data-height-md]'),
$dataheightlg = $('[data-height-lg]'),
$dataheightxl = $('[data-height-xl]');
if( $dataheightxs.length > 0 ) {
$dataheightxs.each( function(){
var element = $(this),
elementheight = element.attr('data-height-xs');
if( $body.hasclass('device-xs') ) {
if( elementheight != '' ) { element.css( 'height', elementheight ); }
}
});
}
if( $dataheightsm.length > 0 ) {
$dataheightsm.each( function(){
var element = $(this),
elementheight = element.attr('data-height-sm');
if( $body.hasclass('device-sm') ) {
if( elementheight != '' ) { element.css( 'height', elementheight ); }
}
});
}
if( $dataheightmd.length > 0 ) {
$dataheightmd.each( function(){
var element = $(this),
elementheight = element.attr('data-height-md');
if( $body.hasclass('device-md') ) {
if( elementheight != '' ) { element.css( 'height', elementheight ); }
}
});
}
if( $dataheightlg.length > 0 ) {
$dataheightlg.each( function(){
var element = $(this),
elementheight = element.attr('data-height-lg');
if( $body.hasclass('device-lg') ) {
if( elementheight != '' ) { element.css( 'height', elementheight ); }
}
});
}
if( $dataheightxl.length > 0 ) {
$dataheightxl.each( function(){
var element = $(this),
elementheight = element.attr('data-height-xl');
if( $body.hasclass('device-xl') ) {
if( elementheight != '' ) { element.css( 'height', elementheight ); }
}
});
}
},
stickfooteronsmall: function(){
$footer.css({ 'margin-top': '' });
var windowh = $window.height(),
wrapperh = $wrapper.height();
if( !$body.hasclass('sticky-footer') && $footer.length > 0 && $wrapper.has('#footer') ) {
if( windowh > wrapperh ) {
$footer.css({ 'margin-top': ( windowh - wrapperh ) });
}
}
},
stickyfooter: function(){
if( $body.hasclass('sticky-footer') && $footer.length > 0 && ( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) ) {
var stickyfooter = $footer.outerheight();
$content.css({ 'margin-bottom': stickyfooter });
} else {
$content.css({ 'margin-bottom': 0 });
}
}
};
semicolon.header = {
init: function(){
semicolon.header.superfish();
semicolon.header.menufunctions();
semicolon.header.fullwidthmenu();
semicolon.header.overlaymenu();
semicolon.header.stickymenu();
semicolon.header.stickypagemenu();
semicolon.header.sideheader();
semicolon.header.sidepanel();
semicolon.header.onepagescroll();
semicolon.header.onepagescroller();
semicolon.header.logo();
semicolon.header.topsearch();
semicolon.header.topcart();
},
superfish: function(){
if( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) {
$('#primary-menu ul ul, #primary-menu ul .mega-menu-content').css('display', 'block');
semicolon.header.menuinvert();
$('#primary-menu ul ul, #primary-menu ul .mega-menu-content').css('display', '');
}
if( !$().superfish ) {
$body.addclass('no-superfish');
console.log('superfish: superfish not defined.');
return true;
}
$('body:not(.side-header) #primary-menu:not(.on-click) > ul, body:not(.side-header) #primary-menu:not(.on-click) > div > ul:not(.dropdown-menu), .top-links:not(.on-click) > ul').superfish({
popupselector: 'ul,.mega-menu-content',//,.top-link-section
delay: 250,
speed: 350,
animation: {opacity:'show'},
animationout: {opacity:'hide'},
cssarrows: false,
onshow: function(){
var megamenucontent = $(this);
if( megamenucontent.find('.owl-carousel.customjs').length > 0 ) {
megamenucontent.find('.owl-carousel').removeclass('customjs');
semicolon.widget.carousel();
}
if( megamenucontent.hasclass('mega-menu-content') && megamenucontent.find('.widget').length > 0 ) {
if( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) {
settimeout( function(){ semicolon.initialize.commonheight( megamenucontent ); }, 200);
} else {
megamenucontent.children().height('');
}
}
}
});
$('body.side-header #primary-menu:not(.on-click) > ul').superfish({
popupselector: 'ul',
delay: 250,
speed: 350,
animation: {opacity:'show',height:'show'},
animationout: {opacity:'hide',height:'hide'},
cssarrows: false
});
},
menuinvert: function() {
$('#primary-menu .mega-menu-content, #primary-menu ul 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');
}
});
},
menufunctions: function(){
$( '#primary-menu ul li:has(ul)' ).addclass('sub-menu');
$( '.top-links ul li:has(ul) > a, #primary-menu.with-arrows > ul > li:has(ul) > a > div, #primary-menu.with-arrows > div > ul > li:has(ul) > a > div, #page-menu nav ul li:has(ul) > a > div' ).append( '' );
$( '.top-links > ul' ).addclass( 'clearfix' );
if( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) {
$('#primary-menu.sub-title > ul > li').hover(function() {
$(this).prev().css({ backgroundimage : 'none' });
}, function() {
$(this).prev().css({ backgroundimage : 'url("images/icons/menu-divider.png")' });
});
$('#primary-menu.sub-title').children('ul').children('.current').prev().css({ backgroundimage : 'none' });
}
$('#primary-menu.on-click li:has(ul) > a').on( 'click', function(e){
$(this).parents('.sub-menu').siblings().find('ul,.mega-menu-content').removeclass('d-block');
$(this).parent('li').children('ul,.mega-menu-content').toggleclass('d-block');
e.preventdefault();
});
// var responsivethreshold = $header.attr('data-responsive-under');
// if( !responsivethreshold ) { responsivethreshold = 992; }
// if( windowwidth < number( responsivethreshold ) ) {
// $body.addclass('mobile-header-active');
// } else {
// $body.removeclass('mobile-header-active');
// }
if( semicolon.ismobile.android() ) {
$( '#primary-menu ul li.sub-menu' ).children('a').on('touchstart', function(e){
if( !$(this).parent('li.sub-menu').hasclass('sfhover') ) {
e.preventdefault();
}
});
}
if( semicolon.ismobile.windows() ) {
if( $().superfish ){
$('#primary-menu > ul, #primary-menu > div > ul,.top-links > ul').superfish('destroy').addclass('windows-mobile-menu');
} else {
$('#primary-menu > ul, #primary-menu > div > ul,.top-links > ul').addclass('windows-mobile-menu');
console.log('menufunctions: superfish not defined.');
}
$( '#primary-menu ul li:has(ul)' ).append('');
$( '#primary-menu ul li.sub-menu' ).children('a.wn-submenu-trigger').click( function(e){
$(this).parent().toggleclass('open');
$(this).parent().find('> ul, > .mega-menu-content').stop(true,true).toggle();
return false;
});
}
},
fullwidthmenu: function(){
if( $body.hasclass('stretched') ) {
if( $header.find('.container-fullwidth').length > 0 ) { $('.mega-menu .mega-menu-content').css({ 'width': $wrapper.width() - 120 }); }
if( $header.hasclass('full-header') ) { $('.mega-menu .mega-menu-content').css({ 'width': $wrapper.width() - 60 }); }
} else {
if( $header.find('.container-fullwidth').length > 0 ) { $('.mega-menu .mega-menu-content').css({ 'width': $wrapper.width() - 120 }); }
if( $header.hasclass('full-header') ) { $('.mega-menu .mega-menu-content').css({ 'width': $wrapper.width() - 80 }); }
}
},
overlaymenu: function(){
if( $body.hasclass('overlay-menu') ) {
var overlaymenuitem = $('#primary-menu').children('ul').children('li'),
overlaymenuitemheight = overlaymenuitem.outerheight(),
overlaymenuitemtheight = overlaymenuitem.length * overlaymenuitemheight,
firstitemoffset = ( $window.height() - overlaymenuitemtheight ) / 2;
$('#primary-menu').children('ul').children('li:first-child').css({ 'margin-top': firstitemoffset+'px' });
}
},
stickymenu: function( headeroffset ){
if ($window.scrolltop() > headeroffset) {
if( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) {
$('body:not(.side-header) #header:not(.no-sticky)').addclass('sticky-header');
if( !$headerwrap.hasclass('force-not-dark') ) { $headerwrap.removeclass('not-dark'); }
semicolon.header.stickymenuclass();
} else if( $body.hasclass('device-sm') || $body.hasclass('device-xs') || $body.hasclass('device-md') ) {
if( $body.hasclass('sticky-responsive-menu') ) {
$('#header:not(.no-sticky)').addclass('responsive-sticky-header');
semicolon.header.stickymenuclass();
}
}
} else {
semicolon.header.removestickyness();
}
},
stickypagemenu: function( pagemenuoffset ){
if ($window.scrolltop() > pagemenuoffset) {
if( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) {
$('#page-menu:not(.dots-menu,.no-sticky)').addclass('sticky-page-menu');
} else if( $body.hasclass('device-sm') || $body.hasclass('device-xs') || $body.hasclass('device-md') ) {
if( $body.hasclass('sticky-responsive-pagemenu') ) {
$('#page-menu:not(.dots-menu,.no-sticky)').addclass('sticky-page-menu');
}
}
} else {
$('#page-menu:not(.dots-menu,.no-sticky)').removeclass('sticky-page-menu');
}
},
removestickyness: function(){
if( $header.hasclass('sticky-header') ){
$('body:not(.side-header) #header:not(.no-sticky)').removeclass('sticky-header');
$header.removeclass().addclass(oldheaderclasses);
$headerwrap.removeclass().addclass(oldheaderwrapclasses);
if( !$headerwrap.hasclass('force-not-dark') ) { $headerwrap.removeclass('not-dark'); }
semicolon.slider.swiperslidermenu();
semicolon.slider.revolutionslidermenu();
}
if( $header.hasclass('responsive-sticky-header') ){
$('body.sticky-responsive-menu #header').removeclass('responsive-sticky-header');
}
if( ( $body.hasclass('device-sm') || $body.hasclass('device-xs') || $body.hasclass('device-md') ) && ( typeof responsivemenuclasses === 'undefined' ) ) {
$header.removeclass().addclass(oldheaderclasses);
$headerwrap.removeclass().addclass(oldheaderwrapclasses);
if( !$headerwrap.hasclass('force-not-dark') ) { $headerwrap.removeclass('not-dark'); }
}
},
sideheader: function(){
$("#header-trigger").click(function(){
$('body.open-header').toggleclass("side-header-open");
return false;
});
},
sidepanel: function(){
$(".side-panel-trigger").click(function(){
$body.toggleclass("side-panel-open");
if( $body.hasclass('device-touch') && $body.hasclass('side-push-panel') ) {
$body.toggleclass("ohidden");
}
return false;
});
},
onepagescroll: function(){
if( $onepagemenuel.length > 0 ){
var onepagespeed = $onepagemenuel.attr('data-speed'),
onepageoffset = $onepagemenuel.attr('data-offset'),
onepageeasing = $onepagemenuel.attr('data-easing');
if( !onepagespeed ) { onepagespeed = 1000; }
if( !onepageeasing ) { onepageeasing = 'easeoutquad'; }
$onepagemenuel.find('a[data-href]').click(function(){
var element = $(this),
divscrolltoanchor = element.attr('data-href'),
divscrollspeed = element.attr('data-speed'),
divscrolloffset = element.attr('data-offset'),
divscrolleasing = element.attr('data-easing');
if( $( divscrolltoanchor ).length > 0 ) {
if( !onepageoffset ) {
var onepageoffsetg = semicolon.initialize.topscrolloffset();
} else {
var onepageoffsetg = onepageoffset;
}
if( !divscrollspeed ) { divscrollspeed = onepagespeed; }
if( !divscrolloffset ) { divscrolloffset = onepageoffsetg; }
if( !divscrolleasing ) { divscrolleasing = onepageeasing; }
if( $onepagemenuel.hasclass('no-offset') ) { divscrolloffset = 0; }
onepageglobaloffset = number(divscrolloffset);
$onepagemenuel.find('li').removeclass('current');
$onepagemenuel.find('a[data-href="' + divscrolltoanchor + '"]').parent('li').addclass('current');
if( windowwidth < 768 || $body.hasclass('overlay-menu') ) {
if( $('#primary-menu').find('ul.mobile-primary-menu').length > 0 ) {
$('#primary-menu > ul.mobile-primary-menu, #primary-menu > div > ul.mobile-primary-menu').toggleclass('d-block', false);
} else {
$('#primary-menu > ul, #primary-menu > div > ul').toggleclass('d-block', false);
}
$pagemenu.toggleclass('pagemenu-active', false);
$body.toggleclass('primary-menu-open', false);
}
$('html,body').stop(true).animate({
'scrolltop': $( divscrolltoanchor ).offset().top - number(divscrolloffset)
}, number(divscrollspeed), divscrolleasing);
onepageglobaloffset = number(divscrolloffset);
}
return false;
});
}
},
onepagescroller: function(){
$onepagemenuel.find('li').removeclass('current');
$onepagemenuel.find('a[data-href="#' + semicolon.header.onepagecurrentsection() + '"]').parent('li').addclass('current');
},
onepagecurrentsection: function(){
var currentonepagesection = 'home',
headerheight = $headerwrap.outerheight();
if( $body.hasclass('side-header') ) { headerheight = 0; }
$pagesectionel.each(function(index) {
var h = $(this).offset().top;
var y = $window.scrolltop();
var offsetscroll = headerheight + onepageglobaloffset;
if( y + offsetscroll >= h && y < h + $(this).height() && $(this).attr('id') != currentonepagesection ) {
currentonepagesection = $(this).attr('id');
}
});
return currentonepagesection;
},
logo: function(){
if( ( $header.hasclass('dark') || $body.hasclass('dark') ) && !$headerwrap.hasclass('not-dark') ) {
if( defaultdarklogo ){ defaultlogo.find('img').attr('src', defaultdarklogo); }
if( retinadarklogo ){ retinalogo.find('img').attr('src', retinadarklogo); }
} else {
if( defaultlogoimg ){ defaultlogo.find('img').attr('src', defaultlogoimg); }
if( retinalogoimg ){ retinalogo.find('img').attr('src', retinalogoimg); }
}
if( $header.hasclass('sticky-header') ) {
if( defaultstickylogo ){ defaultlogo.find('img').attr('src', defaultstickylogo); }
if( retinastickylogo ){ retinalogo.find('img').attr('src', retinastickylogo); }
}
if( $body.hasclass('device-sm') || $body.hasclass('device-xs') ) {
if( defaultmobilelogo ){ defaultlogo.find('img').attr('src', defaultmobilelogo); }
if( retinamobilelogo ){ retinalogo.find('img').attr('src', retinamobilelogo); }
}
},
stickymenuclass: function(){
if( stickymenuclasses ) { var newclassesarray = stickymenuclasses.split(/ +/); } else { var newclassesarray = ''; }
var noofnewclasses = newclassesarray.length;
if( noofnewclasses > 0 ) {
var i = 0;
for( i=0; i 0 ) {
var i = 0;
for( i=0; i 0 ){
if( $body.hasclass('device-lg') || $body.hasclass('device-xl') ) {
$topsocialel.show();
$topsocialel.find('a').css({width: 40});
$topsocialel.find('.ts-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('.ts-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('.ts-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();
}
}
}
},
topsearch: function(){
$(document).on('click', function(event) {
if (!$(event.target).closest('#top-search').length) { $body.toggleclass('top-search-open', false); }
if (!$(event.target).closest('#top-cart').length) { $topcart.toggleclass('top-cart-open', false); }
if (!$(event.target).closest('#page-menu').length) { $pagemenu.toggleclass('pagemenu-active', false); }
if (!$(event.target).closest('#side-panel').length) { $body.toggleclass('side-panel-open', false); }
if (!$(event.target).closest('#primary-menu').length) { $('#primary-menu.on-click > ul').find('.d-block').removeclass('d-block'); }
if (!$(event.target).closest('#primary-menu.mobile-menu-off-canvas > ul').length) { $('#primary-menu.mobile-menu-off-canvas > ul').toggleclass('show', false); }
if (!$(event.target).closest('#primary-menu.mobile-menu-off-canvas > div > ul').length) { $('#primary-menu.mobile-menu-off-canvas > div > ul').toggleclass('show', false); }
});
$("#top-search-trigger").click(function(e){
$body.toggleclass('top-search-open');
$topcart.toggleclass('top-cart-open', false);
$( '#primary-menu > ul, #primary-menu > div > ul' ).toggleclass('d-block', false);
$pagemenu.toggleclass('pagemenu-active', false);
if ($body.hasclass('top-search-open')){
$topsearch.find('input').focus();
}
e.stoppropagation();
e.preventdefault();
});
},
topcart: function(){
$("#top-cart-trigger").click(function(e){
$pagemenu.toggleclass('pagemenu-active', false);
$topcart.toggleclass('top-cart-open');
e.stoppropagation();
e.preventdefault();
});
}
};
semicolon.slider = {
init: function() {
semicolon.slider.sliderparallaxdimensions();
semicolon.slider.sliderrun();
semicolon.slider.sliderparallax();
semicolon.slider.sliderelementsfade();
semicolon.slider.captionposition();
},
sliderparallaxdimensions: function(){
if( $sliderparallaxel.find('.slider-parallax-inner').length < 1 ) { return true; }
if( $body.hasclass('device-xl') || $body.hasclass('device-lg') || $body.hasclass('device-md') ) {
var parallaxelheight = $sliderparallaxel.outerheight(),
parallaxelwidth = $sliderparallaxel.outerwidth();
if( $sliderparallaxel.hasclass('revslider-wrap') || $sliderparallaxel.find('.carousel-widget').length > 0 ) {
parallaxelheight = $sliderparallaxel.find('.slider-parallax-inner').children().first().outerheight();
$sliderparallaxel.height( parallaxelheight );
}
$sliderparallaxel.find('.slider-parallax-inner').height( parallaxelheight );
if( $body.hasclass('side-header') ) {
$sliderparallaxel.find('.slider-parallax-inner').width( parallaxelwidth );
}
if( !$body.hasclass('stretched') ) {
parallaxelwidth = $wrapper.outerwidth();
$sliderparallaxel.find('.slider-parallax-inner').width( parallaxelwidth );
}
} else {
$sliderparallaxel.find('.slider-parallax-inner').css({ 'width': '', height: '' });
}
if( swiperslider ) { swiperslider.update(); }
},
sliderrun: function(){
if( typeof swiper === 'undefined' ) {
console.log('sliderrun: swiper not defined.');
return true;
}
var $sliderel = $sliderelement.filter(':not(.customjs)');
$sliderel.each( function(){
if( $(this).hasclass('swiper_wrapper') ) {
var element = $(this).filter('.swiper_wrapper'),
elementdirection = element.attr('data-direction'),
elementspeed = element.attr('data-speed'),
elementautoplay = element.attr('data-autoplay'),
elementloop = element.attr('data-loop'),
elementeffect = element.attr('data-effect'),
elementgrabcursor = element.attr('data-grab'),
slidenumbertotal = element.find('.slide-number-total'),
slidenumbercurrent = element.find('.slide-number-current'),
slidervideoautoplay = element.attr('data-video-autoplay');
if( !elementspeed ) { elementspeed = 300; }
if( !elementdirection ) { elementdirection = 'horizontal'; }
if( elementautoplay ) { elementautoplay = number( elementautoplay ); } else { elementautoplay = 999999999; }
if( elementloop == 'true' ) { elementloop = true; } else { elementloop = false; }
if( !elementeffect ) { elementeffect = 'slide'; }
if( elementgrabcursor == 'false' ) { elementgrabcursor = false; } else { elementgrabcursor = true; }
if( slidervideoautoplay == 'false' ) { slidervideoautoplay = false; } else { slidervideoautoplay = true; }
if( element.find('.swiper-pagination').length > 0 ) {
var elementpagination = element.find('.swiper-pagination'),
elementpaginationclickable = true;
} else {
var elementpagination = '',
elementpaginationclickable = false;
}
var elementnavnext = element.find('.slider-arrow-right'),
elementnavprev = element.find('.slider-arrow-left');
swiperslider = new swiper( element.find('.swiper-parent') ,{
direction: elementdirection,
speed: number( elementspeed ),
autoplay: {
delay: elementautoplay
},
loop: elementloop,
effect: elementeffect,
slidesperview: 1,
grabcursor: elementgrabcursor,
pagination: {
el: elementpagination,
paginationclickable: elementpaginationclickable
},
navigation: {
prevel: elementnavprev,
nextel: elementnavnext
},
on: {
init: function(swiper){
semicolon.slider.sliderparallaxdimensions();
element.find('.yt-bg-player').removeclass('customjs');
semicolon.widget.youtubebgvideo();
$('.swiper-slide-active [data-caption-animate]').each(function(){
var $toanimateelement = $(this),
toanimatedelay = $toanimateelement.attr('data-caption-delay'),
toanimatedelaytime = 0;
if( toanimatedelay ) { toanimatedelaytime = number( toanimatedelay ) + 750; } else { toanimatedelaytime = 750; }
if( !$toanimateelement.hasclass('animated') ) {
$toanimateelement.addclass('not-animated');
var elementanimation = $toanimateelement.attr('data-caption-animate');
settimeout(function() {
$toanimateelement.removeclass('not-animated').addclass( elementanimation + ' animated');
}, toanimatedelaytime);
}
});
element.find('[data-caption-animate]').each(function(){
var $toanimateelement = $(this),
elementanimation = $toanimateelement.attr('data-caption-animate');
if( $toanimateelement.parents('.swiper-slide').hasclass('swiper-slide-active') ) { return true; }
$toanimateelement.removeclass('animated').removeclass(elementanimation).addclass('not-animated');
});
semicolon.slider.swiperslidermenu();
},
slidechangetransitionstart: function(swiper){
if( slidenumbercurrent.length > 0 ){
if( elementloop == true ) {
slidenumbercurrent.html( number( element.find('.swiper-slide.swiper-slide-active').attr('data-swiper-slide-index') ) + 1 );
} else {
slidenumbercurrent.html( swiperslider.activeindex + 1 );
}
}
element.find('[data-caption-animate]').each(function(){
var $toanimateelement = $(this),
elementanimation = $toanimateelement.attr('data-caption-animate');
if( $toanimateelement.parents('.swiper-slide').hasclass('swiper-slide-active') ) { return true; }
$toanimateelement.removeclass('animated').removeclass(elementanimation).addclass('not-animated');
});
semicolon.slider.swiperslidermenu();
},
slidechangetransitionend: function(swiper){
element.find('.swiper-slide').each(function(){
var slideel = $(this);
if( slideel.find('video').length > 0 && slidervideoautoplay == true ) { slideel.find('video').get(0).pause(); }
if( slideel.find('.yt-bg-player.mb_ytplayer:not(.customjs)').length > 0 ) { slideel.find('.yt-bg-player.mb_ytplayer:not(.customjs)').ytppause(); }
});
element.find('.swiper-slide:not(".swiper-slide-active")').each(function(){
var slideel = $(this);
if( slideel.find('video').length > 0 ) {
if( slideel.find('video').get(0).currenttime != 0 ) { slideel.find('video').get(0).currenttime = 0; }
}
if( slideel.find('.yt-bg-player.mb_ytplayer:not(.customjs)').length > 0 ) {
slideel.find('.yt-bg-player.mb_ytplayer:not(.customjs)').ytpgetplayer().seekto( slideel.find('.yt-bg-player.mb_ytplayer:not(.customjs)').attr('data-start') );
}
});
if( element.find('.swiper-slide.swiper-slide-active').find('video').length > 0 && slidervideoautoplay == true ) { element.find('.swiper-slide.swiper-slide-active').find('video').get(0).play(); }
if( element.find('.swiper-slide.swiper-slide-active').find('.yt-bg-player.mb_ytplayer:not(.customjs)').length > 0 && slidervideoautoplay == true ) { element.find('.swiper-slide.swiper-slide-active').find('.yt-bg-player.mb_ytplayer:not(.customjs)').ytpplay(); }
element.find('.swiper-slide.swiper-slide-active [data-caption-animate]').each(function(){
var $toanimateelement = $(this),
toanimatedelay = $toanimateelement.attr('data-caption-delay'),
toanimatedelaytime = 0;
if( toanimatedelay ) { toanimatedelaytime = number( toanimatedelay ) + 300; } else { toanimatedelaytime = 300; }
if( !$toanimateelement.hasclass('animated') ) {
$toanimateelement.addclass('not-animated');
var elementanimation = $toanimateelement.attr('data-caption-animate');
settimeout(function() {
$toanimateelement.removeclass('not-animated').addclass( elementanimation + ' animated');
}, toanimatedelaytime);
}
});
}
}
});
if( slidenumbercurrent.length > 0 ) {
if( elementloop == true ) {
slidenumbercurrent.html( swiperslider.realindex + 1 );
} else {
slidenumbercurrent.html( swiperslider.activeindex + 1 );
}
}
if( slidenumbertotal.length > 0 ) {
slidenumbertotal.html( element.find('.swiper-slide:not(.swiper-slide-duplicate)').length );
}
}
});
},
sliderparallaxoffset: function(){
var sliderparallaxoffsettop = 0;
var headerheight = $header.outerheight();
if( $body.hasclass('side-header') || $header.hasclass('transparent-header') ) { headerheight = 0; }
if( $pagetitle.length > 0 ) {
var pagetitleheight = $pagetitle.outerheight();
sliderparallaxoffsettop = pagetitleheight + headerheight;
} else {
sliderparallaxoffsettop = headerheight;
}
if( $slider.next('#header').length > 0 ) { sliderparallaxoffsettop = 0; }
return sliderparallaxoffsettop;
},
sliderparallax: function(){
if( $sliderparallaxel.length < 1 ) { return true; }
var parallaxoffsettop = semicolon.slider.sliderparallaxoffset(),
parallaxelheight = $sliderparallaxel.outerheight();
if( ( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) && !semicolon.ismobile.any() ) {
if( ( parallaxelheight + parallaxoffsettop + 50 ) > $window.scrolltop() ){
$sliderparallaxel.addclass('slider-parallax-visible').removeclass('slider-parallax-invisible');
if ($window.scrolltop() > parallaxoffsettop) {
if( $sliderparallaxel.find('.slider-parallax-inner').length > 0 ) {
var tranformamount = (($window.scrolltop()-parallaxoffsettop) *-.4 ).tofixed(0),
tranformamount2 = (($window.scrolltop()-parallaxoffsettop) *-.15 ).tofixed(0);
$sliderparallaxel.find('.slider-parallax-inner').css({'transform':'translatey('+ tranformamount +'px)'});
$('.slider-parallax .slider-caption,.ei-title').css({'transform':'translatey('+ tranformamount2 +'px)'});
} else {
var tranformamount = (($window.scrolltop()-parallaxoffsettop) / 1.5 ).tofixed(0),
tranformamount2 = (($window.scrolltop()-parallaxoffsettop) / 7 ).tofixed(0);
$sliderparallaxel.css({'transform':'translatey('+ tranformamount +'px)'});
$('.slider-parallax .slider-caption,.ei-title').css({'transform':'translatey('+ -tranformamount2 +'px)'});
}
} else {
if( $sliderparallaxel.find('.slider-parallax-inner').length > 0 ) {
$('.slider-parallax-inner,.slider-parallax .slider-caption,.ei-title').css({'transform':'translatey(0px)'});
} else {
$('.slider-parallax,.slider-parallax .slider-caption,.ei-title').css({'transform':'translatey(0px)'});
}
}
} else {
$sliderparallaxel.addclass('slider-parallax-invisible').removeclass('slider-parallax-visible');
}
if(requesting) {
requestanimationframe(function(){
semicolon.slider.sliderparallax();
semicolon.slider.sliderelementsfade();
});
}
} else {
if( $sliderparallaxel.find('.slider-parallax-inner').length > 0 ) {
$('.slider-parallax-inner,.slider-parallax .slider-caption,.ei-title').css({'transform':'translatey(0px)'});
} else {
$('.slider-parallax,.slider-parallax .slider-caption,.ei-title').css({'transform':'translatey(0px)'});
}
}
},
sliderelementsfade: function(){
if( $sliderparallaxel.length > 0 ) {
if( ( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) && !semicolon.ismobile.any() ) {
var parallaxoffsettop = semicolon.slider.sliderparallaxoffset(),
parallaxelheight = $sliderparallaxel.outerheight();
if( $slider.length > 0 ) {
if( $header.hasclass('transparent-header') || $('body').hasclass('side-header') ) { var theaderoffset = 100; } else { var theaderoffset = 0; }
$sliderparallaxel.find('.slider-arrow-left,.slider-arrow-right,.vertical-middle:not(.no-fade),.slider-caption,.ei-title,.camera_prev,.camera_next').css({'opacity': 1 - ( ( ( $window.scrolltop() - theaderoffset ) *1.85 ) / parallaxelheight ) });
}
} else {
$sliderparallaxel.find('.slider-arrow-left,.slider-arrow-right,.vertical-middle:not(.no-fade),.slider-caption,.ei-title,.camera_prev,.camera_next').css({'opacity': 1});
}
}
},
captionposition: function(){
$sliderelement.find('.slider-caption:not(.custom-caption-pos)').each(function(){
var scapheight = $(this).outerheight();
var scapsliderheight = $sliderelement.outerheight();
if( $(this).parents('#slider').prev('#header').hasclass('transparent-header') && ( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) ) {
if( $(this).parents('#slider').prev('#header').hasclass('floating-header') ) {
$(this).css({ top: ( scapsliderheight + 160 - scapheight ) / 2 + 'px' });
} else {
$(this).css({ top: ( scapsliderheight + 100 - scapheight ) / 2 + 'px' });
}
} else {
$(this).css({ top: ( scapsliderheight - scapheight ) / 2 + 'px' });
}
});
},
swiperslidermenu: function( onwinload ){
onwinload = typeof onwinload !== 'undefined' ? onwinload : false;
if( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) {
var activeslide = $slider.find('.swiper-slide.swiper-slide-active');
semicolon.slider.headerschemechanger(activeslide, onwinload);
}
},
revolutionslidermenu: function( onwinload ){
onwinload = typeof onwinload !== 'undefined' ? onwinload : false;
if( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) {
var activeslide = $slider.find('.active-revslide');
semicolon.slider.headerschemechanger(activeslide, onwinload);
}
},
headerschemechanger: function( activeslide, onwinload ){
if( activeslide.length > 0 ) {
var darkexists = false;
if( activeslide.hasclass('dark') ){
if( oldheaderclasses ) { var oldclassesarray = oldheaderclasses.split(/ +/); } else { var oldclassesarray = ''; }
var noofoldclasses = oldclassesarray.length;
if( noofoldclasses > 0 ) {
var i = 0;
for( i=0; i 0 ){
$owlcarouselel.each( function(){
var element = $(this);
if( element.find('.owl-dot').length > 0 ) {
element.addclass('with-carousel-dots');
}
});
}
}
};
semicolon.portfolio = {
init: function(){
semicolon.portfolio.ajaxload();
},
gridinit: function( $container ){
if( !$().isotope ) {
console.log('gridinit: isotope not defined.');
return true;
}
if( $container.length < 1 ) { return true; }
if( $container.hasclass('customjs') ) { return true; }
$container.each( function(){
var element = $(this),
elementtransition = element.attr('data-transition'),
elementlayoutmode = element.attr('data-layout'),
elementstagger = element.attr('data-stagger'),
elementoriginleft = true;
if( !elementtransition ) { elementtransition = '0.65s'; }
if( !elementlayoutmode ) { elementlayoutmode = 'masonry'; }
if( !elementstagger ) { elementstagger = 0; }
if( $body.hasclass('rtl') ) { elementoriginleft = false; }
settimeout( function(){
if( element.hasclass('portfolio') ){
element.isotope({
layoutmode: elementlayoutmode,
isoriginleft: elementoriginleft,
transitionduration: elementtransition,
stagger: number( elementstagger ),
masonry: {
columnwidth: element.find('.portfolio-item:not(.wide)')[0]
}
});
} else {
element.isotope({
layoutmode: elementlayoutmode,
isoriginleft: elementoriginleft,
transitionduration: elementtransition
});
}
}, 300);
});
},
filterinit: function(){
if( !$().isotope ) {
console.log('filterinit: isotope not defined.');
return true;
}
if( $portfoliofilter.length < 1 ) { return true; }
if( $portfoliofilter.hasclass('customjs') ) { return true; }
$portfoliofilter.each( function(){
var element = $(this),
elementcontainer = element.attr('data-container'),
elementactiveclass = element.attr('data-active-class'),
elementdefaultfilter = element.attr('data-default');
if( !elementactiveclass ) { elementactiveclass = 'activefilter'; }
element.find('a').click(function(){
element.find('li').removeclass( elementactiveclass );
$(this).parent('li').addclass( elementactiveclass );
var selector = $(this).attr('data-filter');
$(elementcontainer).isotope({ filter: selector });
return false;
});
if( elementdefaultfilter ) {
element.find('li').removeclass( elementactiveclass );
element.find('[data-filter="'+ elementdefaultfilter +'"]').parent('li').addclass( elementactiveclass );
$(elementcontainer).isotope({ filter: elementdefaultfilter });
}
});
},
shuffleinit: function(){
if( !$().isotope ) {
console.log('shuffleinit: isotope not defined.');
return true;
}
if( $('.portfolio-shuffle').length < 1 ) { return true; }
$('.portfolio-shuffle').click(function(){
var element = $(this),
elementcontainer = element.attr('data-container');
$(elementcontainer).isotope('shuffle');
});
},
portfoliodescmargin: function(){
var $portfoliooverlayel = $('.portfolio-overlay');
if( $portfoliooverlayel.length > 0 ){
$portfoliooverlayel.each(function() {
var element = $(this);
if( element.find('.portfolio-desc').length > 0 ) {
var portfoliooverlayheight = element.outerheight();
var portfoliooverlaydescheight = element.find('.portfolio-desc').outerheight();
if( element.find('a.left-icon').length > 0 || element.find('a.right-icon').length > 0 || element.find('a.center-icon').length > 0 ) {
var portfoliooverlayiconheight = 40 + 20;
} else {
var portfoliooverlayiconheight = 0;
}
var portfoliooverlaymiddlealign = ( portfoliooverlayheight - portfoliooverlaydescheight - portfoliooverlayiconheight ) / 2
element.find('.portfolio-desc').css({ 'margin-top': portfoliooverlaymiddlealign });
}
});
}
},
arrange: function(){
if( $portfolio.length > 0 ) {
$portfolio.each( function(){
var element = $(this);
semicolon.initialize.setfullcolumnwidth( element );
});
}
},
ajaxload: function(){
$('.portfolio-ajax .portfolio-item a.center-icon').click( function(e) {
var portpostid = $(this).parents('.portfolio-item').attr('id');
if( !$(this).parents('.portfolio-item').hasclass('portfolio-active') ) {
semicolon.portfolio.loaditem(portpostid, prevpostportid);
}
e.preventdefault();
});
},
newnextprev: function( portpostid ){
var portnext = semicolon.portfolio.getnextitem(portpostid);
var portprev = semicolon.portfolio.getprevitem(portpostid);
$('#next-portfolio').attr('data-id', portnext);
$('#prev-portfolio').attr('data-id', portprev);
},
loaditem: function( portpostid, prevpostportid, getit ){
if(!getit) { getit = false; }
var portnext = semicolon.portfolio.getnextitem(portpostid);
var portprev = semicolon.portfolio.getprevitem(portpostid);
if(getit == false) {
semicolon.portfolio.closeitem();
$portfolioajaxloader.fadein();
var portfoliodataloader = $('#' + portpostid).attr('data-loader');
$portfoliodetailscontainer.load(portfoliodataloader, { portid: portpostid, portnext: portnext, portprev: portprev },
function(){
semicolon.portfolio.initializeajax(portpostid);
semicolon.portfolio.openitem();
$portfolioitems.removeclass('portfolio-active');
$('#' + portpostid).addclass('portfolio-active');
});
}
},
closeitem: function(){
if( $portfoliodetails && $portfoliodetails.height() > 32 ) {
$portfolioajaxloader.fadein();
$portfoliodetails.find('#portfolio-ajax-single').fadeout('600', function(){
$(this).remove();
});
$portfoliodetails.removeclass('portfolio-ajax-opened');
}
},
openitem: function(){
var noofimages = $portfoliodetails.find('img').length;
var noloaded = 0;
if( noofimages > 0 ) {
$portfoliodetails.find('img').on('load', function(){
noloaded++;
var topoffsetscroll = semicolon.initialize.topscrolloffset();
if(noofimages === noloaded) {
$portfoliodetailscontainer.css({ 'display': 'block' });
$portfoliodetails.addclass('portfolio-ajax-opened');
$portfolioajaxloader.fadeout();
var t=settimeout(function(){
semicolon.widget.loadflexslider();
semicolon.initialize.lightbox();
semicolon.initialize.resizevideos();
semicolon.widget.masonrythumbs();
$('html,body').stop(true).animate({
'scrolltop': $portfoliodetails.offset().top - topoffsetscroll
}, 900, 'easeoutquad');
},500);
}
});
} else {
var topoffsetscroll = semicolon.initialize.topscrolloffset();
$portfoliodetailscontainer.css({ 'display': 'block' });
$portfoliodetails.addclass('portfolio-ajax-opened');
$portfolioajaxloader.fadeout();
var t=settimeout(function(){
semicolon.widget.loadflexslider();
semicolon.initialize.lightbox();
semicolon.initialize.resizevideos();
semicolon.widget.masonrythumbs();
$('html,body').stop(true).animate({
'scrolltop': $portfoliodetails.offset().top - topoffsetscroll
}, 900, 'easeoutquad');
},500);
}
},
getnextitem: function( portpostid ){
var portnext = '';
var hasnext = $('#' + portpostid).next();
if(hasnext.length != 0) {
portnext = hasnext.attr('id');
}
return portnext;
},
getprevitem: function( portpostid ){
var portprev = '';
var hasprev = $('#' + portpostid).prev();
if(hasprev.length != 0) {
portprev = hasprev.attr('id');
}
return portprev;
},
initializeajax: function( portpostid ){
prevpostportid = $('#' + portpostid);
$('#next-portfolio, #prev-portfolio').click( function() {
var portpostid = $(this).attr('data-id');
$portfolioitems.removeclass('portfolio-active');
$('#' + portpostid).addclass('portfolio-active');
semicolon.portfolio.loaditem(portpostid,prevpostportid);
return false;
});
$('#close-portfolio').click( function() {
$portfoliodetailscontainer.fadeout('600', function(){
$portfoliodetails.find('#portfolio-ajax-single').remove();
});
$portfoliodetails.removeclass('portfolio-ajax-opened');
$portfolioitems.removeclass('portfolio-active');
return false;
});
}
};
semicolon.widget = {
init: function(){
semicolon.widget.animations();
semicolon.widget.youtubebgvideo();
semicolon.widget.tabs();
semicolon.widget.tabsjustify();
semicolon.widget.tabsresponsive();
semicolon.widget.tabsresponsiveresize();
semicolon.widget.toggles();
semicolon.widget.accordions();
semicolon.widget.counter();
semicolon.widget.roundedskill();
semicolon.widget.progress();
semicolon.widget.twitterfeed();
semicolon.widget.flickrfeed();
semicolon.widget.instagramphotos( '20524966.1677ed0.bf5dbdbfdd884927a421ffe2b639b1da', '5125dda742b5492488c790c2a440ace3' );
semicolon.widget.dribbbleshots( '012d3d72d12f93e1d41a19195d7da2fc87e6b5afa48a184256e398eb793cfe56' );
semicolon.widget.navtree();
semicolon.widget.textrotater();
semicolon.widget.carousel();
semicolon.widget.linkscroll();
semicolon.widget.contactform();
semicolon.widget.subscription();
semicolon.widget.quickcontact();
semicolon.widget.stickysidebar();
semicolon.widget.cookienotify();
semicolon.widget.extras();
},
parallax: function(){
if( typeof skrollr !== 'undefined' && $.isfunction(skrollr) ) {
console.log('parallax: skrollr not defined.');
return true;
}
if( $parallaxel.length > 0 || $parallaxpagetitleel.length > 0 || $parallaxportfolioel.length > 0 ) {
if( !semicolon.ismobile.any() ){
skrollr.init({forceheight: false});
} else {
$parallaxel.addclass('mobile-parallax');
$parallaxpagetitleel.addclass('mobile-parallax');
$parallaxportfolioel.addclass('mobile-parallax');
}
}
},
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),
animationout = element.attr('data-animate-out'),
animationdelay = element.attr('data-delay'),
animationdelayout = element.attr('data-delay-out'),
animationdelaytime = 0,
animationdelayouttime = 3000;
if( element.parents('.fslider.no-thumbs-animate').length > 0 ) { return true; }
if( animationdelay ) { animationdelaytime = number( animationdelay ) + 500; } else { animationdelaytime = 500; }
if( animationout && animationdelayout ) { animationdelayouttime = number( animationdelayout ) + animationdelaytime; }
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);
if( animationout ) {
settimeout( function() {
element.removeclass( elementanimation ).addclass( animationout );
}, animationdelayouttime );
}
},{accx: 0, accy: -120},'easeincubic');
}
});
}
}
},
loadflexslider: function(){
if( !$().flexslider ) {
console.log('loadflexslider: flexslider not defined.');
return true;
}
var $flexsliderel = $('.fslider:not(.customjs)').find('.flexslider');
if( $flexsliderel.length > 0 ){
$flexsliderel.each(function() {
var $flexsslider = $(this),
flexsanimation = $flexsslider.parent('.fslider').attr('data-animation'),
flexseasing = $flexsslider.parent('.fslider').attr('data-easing'),
flexsdirection = $flexsslider.parent('.fslider').attr('data-direction'),
flexsreverse = $flexsslider.parent('.fslider').attr('data-reverse'),
flexsslideshow = $flexsslider.parent('.fslider').attr('data-slideshow'),
flexspause = $flexsslider.parent('.fslider').attr('data-pause'),
flexsspeed = $flexsslider.parent('.fslider').attr('data-speed'),
flexsvideo = $flexsslider.parent('.fslider').attr('data-video'),
flexspagi = $flexsslider.parent('.fslider').attr('data-pagi'),
flexsarrows = $flexsslider.parent('.fslider').attr('data-arrows'),
flexsthumbs = $flexsslider.parent('.fslider').attr('data-thumbs'),
flexshover = $flexsslider.parent('.fslider').attr('data-hover'),
flexssheight = $flexsslider.parent('.fslider').attr('data-smooth-height'),
flexstouch = $flexsslider.parent('.fslider').attr('data-touch'),
flexsusecss = false;
if( !flexsanimation ) { flexsanimation = 'slide'; }
if( !flexseasing || flexseasing == 'swing' ) {
flexseasing = 'swing';
flexsusecss = true;
}
if( !flexsdirection ) { flexsdirection = 'horizontal'; }
if( flexsreverse == 'true' ) { flexsreverse = true; } else { flexsreverse = false; }
if( !flexsslideshow ) { flexsslideshow = true; } else { flexsslideshow = false; }
if( !flexspause ) { flexspause = 5000; }
if( !flexsspeed ) { flexsspeed = 600; }
if( !flexsvideo ) { flexsvideo = false; }
if( flexssheight == 'false' ) { flexssheight = false; } else { flexssheight = true; }
if( flexsdirection == 'vertical' ) { flexssheight = false; }
if( flexspagi == 'false' ) { flexspagi = false; } else { flexspagi = true; }
if( flexsthumbs == 'true' ) { flexspagi = 'thumbnails'; } else { flexspagi = flexspagi; }
if( flexsarrows == 'false' ) { flexsarrows = false; } else { flexsarrows = true; }
if( flexshover == 'false' ) { flexshover = false; } else { flexshover = true; }
if( flexstouch == 'false' ) { flexstouch = false; } else { flexstouch = true; }
$flexsslider.flexslider({
selector: ".slider-wrap > .slide",
animation: flexsanimation,
easing: flexseasing,
direction: flexsdirection,
reverse: flexsreverse,
slideshow: flexsslideshow,
slideshowspeed: number(flexspause),
animationspeed: number(flexsspeed),
pauseonhover: flexshover,
video: flexsvideo,
controlnav: flexspagi,
directionnav: flexsarrows,
smoothheight: flexssheight,
usecss: flexsusecss,
touch: flexstouch,
start: function(slider){
semicolon.widget.animations();
semicolon.initialize.verticalmiddle();
slider.parent().removeclass('preloader2');
var t = settimeout( function(){ $('.grid-container').isotope('layout'); }, 1200 );
semicolon.initialize.lightbox();
$('.flex-prev').html('');
$('.flex-next').html('');
semicolon.portfolio.portfoliodescmargin();
var thumb=$flexsslider.find(".recommend-slider-warp .flex-active-slide").attr("data-thumb");
if(thumb){
$(".recommend-left-image").html('').fadein();
}
},
after: function(){
if( $('.grid-container').hasclass('portfolio-full') ) {
$('.grid-container.portfolio-full').isotope('layout');
semicolon.portfolio.portfoliodescmargin();
}
var thumb=$flexsslider.find(".recommend-slider-warp .flex-active-slide").attr("data-thumb");
if(thumb){
$(".recommend-image").attr("src",thumb).fadein();
}
}
});
});
}
},
html5video: function(){
var videoel = $('.video-wrap:has(video)');
if( videoel.length > 0 ) {
videoel.each(function(){
var element = $(this),
elementvideo = element.find('video'),
outercontainerwidth = element.outerwidth(),
outercontainerheight = element.outerheight(),
innervideowidth = elementvideo.outerwidth(),
innervideoheight = elementvideo.outerheight();
if( innervideoheight < outercontainerheight ) {
var videoaspectratio = innervideowidth/innervideoheight,
newvideowidth = outercontainerheight * videoaspectratio,
innervideoposition = (newvideowidth - outercontainerwidth) / 2;
elementvideo.css({ 'width': newvideowidth+'px', 'height': outercontainerheight+'px', 'left': -innervideoposition+'px' });
} else {
var innervideoposition = (innervideoheight - outercontainerheight) / 2;
elementvideo.css({ 'width': innervideowidth+'px', 'height': innervideoheight+'px', 'top': -innervideoposition+'px' });
}
if( semicolon.ismobile.any() && !element.hasclass('no-placeholder') ) {
var placeholderimg = elementvideo.attr('poster');
if( placeholderimg != '' ) {
element.append('')
}
elementvideo.hide();
}
});
}
},
youtubebgvideo: function(){
if( !$().mb_ytplayer ) {
console.log('youtubebgvideo: youtubebg plugin not defined.');
return true;
}
var $youtubebgplayerel = $('.yt-bg-player');
if( $youtubebgplayerel.hasclass('customjs') ) { return true; }
if( $youtubebgplayerel.length > 0 ){
$youtubebgplayerel.each( function(){
var element = $(this),
ytbgvideo = element.attr('data-video'),
ytbgmute = element.attr('data-mute'),
ytbgratio = element.attr('data-ratio'),
ytbgquality = element.attr('data-quality'),
ytbgopacity = element.attr('data-opacity'),
ytbgcontainer = element.attr('data-container'),
ytbgoptimize = element.attr('data-optimize'),
ytbgloop = element.attr('data-loop'),
ytbgvolume = element.attr('data-volume'),
ytbgstart = element.attr('data-start'),
ytbgstop = element.attr('data-stop'),
ytbgautoplay = element.attr('data-autoplay'),
ytbgfullscreen = element.attr('data-fullscreen');
if( ytbgmute == 'false' ) { ytbgmute = false; } else { ytbgmute = true; }
if( !ytbgratio ) { ytbgratio = '16/9'; }
if( !ytbgquality ) { ytbgquality = 'hd720'; }
if( !ytbgopacity ) { ytbgopacity = 1; }
if( !ytbgcontainer ) { ytbgcontainer = 'self'; }
if( ytbgoptimize == 'false' ) { ytbgoptimize = false; } else { ytbgoptimize = true; }
if( ytbgloop == 'false' ) { ytbgloop = false; } else { ytbgloop = true; }
if( !ytbgvolume ) { ytbgvolume = 1; }
if( !ytbgstart ) { ytbgstart = 0; }
if( !ytbgstop ) { ytbgstop = 0; }
if( ytbgautoplay == 'false' ) { ytbgautoplay = false; } else { ytbgautoplay = true; }
if( ytbgfullscreen == 'true' ) { ytbgfullscreen = true; } else { ytbgfullscreen = false; }
element.mb_ytplayer({
videourl: ytbgvideo,
showcontrols: true,
mute: ytbgmute,
ratio: ytbgratio,
quality: ytbgquality,
opacity: number(ytbgopacity),
containment: ytbgcontainer,
optimizedisplay: ytbgoptimize,
loop: ytbgloop,
vol: number(ytbgvolume),
startat: number(ytbgstart),
stopat: number(ytbgstop),
autoplay: ytbgautoplay,
realfullscreen: ytbgfullscreen,
showytlogo: false,
showcontrols: false
});
});
}
},
tabs: function(){
if( !$().tabs ) {
console.log('tabs: tabs not defined.');
return true;
}
var $tabs = $('.tabs:not(.customjs)');
if( $tabs.length > 0 ) {
$tabs.each( function(){
var element = $(this),
elementspeed = element.attr('data-speed'),
tabactive = element.attr('data-active');
if( !elementspeed ) { elementspeed = 400; }
if( !tabactive ) { tabactive = 0; } else { tabactive = tabactive - 1; }
element.tabs({
active: number(tabactive),
show: {
effect: "fade",
duration: number(elementspeed)
}
});
});
}
},
tabsjustify: function(){
if( !$('body').hasclass('device-xs') && !$('body').hasclass('device-sm') ){
var $tabsjustify = $('.tabs.tabs-justify:not(.customjs)');
if( $tabsjustify.length > 0 ) {
$tabsjustify.each( function(){
var element = $(this),
elementtabs = element.find('.tab-nav > li'),
elementtabsno = elementtabs.length,
elementcontainer = 0,
elementwidth = 0;
if( element.hasclass('tabs-bordered') || element.hasclass('tabs-bb') ) {
elementcontainer = element.find('.tab-nav').outerwidth();
} else {
if( element.find('tab-nav').hasclass('tab-nav2') ) {
elementcontainer = element.find('.tab-nav').outerwidth() - (elementtabsno * 10);
} else {
elementcontainer = element.find('.tab-nav').outerwidth() - 30;
}
}
elementwidth = math.floor(elementcontainer/elementtabsno);
elementtabs.css({ 'width': elementwidth + 'px' });
});
}
} else { $('.tabs.tabs-justify').find('.tab-nav > li').css({ 'width': '' }); }
},
tabsresponsive: function(){
if( !$().tabs ) {
console.log('tabs: tabs not defined.');
return true;
}
var $tabsresponsive = $('.tabs.tabs-responsive:not(.customjs)');
if( $tabsresponsive.length < 1 ) { return true; }
$tabsresponsive.each( function(){
var element = $(this),
elementnav = element.find('.tab-nav'),
elementcontent = element.find('.tab-container');
elementnav.children('li').each( function(){
var navel = $(this),
navelanchor = navel.children('a'),
naveltarget = navelanchor.attr('href'),
navelcontent = navelanchor.html();
elementcontent.find(naveltarget).before(''+navelcontent+'
');
});
});
},
tabsresponsiveresize: function(){
if( !$().tabs ) {
console.log('tabs: tabs not defined.');
return true;
}
var $tabsresponsive = $('.tabs.tabs-responsive:not(.customjs)');
if( $tabsresponsive.length < 1 ) { return true; }
$tabsresponsive.each( function(){
var element = $(this),
tabactive = element.attr('data-active'),
elementaccstyle = element.attr('data-accordion-style');
if( $('body').hasclass('device-sm') || $('body').hasclass('device-xs') ) {
element.find('.tab-nav').addclass('d-none');
element.find('.tab-container').addclass('accordion '+ elementaccstyle +' clearfix').attr('data-active', tabactive);
element.find('.tab-content').addclass('acc_content');
element.find('.acctitle').removeclass('d-none');
semicolon.widget.accordions();
} else if( $('body').hasclass('device-md') || $('body').hasclass('device-lg') || $('body').hasclass('device-xl') ) {
element.find('.tab-nav').removeclass('d-none');
element.find('.tab-container').removeclass('accordion '+ elementaccstyle +' clearfix').attr('data-active', '');
element.find('.tab-content').removeclass('acc_content');
element.find('.acctitle').addclass('d-none');
element.tabs('refresh');
}
});
},
toggles: function(){
var $toggle = $('.toggle');
if( $toggle.length > 0 ) {
$toggle.each( function(){
var element = $(this),
elementstate = element.attr('data-state');
if( elementstate != 'open' ){
element.children('.togglec').hide();
} else {
element.children('.togglet').addclass("toggleta");
}
element.children('.togglet').click(function(){
$(this).toggleclass('toggleta').next('.togglec').slidetoggle(300);
return true;
});
});
}
},
accordions: function(){
var $accordionel = $('.accordion');
if( $accordionel.length > 0 ){
$accordionel.each( function(){
var element = $(this),
elementstate = element.attr('data-state'),
accordionactive = element.attr('data-active');
if( !accordionactive ) { accordionactive = 0; } else { accordionactive = accordionactive - 1; }
element.find('.acc_content').hide();
if( elementstate != 'closed' ) {
element.find('.acctitle:eq('+ number(accordionactive) +')').addclass('acctitlec').next().show();
}
element.find('.acctitle').click(function(){
if( $(this).next().is(':hidden') ) {
element.find('.acctitle').removeclass('acctitlec').next().slideup("normal");
var clicktarget = $(this);
$(this).toggleclass('acctitlec').next().stop().slidedown("normal", function(){
if( ( $body.hasclass('device-sm') || $body.hasclass('device-xs') ) && element.hasclass('scroll-on-open') ) {
$('html,body').stop(true).animate({
'scrolltop': clicktarget.offset().top - ( semicolon.initialize.topscrolloffset() - 40 )
}, 800, 'easeoutquad' );
}
});
}
return false;
});
});
}
},
counter: function(){
if( !$().appear ) {
console.log('counter: appear not defined.');
return true;
}
if( !$().countto ) {
console.log('counter: countto not defined.');
return true;
}
var $counterel = $('.counter:not(.counter-instant)');
if( $counterel.length > 0 ){
$counterel.each(function(){
var element = $(this);
var counterelementcomma = $(this).find('span').attr('data-comma');
if( !counterelementcomma ) { counterelementcomma = false; } else { counterelementcomma = true; }
if( $body.hasclass('device-xl') || $body.hasclass('device-lg') ){
element.appear( function(){
semicolon.widget.runcounter( element, counterelementcomma );
if( element.parents('.common-height') ) {
semicolon.initialize.maxheight();
}
},{accx: 0, accy: -120},'easeincubic');
} else {
semicolon.widget.runcounter( element, counterelementcomma );
}
});
}
},
runcounter: function( counterelement,counterelementcomma ){
if( counterelementcomma == true ) {
counterelement.find('span').countto({
formatter: function (value, options) {
value = value.tofixed(options.decimals);
value = value.replace(/\b(?=(\d{3})+(?!\d))/g, ',');
return value;
}
});
} else {
counterelement.find('span').countto();
}
},
roundedskill: function(){
if( !$().appear ) {
console.log('roundedskill: appear not defined.');
return true;
}
if( !$().easypiechart ) {
console.log('roundedskill: easypiechart not defined.');
return true;
}
var $roundedskillel = $('.rounded-skill');
if( $roundedskillel.length > 0 ){
$roundedskillel.each(function(){
var element = $(this);
var roundskillsize = element.attr('data-size');
var roundskillspeed = element.attr('data-speed');
var roundskillwidth = element.attr('data-width');
var roundskillcolor = element.attr('data-color');
var roundskilltrackcolor = element.attr('data-trackcolor');
if( !roundskillsize ) { roundskillsize = 140; }
if( !roundskillspeed ) { roundskillspeed = 2000; }
if( !roundskillwidth ) { roundskillwidth = 8; }
if( !roundskillcolor ) { roundskillcolor = '#0093bf'; }
if( !roundskilltrackcolor ) { roundskilltrackcolor = 'rgba(0,0,0,0.04)'; }
var properties = {roundskillsize:roundskillsize, roundskillspeed:roundskillspeed, roundskillwidth:roundskillwidth, roundskillcolor:roundskillcolor, roundskilltrackcolor:roundskilltrackcolor};
if( $body.hasclass('device-xl') || $body.hasclass('device-lg') ){
element.css({'width':roundskillsize+'px','height':roundskillsize+'px','line-height':roundskillsize+'px'}).animate({opacity:0}, 10);
element.appear( function(){
if (!element.hasclass('skills-animated')) {
var t = settimeout( function(){ element.css({opacity: 1}); }, 100 );
semicolon.widget.runroundedskills( element, properties );
element.addclass('skills-animated');
}
},{accx: 0, accy: -120},'easeincubic');
} else {
semicolon.widget.runroundedskills( element, properties );
}
});
}
},
runroundedskills: function( element, properties ){
element.easypiechart({
size: number(properties.roundskillsize),
animate: number(properties.roundskillspeed),
scalecolor: false,
trackcolor: properties.roundskilltrackcolor,
linewidth: number(properties.roundskillwidth),
linecap: 'square',
barcolor: properties.roundskillcolor
});
},
progress: function(){
if( !$().appear ) {
console.log('progress: appear not defined.');
return true;
}
var $progressel = $('.progress');
if( $progressel.length > 0 ){
$progressel.each(function(){
var element = $(this),
skillsbar = element.parent('li'),
skillvalue = skillsbar.attr('data-percent');
if( $body.hasclass('device-xl') || $body.hasclass('device-lg') ){
element.appear( function(){
if (!skillsbar.hasclass('skills-animated')) {
element.find('.counter-instant span').countto();
skillsbar.find('.progress').css({width: skillvalue + "%"}).addclass('skills-animated');
}
},{accx: 0, accy: -120},'easeincubic');
} else {
element.find('.counter-instant span').countto();
skillsbar.find('.progress').css({width: skillvalue + "%"});
}
});
}
},
twitterfeed: function(){
if( typeof sm_format_twitter === 'undefined' ) {
console.log('twitterfeed: sm_format_twitter() not defined.');
return true;
}
if( typeof sm_format_twitter3 === 'undefined' ) {
console.log('twitterfeed: sm_format_twitter3() not defined.');
return true;
}
var $twitterfeedel = $('.twitter-feed');
if( $twitterfeedel.length > 0 ){
$twitterfeedel.each(function() {
var element = $(this),
twitterfeeduser = element.attr('data-username'),
twitterfeedcount = element.attr('data-count'),
twitterfeedloader = element.attr('data-loader');
if( !twitterfeeduser ) { twitterfeeduser = 'twitter' }
if( !twitterfeedcount ) { twitterfeedcount = 3 }
if( !twitterfeedloader ) { twitterfeedloader = 'include/twitter/tweets.php'; }
$.getjson( twitterfeedloader + '?username='+ twitterfeeduser +'&count='+ twitterfeedcount, function(tweets){
if( element.hasclass('fslider') ) {
element.find(".slider-wrap").html(sm_format_twitter3(tweets)).promise().done( function(){
var timer = setinterval(function(){
if( element.find('.slide').length > 1 ) {
element.removeclass('customjs');
var t = settimeout( function(){ semicolon.widget.loadflexslider(); }, 500);
clearinterval(timer);
}
},500);
});
} else {
element.html(sm_format_twitter(tweets));
}
});
});
}
},
flickrfeed: function(){
if( !$().jflickrfeed ) {
console.log('flickrfeed: jflickrfeed not defined.');
return true;
}
var $flickrfeedel = $('.flickr-feed');
if( $flickrfeedel.length > 0 ){
$flickrfeedel.each(function() {
var element = $(this),
flickrfeedid = element.attr('data-id'),
flickrfeedcount = element.attr('data-count'),
flickrfeedtype = element.attr('data-type'),
flickrfeedtypeget = 'photos_public.gne';
if( flickrfeedtype == 'group' ) { flickrfeedtypeget = 'groups_pool.gne'; }
if( !flickrfeedcount ) { flickrfeedcount = 9; }
element.jflickrfeed({
feedapi: flickrfeedtypeget,
limit: number(flickrfeedcount),
qstrings: {
id: flickrfeedid
},
itemtemplate: '' +
'' +
''
}, function(data) {
semicolon.initialize.lightbox();
});
});
}
},
instagramphotos: function( c_accesstoken, c_clientid ){
if( typeof instafeed === 'undefined' ) {
console.log('instafeed not defined.');
return true;
}
var $instagramphotosel = $('.instagram-photos');
if( $instagramphotosel.length > 0 ){
$instagramphotosel.each(function() {
var element = $(this),
instagramtarget = element.attr('id'),
instagramuserid = element.attr('data-user'),
instagramtag = element.attr('data-tag'),
instagramlocation = element.attr('data-location'),
instagramcount = element.attr('data-count'),
instagramtype = element.attr('data-type'),
instagramsortby = element.attr('data-sortby'),
instagramres = element.attr('data-resolution');
if( !instagramcount ) { instagramcount = 9; }
if( !instagramsortby ) { instagramsortby = 'none'; }
if( !instagramres ) { instagramres = 'thumbnail'; }
if( instagramtype == 'user' ) {
var feed = new instafeed({
target: instagramtarget,
get: instagramtype,
userid: number(instagramuserid),
limit: number(instagramcount),
sortby: instagramsortby,
resolution: instagramres,
accesstoken: c_accesstoken,
clientid: c_clientid
});
} else if( instagramtype == 'tagged' ) {
var feed = new instafeed({
target: instagramtarget,
get: instagramtype,
tagname: instagramtag,
limit: number(instagramcount),
sortby: instagramsortby,
resolution: instagramres,
clientid: c_clientid
});
} else if( instagramtype == 'location' ) {
var feed = new instafeed({
target: instagramtarget,
get: instagramtype,
locationid: number(instagramuserid),
limit: number(instagramcount),
sortby: instagramsortby,
resolution: instagramres,
clientid: c_clientid
});
} else {
var feed = new instafeed({
target: instagramtarget,
get: 'popular',
limit: number(instagramcount),
sortby: instagramsortby,
resolution: instagramres,
clientid: c_clientid
});
}
feed.run();
});
}
},
dribbbleshots: function( c_accesstoken ){
if( !$.jribbble ) {
console.log('dribbbleshots: jribbble not defined.');
return true;
}
if( !$().imagesloaded ) {
console.log('dribbbleshots: imagesloaded not defined.');
return true;
}
var $dribbbleshotsel = $('.dribbble-shots');
if( $dribbbleshotsel.length > 0 ){
$.jribbble.settoken( c_accesstoken );
$dribbbleshotsel.each(function() {
var element = $(this),
dribbbleusername = element.attr('data-user'),
dribbblecount = element.attr('data-count'),
dribbblelist = element.attr('data-list'),
dribbbletype = element.attr('data-type');
element.addclass('customjs');
if( !dribbblecount ) { dribbblecount = 9; }
if( dribbbletype == 'user' ) {
$.jribbble.users( dribbbleusername ).shots({
'sort': 'recent',
'page': 1,
'per_page': number(dribbblecount)
}).then( function(res) {
var html = [];
res.foreach( function(shot) {
html.push('');
html.push('');
});
element.html(html.join(''));
element.imagesloaded().done( function() {
element.removeclass('customjs');
semicolon.widget.masonrythumbs();
});
});
} else if( dribbbletype == 'list' ) {
$.jribbble.shots( dribbblelist, {
'sort': 'recent',
'page': 1,
'per_page': number(dribbblecount)
}).then( function(res) {
var html = [];
res.foreach( function(shot) {
html.push('');
html.push('');
});
element.html(html.join(''));
element.imagesloaded().done( function() {
element.removeclass('customjs');
semicolon.widget.masonrythumbs();
});
});
}
});
}
},
navtree: function(){
var $navtreeel = $('.nav-tree');
if( $navtreeel.length > 0 ){
$navtreeel.each( function(){
var element = $(this),
elementspeed = element.attr('data-speed'),
elementeasing = element.attr('data-easing');
if( !elementspeed ) { elementspeed = 250; }
if( !elementeasing ) { elementeasing = 'swing'; }
element.find( 'ul li:has(ul)' ).addclass('sub-menu');
element.find( 'ul li:has(ul) > a' ).append( ' ' );
if( element.hasclass('on-hover') ){
element.find( 'ul li:has(ul):not(.active)' ).hover( function(e){
$(this).children('ul').stop(true, true).slidedown( number(elementspeed), elementeasing);
}, function(){
$(this).children('ul').delay(250).slideup( number(elementspeed), elementeasing);
});
} else {
element.find( 'ul li:has(ul) > a' ).click( function(e){
var childelement = $(this);
element.find( 'ul li' ).not(childelement.parents()).removeclass('active');
childelement.parent().children('ul').slidetoggle( number(elementspeed), elementeasing, function(){
$(this).find('ul').hide();
$(this).find('li.active').removeclass('active');
});
element.find( 'ul li > ul' ).not(childelement.parent().children('ul')).not(childelement.parents('ul')).slideup( number(elementspeed), elementeasing );
childelement.parent('li:has(ul)').toggleclass('active');
e.preventdefault();
});
}
});
}
},
carousel: function(){
if( !$().owlcarousel ) {
console.log('carousel: owl carousel not defined.');
return true;
}
var $carousel = $('.carousel-widget:not(.customjs)');
if( $carousel.length < 1 ){ return true; }
$carousel.each( function(){
var element = $(this),
elementitems = element.attr('data-items'),
elementitemsxl = element.attr('data-items-xl'),
elementitemslg = element.attr('data-items-lg'),
elementitemsmd = element.attr('data-items-md'),
elementitemssm = element.attr('data-items-sm'),
elementitemsxs = element.attr('data-items-xs'),
elementloop = element.attr('data-loop'),
elementautoplay = element.attr('data-autoplay'),
elementspeed = element.attr('data-speed'),
elementanimatein = element.attr('data-animate-in'),
elementanimateout = element.attr('data-animate-out'),
elementnav = element.attr('data-nav'),
elementpagi = element.attr('data-pagi'),
elementmargin = element.attr('data-margin'),
elementstage = element.attr('data-stage-padding'),
elementmerge = element.attr('data-merge'),
elementstart = element.attr('data-start'),
elementrewind = element.attr('data-rewind'),
elementslideby = element.attr('data-slideby'),
elementcenter = element.attr('data-center'),
elementlazy = element.attr('data-lazyload'),
elementvideo = element.attr('data-video'),
elementrtl = element.attr('data-rtl');
if( !elementitems ) { elementitems = 4; }
if( !elementitemsxl ) { elementitemsxl = number(elementitems); }
if( !elementitemslg ) { elementitemslg = number(elementitemsxl); }
if( !elementitemsmd ) { elementitemsmd = number(elementitemslg); }
if( !elementitemssm ) { elementitemssm = number(elementitemsmd); }
if( !elementitemsxs ) { elementitemsxs = number(elementitemssm); }
if( !elementspeed ) { elementspeed = 250; }
if( !elementmargin ) { elementmargin = 20; }
if( !elementstage ) { elementstage = 0; }
if( !elementstart ) { elementstart = 0; }
if( !elementslideby ) { elementslideby = 1; }
if( elementslideby == 'page' ) {
elementslideby = 'page';
} else {
elementslideby = number(elementslideby);
}
if( elementloop == 'true' ){ elementloop = true; } else { elementloop = false; }
if( !elementautoplay ){
elementautoplay = false;
var elementautoplaytime = 0;
} else {
var elementautoplaytime = number(elementautoplay);
elementautoplay = true;
}
if( !elementanimatein ) { elementanimatein = false; }
if( !elementanimateout ) { elementanimateout = false; }
if( elementnav == 'false' ){ elementnav = false; } else { elementnav = true; }
if( elementpagi == 'false' ){ elementpagi = false; } else { elementpagi = true; }
if( elementrewind == 'true' ){ elementrewind = true; } else { elementrewind = false; }
if( elementmerge == 'true' ){ elementmerge = true; } else { elementmerge = false; }
if( elementcenter == 'true' ){ elementcenter = true; } else { elementcenter = false; }
if( elementlazy == 'true' ){ elementlazy = true; } else { elementlazy = false; }
if( elementvideo == 'true' ){ elementvideo = true; } else { elementvideo = false; }
if( elementrtl == 'true' || $body.hasclass('rtl') ){ elementrtl = true; } else { elementrtl = false; }
element.owlcarousel({
margin: number(elementmargin),
loop: elementloop,
stagepadding: number(elementstage),
merge: elementmerge,
startposition: number(elementstart),
rewind: elementrewind,
slideby: elementslideby,
center: elementcenter,
lazyload: elementlazy,
nav: elementnav,
navtext: ['',''],
autoplay: elementautoplay,
autoplaytimeout: elementautoplaytime,
autoplayhoverpause: true,
dots: elementpagi,
smartspeed: number(elementspeed),
fluidspeed: number(elementspeed),
video: elementvideo,
animatein: elementanimatein,
animateout: elementanimateout,
rtl: elementrtl,
responsive:{
0:{ items:number(elementitemsxs) },
480:{ items:number(elementitemssm) },
768:{ items:number(elementitemsmd) },
992:{ items:number(elementitemslg) },
1200:{ items:number(elementitemsxl) }
},
oninitialized: function(){
semicolon.slider.owlcaptioninit();
semicolon.slider.sliderparallaxdimensions();
semicolon.initialize.lightbox();
}
});
});
},
masonrythumbs: function(){
var $masonrythumbsel = $('.masonry-thumbs:not(.customjs)');
if( $masonrythumbsel.length > 0 ){
$masonrythumbsel.each( function(){
var masonryitemcontainer = $(this);
semicolon.widget.masonrythumbsarrange( masonryitemcontainer );
});
}
},
masonrythumbsarrange: function( element ){
if( !$().isotope ) {
console.log('masonrythumbsarrange: isotope not defined.');
return true;
}
semicolon.initialize.setfullcolumnwidth( element );
element.isotope('layout');
},
notifications: function( element ){
if( typeof toastr === 'undefined' ) {
console.log('notifications: toastr not defined.');
return true;
}
toastr.remove();
var notifyelement = $(element),
notifyposition = notifyelement.attr('data-notify-position'),
notifytype = notifyelement.attr('data-notify-type'),
notifymsg = notifyelement.attr('data-notify-msg'),
notifytimeout = notifyelement.attr('data-notify-timeout'),
notifyclosebutton = notifyelement.attr('data-notify-close');
if( !notifyposition ) { notifyposition = 'toast-top-right'; } else { notifyposition = 'toast-' + notifyelement.attr('data-notify-position'); }
if( !notifymsg ) { notifymsg = 'please set a message!'; }
if( !notifytimeout ) { notifytimeout = 5000; }
if( notifyclosebutton == 'true' ) { notifyclosebutton = true; } else { notifyclosebutton = false; }
toastr.options.positionclass = notifyposition;
toastr.options.timeout = number( notifytimeout );
toastr.options.closebutton = notifyclosebutton;
toastr.options.closehtml = '';
if( notifytype == 'warning' ) {
toastr.warning(notifymsg);
} else if( notifytype == 'error' ) {
toastr.error(notifymsg);
} else if( notifytype == 'success' ) {
toastr.success(notifymsg);
} else {
toastr.info(notifymsg);
}
return false;
},
textrotater: function(){
if( !$().morphext ) {
console.log('textrotater: morphext not defined.');
return true;
}
if( $textrotaterel.length > 0 ){
$textrotaterel.each(function(){
var element = $(this),
trrotate = $(this).attr('data-rotate'),
trspeed = $(this).attr('data-speed'),
trseparator = $(this).attr('data-separator');
if( !trrotate ) { trrotate = "fade"; }
if( !trspeed ) { trspeed = 1200; }
if( !trseparator ) { trseparator = ","; }
var trotater = $(this).find('.t-rotate');
trotater.morphext({
animation: trrotate,
separator: trseparator,
speed: number(trspeed)
});
});
}
},
linkscroll: function(){
$("a[data-scrollto]").click(function(){
var element = $(this),
divscrolltoanchor = element.attr('data-scrollto'),
divscrollspeed = element.attr('data-speed'),
divscrolloffset = element.attr('data-offset'),
divscrolleasing = element.attr('data-easing'),
divscrollhighlight = element.attr('data-highlight');
if( element.parents('#primary-menu').hasclass('on-click') ) { return true; }
if( !divscrollspeed ) { divscrollspeed = 750; }
if( !divscrolloffset ) { divscrolloffset = semicolon.initialize.topscrolloffset(); }
if( !divscrolleasing ) { divscrolleasing = 'easeoutquad'; }
$('html,body').stop(true).animate({
'scrolltop': $( divscrolltoanchor ).offset().top - number(divscrolloffset)
}, number(divscrollspeed), divscrolleasing, function(){
if( divscrollhighlight ) {
if( $(divscrolltoanchor).find('.highlight-me').length > 0 ) {
$(divscrolltoanchor).find('.highlight-me').animate({'backgroundcolor': divscrollhighlight}, 300);
var t = settimeout( function(){ $(divscrolltoanchor).find('.highlight-me').animate({'backgroundcolor': 'transparent'}, 300); }, 500 );
} else {
$(divscrolltoanchor).animate({'backgroundcolor': divscrollhighlight}, 300);
var t = settimeout( function(){ $(divscrolltoanchor).animate({'backgroundcolor': 'transparent'}, 300); }, 500 );
}
}
});
return false;
});
},
contactform: function(){
if( !$().validate ) {
console.log('contactform: form validate not defined.');
return true;
}
if( !$().ajaxsubmit ) {
console.log('contactform: jquery form not defined.');
return true;
}
var $contactform = $('.contact-widget:not(.customjs)');
if( $contactform.length < 1 ){ return true; }
$contactform.each( function(){
var element = $(this),
elementalert = element.attr('data-alert-type'),
elementloader = element.attr('data-loader'),
elementresult = element.find('.contact-form-result'),
elementredirect = element.attr('data-redirect');
element.find('form').validate({
submithandler: function(form) {
elementresult.hide();
if( elementloader == 'button' ) {
var defbutton = $(form).find('button'),
defbuttontext = defbutton.html();
defbutton.html('');
} else {
$(form).find('.form-process').fadein();
}
$(form).ajaxsubmit({
target: elementresult,
datatype: 'json',
success: function( data ) {
if(data.code){
data.alert='success';
}else{
data.alert='error';
}
if( elementloader == 'button' ) {
defbutton.html( defbuttontext );
} else {
$(form).find('.form-process').fadeout();
}
if( data.alert != 'error' && elementredirect ){
window.location.replace( elementredirect );
return true;
}
if( elementalert == 'inline' ) {
if( data.alert == 'error' ) {
var alerttype = 'alert-danger';
} else {
var alerttype = 'alert-success';
}
elementresult.removeclass( 'alert-danger alert-success' ).addclass( 'alert ' + alerttype ).html( data.msg ).slidedown( 400 );
} else {
elementresult.attr( 'data-notify-type', data.alert ).attr( 'data-notify-msg', data.msg ).html('');
semicolon.widget.notifications( elementresult );
}
// if( $(form).find('.g-recaptcha').children('div').length > 0 ) { grecaptcha.reset(); }
if( $(form).find('.captcha_src').length > 0 ) { $(form).find('.captcha_src').click(); }
if( data.alert != 'error' ) { $(form).clearform(); }
}
});
}
});
});
},
subscription: function(){
if( !$().validate ) {
console.log('subscription: form validate not defined.');
return true;
}
if( !$().ajaxsubmit ) {
console.log('subscription: jquery form not defined.');
return true;
}
var $subscribeform = $('.subscribe-widget:not(.customjs)');
if( $subscribeform.length < 1 ){ return true; }
$subscribeform.each( function(){
var element = $(this),
elementalert = element.attr('data-alert-type'),
elementloader = element.attr('data-loader'),
elementresult = element.find('.widget-subscribe-form-result'),
elementredirect = element.attr('data-redirect');
element.find('form').validate({
submithandler: function(form) {
elementresult.hide();
if( elementloader == 'button' ) {
var defbutton = $(form).find('button'),
defbuttontext = defbutton.html();
defbutton.html('');
} else {
$(form).find('.input-group-addon').find('.icon-email2').removeclass('icon-email2').addclass('icon-line-loader icon-spin');
}
$(form).ajaxsubmit({
target: elementresult,
datatype: 'json',
resetform: true,
success: function( data ) {
if(data.code){
data.alert='success';
}else{
data.alert='error';
}
if( elementloader == 'button' ) {
defbutton.html( defbuttontext );
} else {
$(form).find('.input-group-addon').find('.icon-line-loader').removeclass('icon-line-loader icon-spin').addclass('icon-email2');
}
if( data.alert != 'error' && elementredirect ){
window.location.replace( elementredirect );
return true;
}
if( elementalert == 'inline' ) {
if( data.alert == 'error' ) {
var alerttype = 'alert-danger';
} else {
var alerttype = 'alert-success';
}
elementresult.addclass( 'alert ' + alerttype ).html( data.msg ).slidedown( 400 );
} else {
elementresult.attr( 'data-notify-type', data.alert ).attr( 'data-notify-msg', data.msg ).html('');
semicolon.widget.notifications( elementresult );
}
}
});
}
});
});
},
quickcontact: function(){
if( !$().validate ) {
console.log('quickcontact: form validate not defined.');
return true;
}
if( !$().ajaxsubmit ) {
console.log('quickcontact: jquery form not defined.');
return true;
}
var $quickcontact = $('.quick-contact-widget:not(.customjs)');
if( $quickcontact.length < 1 ){ return true; }
$quickcontact.each( function(){
var element = $(this),
elementalert = element.attr('data-alert-type'),
elementloader = element.attr('data-loader'),
elementresult = element.find('.quick-contact-form-result'),
elementredirect = element.attr('data-redirect');
element.find('form').validate({
submithandler: function(form) {
elementresult.hide();
$(form).animate({ opacity: 0.4 });
if( elementloader == 'button' ) {
var defbutton = $(form).find('button'),
defbuttontext = defbutton.html();
defbutton.html('');
} else {
$(form).find('.form-process').fadein();
}
$(form).ajaxsubmit({
target: elementresult,
datatype: 'json',
resetform: true,
success: function( data ) {
if(data.code){
data.alert='success';
}else{
data.alert='error';
}
$(form).animate({ opacity: 1 });
if( elementloader == 'button' ) {
defbutton.html( defbuttontext );
} else {
$(form).find('.form-process').fadeout();
}
if( data.alert != 'error' && elementredirect ){
window.location.replace( elementredirect );
return true;
}
if( elementalert == 'inline' ) {
if( data.alert == 'error' ) {
var alerttype = 'alert-danger';
} else {
var alerttype = 'alert-success';
}
elementresult.addclass( 'alert ' + alerttype ).html( data.msg ).slidedown( 400 );
} else {
elementresult.attr( 'data-notify-type', data.alert ).attr( 'data-notify-msg', data.msg ).html('');
semicolon.widget.notifications( elementresult );
}
// if( $(form).find('.g-recaptcha').children('div').length > 0 ) { grecaptcha.reset(); }
if( $(form).find('.captcha_src').length > 0 ) { $(form).find('.captcha_src').click(); }
}
});
}
});
});
},
stickysidebar: function(){
if( !$().scwstickysidebar ) {
console.log('stickysidebar: sticky sidebar is not defined.');
return true;
}
var $stickysidebar = jquery('.sticky-sidebar-wrap');
if( $stickysidebar.length < 1 ){ return true; }
$stickysidebar.each( function(){
var element = $(this),
elementtop = element.attr('data-offset-top'),
elementbottom = element.attr('data-offset-bottom');
if( !elementtop ) { elementtop = 110; }
if( !elementbottom ) { elementbottom = 50; }
element.scwstickysidebar({
additionalmargintop: number( elementtop ),
additionalmarginbottom: number( elementbottom )
});
});
},
cookienotify: function(){
if( !$.cookie ) {
console.log('cookienotify: cookie function not defined.');
return true;
}
if( $cookienotification.length > 0 ) {
var cookienotificationheight = $cookienotification.outerheight();
$cookienotification.css({ bottom: -cookienotificationheight });
if( $.cookie('websiteusescookies') != 'yesconfirmed' ) {
$cookienotification.css({ bottom: 0 });
}
$('.cookie-accept').click( function(){
$cookienotification.css({ bottom: -cookienotificationheight });
$.cookie('websiteusescookies', 'yesconfirmed', { expires: 30 });
return false;
});
}
},
extras: function(){
if( $().tooltip ) {
$('[data-toggle="tooltip"]').tooltip({container: 'body'});
} else {
console.log('extras: bootstrap tooltip not defined.');
}
if( $().popover ) {
$('[data-toggle=popover]').popover();
} else {
console.log('extras: bootstrap popover not defined.');
}
$('.style-msg').on( 'click', '.close', function(e){
$( this ).parents( '.style-msg' ).slideup();
e.preventdefault();
});
$('#primary-menu-trigger,#overlay-menu-close').click(function() {
if( $('#primary-menu').find('ul.mobile-primary-menu').length > 0 ) {
$( '#primary-menu > ul.mobile-primary-menu, #primary-menu > div > ul.mobile-primary-menu' ).toggleclass('d-block');
} else {
$( '#primary-menu > ul, #primary-menu > div > ul' ).toggleclass('d-block');
}
$body.toggleclass("primary-menu-open");
return false;
});
$('#page-submenu-trigger').click(function() {
$body.toggleclass('top-search-open', false);
$pagemenu.toggleclass("pagemenu-active");
return false;
});
$pagemenu.find('nav').click(function(e){
$body.toggleclass('top-search-open', false);
$topcart.toggleclass('top-cart-open', false);
});
if( semicolon.ismobile.any() ){
$body.addclass('device-touch');
}
// var el = {
// darklogo : $("", {src: defaultdarklogo}),
// darkretinalogo : $("", {src: retinadarklogo})
// };
// el.darklogo.prependto("body");
// el.darkretinalogo.prependto("body");
// el.darklogo.css({'position':'absolute','z-index':'-100'});
// el.darkretinalogo.css({'position':'absolute','z-index':'-100'});
}
};
semicolon.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 (semicolon.ismobile.android() || semicolon.ismobile.blackberry() || semicolon.ismobile.ios() || semicolon.ismobile.opera() || semicolon.ismobile.windows());
}
};
semicolon.documentonresize = {
init: function(){
var t = settimeout( function(){
semicolon.header.topsocial();
semicolon.header.fullwidthmenu();
semicolon.header.overlaymenu();
semicolon.initialize.fullscreen();
semicolon.initialize.verticalmiddle();
semicolon.initialize.maxheight();
semicolon.initialize.testimonialsgrid();
semicolon.initialize.stickfooteronsmall();
semicolon.initialize.stickyfooter();
semicolon.slider.sliderparallaxdimensions();
semicolon.slider.captionposition();
semicolon.portfolio.arrange();
semicolon.portfolio.portfoliodescmargin();
semicolon.widget.tabsresponsiveresize();
semicolon.widget.tabsjustify();
semicolon.widget.html5video();
semicolon.widget.masonrythumbs();
semicolon.initialize.dataresponsiveclasses();
semicolon.initialize.dataresponsiveheights();
if( $gridcontainer.length > 0 ) {
if( !$gridcontainer.hasclass('.customjs') ) {
if( $().isotope ) {
$gridcontainer.isotope('layout');
} else {
console.log('documentonresize > init: isotope not defined.');
}
}
}
if( $body.hasclass('device-xl') || $body.hasclass('device-lg') ) {
$('#primary-menu').find('ul.mobile-primary-menu').removeclass('d-block');
}
}, 500 );
windowwidth = $window.width();
}
};
semicolon.documentonready = {
init: function(){
semicolon.initialize.init();
semicolon.header.init();
if( $slider.length > 0 || $sliderelement.length > 0 ) { semicolon.slider.init(); }
if( $portfolio.length > 0 ) { semicolon.portfolio.init(); }
semicolon.widget.init();
semicolon.documentonready.windowscroll();
},
windowscroll: function(){
var headeroffset = 0,
headerwrapoffset = 0,
pagemenuoffset = 0;
if( $header.length > 0 ) { headeroffset = $header.offset().top; }
if( $header.length > 0 ) { headerwrapoffset = $headerwrap.offset().top; }
if( $pagemenu.length > 0 ) {
if( $header.length > 0 && !$header.hasclass('no-sticky') ) {
if( $header.hasclass('sticky-style-2') || $header.hasclass('sticky-style-3') ) {
pagemenuoffset = $pagemenu.offset().top - $headerwrap.outerheight();
} else {
pagemenuoffset = $pagemenu.offset().top - $header.outerheight();
}
} else {
pagemenuoffset = $pagemenu.offset().top;
}
}
var headerdefinedoffset = $header.attr('data-sticky-offset');
if( typeof headerdefinedoffset !== 'undefined' ) {
if( headerdefinedoffset == 'full' ) {
headerwrapoffset = $window.height();
var headeroffsetnegative = $header.attr('data-sticky-offset-negative');
if( typeof headeroffsetnegative !== 'undefined' ) { headerwrapoffset = headerwrapoffset - headeroffsetnegative - 1; }
} else {
headerwrapoffset = number(headerdefinedoffset);
}
}
semicolon.header.stickymenu( headerwrapoffset );
semicolon.header.stickypagemenu( pagemenuoffset );
$window.on( 'scroll', function(){
semicolon.initialize.gototopscroll();
$('body.open-header.close-header-on-scroll').removeclass("side-header-open");
semicolon.header.stickymenu( headerwrapoffset );
semicolon.header.stickypagemenu( pagemenuoffset );
semicolon.header.logo();
});
window.addeventlistener('scroll', onscrollsliderparallax, false);
if( $onepagemenuel.length > 0 ){
if( $().scrolled ) {
$window.scrolled(function() {
semicolon.header.onepagescroller();
});
} else {
console.log('windowscroll: scrolled function not defined.');
}
}
}
};
semicolon.documentonload = {
init: function(){
semicolon.slider.captionposition();
semicolon.slider.swiperslidermenu(true);
semicolon.slider.revolutionslidermenu(true);
semicolon.initialize.maxheight();
semicolon.initialize.testimonialsgrid();
semicolon.initialize.verticalmiddle();
semicolon.initialize.stickfooteronsmall();
semicolon.initialize.stickyfooter();
semicolon.portfolio.gridinit( $gridcontainer );
semicolon.portfolio.filterinit();
semicolon.portfolio.shuffleinit();
semicolon.portfolio.arrange();
semicolon.portfolio.portfoliodescmargin();
semicolon.widget.parallax();
semicolon.widget.loadflexslider();
semicolon.widget.html5video();
semicolon.widget.masonrythumbs();
semicolon.header.topsocial();
semicolon.header.responsivemenuclass();
semicolon.initialize.modal();
}
};
var $window = $(window),
$body = $('body'),
$wrapper = $('#wrapper'),
$header = $('#header'),
$headerwrap = $('#header-wrap'),
$content = $('#content'),
$footer = $('#footer'),
windowwidth = $window.width(),
oldheaderclasses = $header.attr('class'),
oldheaderwrapclasses = $headerwrap.attr('class'),
stickymenuclasses = $header.attr('data-sticky-class'),
responsivemenuclasses = $header.attr('data-responsive-class'),
defaultlogo = $('#logo').find('.standard-logo'),
defaultlogowidth = defaultlogo.find('img').outerwidth(),
retinalogo = $('#logo').find('.retina-logo'),
defaultlogoimg = defaultlogo.find('img').attr('src'),
retinalogoimg = retinalogo.find('img').attr('src'),
defaultdarklogo = defaultlogo.attr('data-dark-logo'),
retinadarklogo = retinalogo.attr('data-dark-logo'),
defaultstickylogo = defaultlogo.attr('data-sticky-logo'),
retinastickylogo = retinalogo.attr('data-sticky-logo'),
defaultmobilelogo = defaultlogo.attr('data-mobile-logo'),
retinamobilelogo = retinalogo.attr('data-mobile-logo'),
$pagemenu = $('#page-menu'),
$onepagemenuel = $('.one-page-menu'),
onepageglobaloffset = 0,
$portfolio = $('.portfolio'),
$shop = $('.shop'),
$gridcontainer = $('.grid-container'),
$slider = $('#slider'),
$sliderparallaxel = $('.slider-parallax'),
$sliderelement = $('.slider-element'),
swiperslider = '',
$pagetitle = $('#page-title'),
$portfolioitems = $('.portfolio-ajax').find('.portfolio-item'),
$portfoliodetails = $('#portfolio-ajax-wrap'),
$portfoliodetailscontainer = $('#portfolio-ajax-container'),
$portfolioajaxloader = $('#portfolio-ajax-loader'),
$portfoliofilter = $('.portfolio-filter,.custom-filter'),
prevpostportid = '',
$topsearch = $('#top-search'),
$topcart = $('#top-cart'),
$verticalmiddleel = $('.vertical-middle'),
$topsocialel = $('#top-social').find('li'),
$sistickyel = $('.si-sticky'),
$dotsmenuel = $('.dots-menu'),
$gototopel = $('#gototop'),
$fullscreenel = $('.full-screen'),
$commonheightel = $('.common-height'),
$testimonialsgridel = $('.testimonials-grid'),
$pagesectionel = $('.page-section'),
$owlcarouselel = $('.owl-carousel'),
$parallaxel = $('.parallax'),
$parallaxpagetitleel = $('.page-title-parallax'),
$parallaxportfolioel = $('.portfolio-parallax').find('.portfolio-image'),
$textrotaterel = $('.text-rotater'),
$cookienotification = $('#cookie-notification');
$(document).ready( semicolon.documentonready.init );
$window.on( 'load', semicolon.documentonload.init );
$window.on( 'resize', semicolon.documentonresize.init );
})(jquery);