/** * This is main script of Beverly Theme. * Each page loaded this javascript file. * Is located in footer. * */ isFullscreen=false; /* Grid-A-Licious (More info on http://suprb.com/apps/gridalicious/) */ (function(a,b){var c=function(a,b,c){var d;return function(){function h(){if(!c)a.apply(f,g);d=null}var f=this,g=arguments;if(d)clearTimeout(d);else if(c)a.apply(f,g);d=setTimeout(h,b||150)}};jQuery.fn[b]=function(a){return a?this.bind("resize",c(a)):this.trigger(b)}})(jQuery,"smartresize");(function(a){a.Gal=function(b,c){this.element=a(c);this._init(b)};a.Gal.settings={selector:".gal-box,.depth-1,.gallery-item,#respond",width:225,gutter:20,animate:false,animationOptions:{speed:200,duration:300,effect:"fadeInOnAppear",queue:true,complete:function(){}}};a.Gal.prototype={_init:function(b){var c=this;this.name=this._setName(5);this.gridArr=[];this.gridArrAppend=[];this.gridArrPrepend=[];this.setArr=false;this.setGrid=false;this.setOptions;this.cols=0;this.itemCount=0;this.prependCount=0;this.isPrepending=false;this.appendCount=0;this.resetCount=true;this.ifCallback=true;this.box=this.element;this.lastWidth=this.element.width();this.options=a.extend(true,{},a.Gal.settings,b);this.gridArr=a.makeArray(this.box.find(this.options.selector));this.isResizing=false;this.w=0;this.boxArr=[];this._setCols();this._renderGrid("append");a(this.box).addClass("gal-box-top");a(window).smartresize(function(){c.resize()})},_setName:function(a,b){b=b?b:"";return a?this._setName(--a,"0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz".charAt(Math.floor(Math.random()*60))+b):b},_setCols:function(){this.cols=Math.floor(this.box.width()/this.options.width);diff=(this.box.width()-this.cols*this.options.width-this.options.gutter)/this.cols;w=(this.options.width+diff)/this.box.width()*100;this.w=w;for(var b=0;b").addClass("galcolumn").attr("id","item"+b+this.name).css({width:w+"%",paddingLeft:this.options.gutter,paddingBottom:0,"float":"left","-webkit-box-sizing":"border-box","-moz-box-sizing":"border-box","-o-box-sizing":"border-box","box-sizing":"border-box"});this.box.append(c)}this.box.find(a("#clear"+this.name)).remove();var d=a("
").css({clear:"both",height:"0",width:"0",display:"block"}).attr("id","clear"+this.name);this.box.append(d)},_renderGrid:function(b,c,d,e){var f=[];var g=[];var h=[];var i=0;var j=this.prependCount;var k=this.appendCount;var l=this.options.gutter;var m=this.cols;var n=this.name;var o=0;var p=a(".galcolumn").width();if(c){g=c;if(b=="append"){k+=d;i=this.appendCount}if(b=="prepend"){this.isPrepending=true;i=Math.round(d%m);if(i<=0)i=m}if(b=="renderAfterPrepend"){k+=d;i=d}}else{g=this.gridArr;k=a(this.gridArr).size()}a.each(g,function(c,d){var e=a(d);var g="100%";if(e.hasClass("not-responsive")){g="auto"}e.css({marginBottom:l,zoom:"1",filter:"alpha(opacity=0)",opacity:"0"}).find("img, object, embed, iframe").not(".avatar,.author-links img,.reply-icon").css({width:g,height:"auto",display:"block","margin-left":"auto","margin-right":"auto"});if(b=="prepend"){i--;a("#item"+i+n).prepend(e);f.push(e);if(i==0)i=m}else{a("#item"+i+n).append(e);f.push(e);i++;if(i>=m)i=0;if(k>=m)k=k-m}});this.appendCount=k;this.itemCount=i;if(b=="append"||b=="prepend"){if(b=="prepend"){this._updateAfterPrepend(this.gridArr,g)}this._renderItem(f);this.isPrepending=false}else{this._renderItem(this.gridArr)}},_collectItems:function(){var b=[];a(this.box).find(this.options.selector).each(function(c){b.push(a(this))});return b},_renderItem:function(b){var c=this.options.animationOptions.speed;var d=this.options.animationOptions.effect;var e=this.options.animationOptions.duration;var f=this.options.animationOptions.queue;var g=this.options.animate;var h=this.options.animationOptions.complete;var i=0;var j=0;if(g===true&&!this.isResizing){if(f===true&&d=="fadeInOnAppear"){if(this.isPrepending)b.reverse();a.each(b,function(d,f){setTimeout(function(){a(f).animate({opacity:"1.0"},e);j++;if(j==b.length){h.call(undefined,b)}},i*c);i++})}else if(f===false&&d=="fadeInOnAppear"){if(this.isPrepending)b.reverse();a.each(b,function(c,d){a(d).animate({opacity:"1.0"},e);j++;if(j==b.length){if(this.ifCallback){h.call(undefined,b)}}})}if(f===true&&!d){a.each(b,function(c,d){a(d).css({opacity:"1",filter:"alpha(opacity=1)"});j++;if(j==b.length){if(this.ifCallback){h.call(undefined,b)}}})}}else{a.each(b,function(b,c){a(c).css({opacity:"1",filter:"alpha(opacity=1)"})});if(this.ifCallback){h.call(b)}}},_updateAfterPrepend:function(b,c){var d=this.gridArr;a.each(c,function(a,b){d.unshift(b)});this.gridArr=d},resize:function(){if(this.lastWidth!=this.box.width()&&outerHeight!=screen.height&&!isFullscreen){this.box.find(a(".galcolumn")).remove();this._setCols();this.ifCallback=false;this.isResizing=true;this._renderGrid("append");this.ifCallback=true;this.isResizing=false;this.lastWidth=this.box.width();}isFullscreen=outerHeight==screen.height;},append:function(b){var c=this.gridArr;var d=this.gridArrPrepend;a.each(b,function(a,b){c.push(b);d.push(b)});this._renderGrid("append",b,a(b).size())},prepend:function(b){this.ifCallback=false;this._renderGrid("prepend",b,a(b).size());this.ifCallback=true}};a.fn.gridalicious=function(b,c){if(typeof b==="string"){this.each(function(){var d=a.data(this,"gridalicious");d[b].apply(d,[c])})}else{this.each(function(){a.data(this,"gridalicious",new a.Gal(b,this))})}return this}})(jQuery) $(document).ready(function(){$("#post-cards-box, #comments,.gallery").gridalicious({width:232,gutter:20,animate:true,animationOptions:{duration:200, queue:false}});}); /* Touch Detect */ function is_touch_device() { return ('ontouchstart'in document.documentElement||Boolean(window.navigator.msMaxTouchPoints)); } if(is_touch_device()) $("body").addClass("touch"); /* Link Fadeing */ var noLinksPatt = new RegExp("^"+location.origin+"\/?(?!.*wp-).*$","i"); var noFadeLinks = [location.origin+"/feed/", location.origin+"/comments/feed/"]; function setAnchors() { $("a").not(".comment-reply-link").each(function(index, element) { if(noLinksPatt.test(element.href)) $(element).click(function(ev) { i=0 do {if(element.href == noFadeLinks[i]) return true;} while(noFadeLinks[i++]); link = ev.currentTarget.href; target = ev.currentTarget.getAttribute("target"); if(target != "_self" && target) return true; hashChange = false; if(link.indexOf("#") == -1) { linkNoHash = link } else { hashChange = true; linkNoHash = link.slice(0,link.indexOf("#")); } if(linkNoHash == location.href.replace(location.hash, "") && hashChange) return true; $(".right-box").fadeOut(200, function() {location.href = link}); $("#loader").removeClass("block").css("opacity",0).fadeTo(200,1); ev.preventDefault(); }); }); } setAnchors(); $(document).ready(function(){$(".right-box").animate({"opacity":1},300);if(!('ajaxInfo' in window)){$("#loader").fadeTo(200,0,function(){$("#loader").hide();});}else{$("#loader").addClass("block");}}); $(".searchform").submit(function(ev){ ev.preventDefault(); $(".right-box").fadeOut(200, function() {location.href = location.origin+"/?s="+$(ev.currentTarget).find(".searchfield").val()}); $("#loader").removeClass("block").css("opacity",0).fadeTo(200,1); }); /* Nav Scrolling */ var lastScrollTop=0,$nav=$("nav"),$navBox=$("#nav-box"),$window=$(window),$body=$("body"); function defMenuOverflow() { $body.css("min-height", $navBox.height()+"px"); } $window.bind("resize ready", defMenuOverflow); document.body.addEventListener("touchmove", menuScroll); $window.scroll(menuScroll); function menuScroll() { delta = $window.scrollTop() - lastScrollTop; lastScrollTop = $window.scrollTop(); minNavTop = $window.height() - $navBox.height(); if(minNavTop > 0) minNavTop = 0; navTop = parseInt($nav.css("top")); navTop -= delta; if(navTop < minNavTop) navTop = minNavTop; if(navTop > 0) navTop = 0; $nav.css("top", navTop+"px"); } /* Mobile Icons */ var $mobIcons = $(".mob-icon"); $mobIcons.click(function(ev){ $target = $(ev.delegateTarget); $($target.data("toggle")).toggleClass("menu-is-open"); $target.toggleClass("button-set"); $mobIcons.not($target).each(function(index,el){ $($(el).data("toggle")).removeClass("menu-is-open"); $(el).removeClass("button-set"); }); }); /* Submenus Rolling */ jQuery.fn.animateAuto = function(speed, callback){ var elem, height; return this.each(function(i, el){ el = jQuery(el); if(el.height() != 0) { el.animate({"height":0}, {duration:speed, easing:'swing', always:defMenuOverflow}); el.parents(".sub-menu").animate({"height":"-="+el.height()},speed); } else { elem = el.clone().css({"height":"auto","width":"auto"}).appendTo(".left-menu"); height = elem.height(); elem.remove(); el.parents(".sub-menu").animate({"height":"+="+height},speed); el.animate({"height":height}, {duration:speed, easing:'swing', always:defMenuOverflow}); } }); } $(".menu-item-has-children").click(function(ev) { $(ev.delegateTarget).toggleClass("submenu-is-open").find(".sub-menu").first().animateAuto(400); ev.stopImmediatePropagation(); });