(function($){$.fn.lazyload=function(options){var settings={threshold:0,failurelimit:0,event:"scroll",effect:"show",container:window};if(options){$.extend(settings,options);}
var elements=this;if("scroll"==settings.event){$(settings.container).bind("scroll",function(event){var counter=0;elements.each(function(){if($.abovethetop(this,settings)||$.leftofbegin(this,settings)){}else if(!$.belowthefold(this,settings)&&!$.rightoffold(this,settings)){$(this).trigger("appear");}else{if(counter++>settings.failurelimit){return false;}}});var temp=$.grep(elements,function(element){return!element.loaded;});elements=$(temp);});}
this.each(function(){var self=this;if(undefined==$(self).attr("original")){$(self).attr("original",$(self).attr("src"));}
if("scroll"!=settings.event||undefined==$(self).attr("src")||settings.placeholder==$(self).attr("src")||($.abovethetop(self,settings)||$.leftofbegin(self,settings)||$.belowthefold(self,settings)||$.rightoffold(self,settings))){if(settings.placeholder){$(self).attr("src",settings.placeholder);}else{$(self).removeAttr("src");}
self.loaded=false;}else{self.loaded=true;}
$(self).one("appear",function(){if(!this.loaded){$("<img />").bind("load",function(){$(self).hide().attr("src",$(self).attr("original"))
[settings.effect](settings.effectspeed);self.loaded=true;}).attr("src",$(self).attr("original"));};});if("scroll"!=settings.event){$(self).bind(settings.event,function(event){if(!self.loaded){$(self).trigger("appear");}});}});$(settings.container).trigger(settings.event);return this;};$.belowthefold=function(element,settings){if(settings.container===undefined||settings.container===window){var fold=$(window).height()+$(window).scrollTop();}else{var fold=$(settings.container).offset().top+$(settings.container).height();}
return fold<=$(element).offset().top-settings.threshold;};$.rightoffold=function(element,settings){if(settings.container===undefined||settings.container===window){var fold=$(window).width()+$(window).scrollLeft();}else{var fold=$(settings.container).offset().left+$(settings.container).width();}
return fold<=$(element).offset().left-settings.threshold;};$.abovethetop=function(element,settings){if(settings.container===undefined||settings.container===window){var fold=$(window).scrollTop();}else{var fold=$(settings.container).offset().top;}
return fold>=$(element).offset().top+settings.threshold+$(element).height();};$.leftofbegin=function(element,settings){if(settings.container===undefined||settings.container===window){var fold=$(window).scrollLeft();}else{var fold=$(settings.container).offset().left;}
return fold>=$(element).offset().left+settings.threshold+$(element).width();};$.extend($.expr[':'],{"below-the-fold":"$.belowthefold(a, {threshold : 0, container: window})","above-the-fold":"!$.belowthefold(a, {threshold : 0, container: window})","right-of-fold":"$.rightoffold(a, {threshold : 0, container: window})","left-of-fold":"!$.rightoffold(a, {threshold : 0, container: window})"});})(jQuery);
;;(function($){
/*
   * smartresize: debounced resize event for jQuery
   * http://github.com/lrbabe/jquery-smartresize
   *
   * Copyright (c) 2009 Louis-Remi Babe
   * Licensed under the GPL license.
   * http://docs.jquery.com/License
   *
   */
var event=$.event,resizeTimeout;event.special.smartresize={setup:function(){$(this).bind("resize",event.special.smartresize.handler);},teardown:function(){$(this).unbind("resize",event.special.smartresize.handler);},handler:function(event,execAsap){var context=this,args=arguments;event.type="smartresize";if(resizeTimeout){clearTimeout(resizeTimeout);}
resizeTimeout=setTimeout(function(){jQuery.event.handle.apply(context,args);},execAsap==="execAsap"?0:100);}};$.fn.smartresize=function(fn){return fn?this.bind("smartresize",fn):this.trigger("smartresize",["execAsap"]);};$.fn.masonry=function(options,callback){var msnry={getBricks:function($wall,props,opts){var hasItemSelector=(opts.itemSelector===undefined);if(opts.appendedContent===undefined){props.$bricks=hasItemSelector?$wall.children():$wall.find(opts.itemSelector);}else{props.$bricks=hasItemSelector?opts.appendedContent:opts.appendedContent.filter(opts.itemSelector);}},placeBrick:function($brick,setCount,setY,props,opts){var minimumY=Math.min.apply(Math,setY),setHeight=minimumY+$brick.outerHeight(true),i=setY.length,shortCol=i,setSpan=props.colCount+1-i;while(i--){if(setY[i]==minimumY){shortCol=i;}}
var position={left:props.colW*shortCol+props.posLeft,top:minimumY};$brick.applyStyle(position,$.extend(true,{},opts.animationOptions));for(i=0;i<setSpan;i++){props.colY[shortCol+i]=setHeight;}},setup:function($wall,opts,props){msnry.getBricks($wall,props,opts);if(props.masoned){props.previousData=$wall.data('masonry');}
if(opts.columnWidth===undefined){props.colW=props.masoned?props.previousData.colW:props.$bricks.outerWidth(true);}else{props.colW=opts.columnWidth;}
props.colCount=Math.floor($wall.width()/props.colW);props.colCount=Math.max(props.colCount,1);},arrange:function($wall,opts,props){var i;if(!props.masoned||opts.appendedContent!==undefined){props.$bricks.css('position','absolute');}
if(!props.masoned){$wall.css('position','relative');var $cursor=$(document.createElement('div'));$wall.prepend($cursor);props.posTop=Math.round($cursor.position().top);props.posLeft=Math.round($cursor.position().left);$cursor.remove();}else{props.posTop=props.previousData.posTop;props.posLeft=props.previousData.posLeft;}
if(props.masoned&&opts.appendedContent!==undefined){props.colY=props.previousData.colY;for(i=props.previousData.colCount;i<props.colCount;i++){props.colY[i]=props.posTop;}}else{props.colY=[];i=props.colCount;while(i--){props.colY.push(props.posTop);}}
$.fn.applyStyle=(props.masoned&&opts.animate)?$.fn.animate:$.fn.css;if(opts.singleMode){props.$bricks.each(function(){var $brick=$(this);msnry.placeBrick($brick,props.colCount,props.colY,props,opts);});}else{props.$bricks.each(function(){var $brick=$(this),colSpan=Math.ceil($brick.outerWidth(true)/props.colW);colSpan=Math.min(colSpan,props.colCount);if(colSpan===1){msnry.placeBrick($brick,props.colCount,props.colY,props,opts);}else{var groupCount=props.colCount+1-colSpan,groupY=[];for(i=0;i<groupCount;i++){var groupColY=props.colY.slice(i,i+colSpan);groupY[i]=Math.max.apply(Math,groupColY);}
msnry.placeBrick($brick,groupCount,groupY,props,opts);}});}
props.wallH=Math.max.apply(Math,props.colY);var wallCSS={height:props.wallH-props.posTop};$wall.applyStyle(wallCSS,$.extend(true,[],opts.animationOptions));if(!props.masoned){setTimeout(function(){$wall.addClass('masoned');},1);}
callback.call(props.$bricks);$wall.data('masonry',props);},resize:function($wall,opts,props){props.masoned=!!$wall.data('masonry');var prevColCount=$wall.data('masonry').colCount;msnry.setup($wall,opts,props);if(props.colCount!=prevColCount){msnry.arrange($wall,opts,props);}}};return this.each(function(){var $wall=$(this),props={};props.masoned=!!$wall.data('masonry');var previousOptions=props.masoned?$wall.data('masonry').options:{},opts=$.extend({},$.fn.masonry.defaults,previousOptions,options),resizeOn=previousOptions.resizeable;props.options=opts.saveOptions?opts:previousOptions;callback=callback||function(){};msnry.getBricks($wall,props,opts);if(!props.$bricks.length){return this;}
msnry.setup($wall,opts,props);msnry.arrange($wall,opts,props);if(!resizeOn&&opts.resizeable){$(window).bind('smartresize.masonry',function(){msnry.resize($wall,opts,props);});}
if(resizeOn&&!opts.resizeable){$(window).unbind('smartresize.masonry');}});};$.fn.masonry.defaults={singleMode:false,columnWidth:undefined,itemSelector:undefined,appendedContent:undefined,saveOptions:true,resizeable:true,animate:false,animationOptions:{}};})(jQuery);
;/**
 *  The Footer Plugin
 *  
 * 	Copyright 2010 Icewares
 *  
 *  Licensed under the CPL (http://footer.icewares.com.br/licence.html)
 */
/**
 * 	The Footer Plugin
 * 
 *  version 1.0.2
 *  
 *  Created by Stefano Stypulkowski
 *   
 *  Requires jQuery 1.4.x - www.jquery.com
 *  
 *  For instructions see:  http://footer.icewares.com.br 
 */
(function($){Footer={style:{absolute:{position:"absolute",bottom:0},relative:{position:"relative",bottom:"auto"}},configs:{timeOut:200,zIndex:200},browserAdjust:0,height:0,fHeight:0,fId:0,monitor:function(){if(Footer.height!==$(document).height()){Footer.setPosition();Footer.height=$(document).height();}if(Footer.fHeight!==$(Footer.fId).height()){Footer.setFsmHeight();Footer.footerHeight=$(Footer.fId).height();}setTimeout(function(){Footer.monitor();},Footer.configs.timeOut);},setPosition:function(){if(($(document).height()-Footer.browserAdjust)>$(window).height()){$("#footerSpaceManager").remove();$(Footer.fId).css(Footer.style.relative);}else{if($("#footerSpaceManager").size()==0){$(Footer.fId).parent().append("<div id='footerSpaceManager' style='height: "+$(Footer.fId).height()+"px;'></div>");}$(Footer.fId).css(Footer.style.absolute);}},setFsmHeight:function(){if($("#footerSpaceManager").size()>0&&$(Footer.fId).height()!==$("#footerSpaceManager").height()){$("#footerSpaceManager").height($(Footer.fId).height());}}};$.fn.footer=function(options){Footer.configs=$.extend(Footer.configs,options);if(Footer.configs.timeOut<1){Footer.configs.timeOut=1;}if($(this).attr("id")===""){$(this).attr("id","footerAutoGeneratedId");}$(this).css("z-index",Footer.configs.zIndex);Footer.fId="#"+$(this).attr("id");Footer.height=$(document).height();Footer.fHeight=$(this).height();if($.browser.msie){Footer.browserAdjust=4;}Footer.setPosition();Footer.monitor();};})(jQuery);
;jQuery(document).ready(function($){$(".animal-desc").animate({"top":150},0);$(".moduletable_animals ul li").hover(function(){$(this).find(".animal-desc").animate({"top":0},"fast");$(this).find(".animal-desc h2").css("color","#fd9e00");},function(){$(this).find(".animal-desc").animate({"top":150},"fast");$(this).find(".animal-desc h2").css("color","#FFF");});$(".sec_animals #page ul li").hover(function(){$(this).find(".animal-desc").animate({"top":0},"fast");},function(){$(this).find(".animal-desc").animate({"top":150},"fast");});$("#wrapper_bottom").footer({zIndex:1});$('.moduletable_animals ul').masonry({singleMode:true});$('.moduletable_animals_sm ul').masonry({singleMode:true});$(".moduletable_animals img").lazyload({effect:"fadeIn"});$(".moduletable_animals_sm img").lazyload({effect:"fadeIn"});})
