/*
// DMXzone Fish Eye Menu
// ver 1.05
//
// Copyright (c) 2007-2011, DMXzone.com
//
*/
jQuery.delayedTask=function(c,b,a){var d=null;this.delay=function(g,h,f,e){if(d){clearTimeout(d)}c=h||c;b=f||b;a=e||a;d=setTimeout(function(){c.call(b,a)},g)};this.cancel=function(){if(d){clearTimeout(d);d=null}};this.delayCancel=function(f){var e=this;setTimeout(function(){e.cancel()},f)}};jQuery.dmxFishEye={build:function(a){return this.each(function(){var c=this;var h=navigator.userAgent.toLowerCase();jQuery.browser.msie7=h.indexOf("msie 7")!=-1;if(!c.parentNode){jQuery(c).addClass("fisheye");if(a.valign=="top"){jQuery(c).addClass("fisheyeTop")}else{if(a.valign=="bottom"){jQuery(c).addClass("fisheyeBottom")}}hContainer=jQuery("<div>");hContainer.appendTo(c).addClass("fisheyeContainter");jQuery(c).appendTo(document.body)}var g={sItemsSelector:"a",hItems:jQuery(a.items||"a",c),hContainer:jQuery(a.container||".fisheyeContainter",c),valign:"top",halign:"center",textColor:"#000000",textPos:"top",hPos:jQuery(c).offset(),nWidth:jQuery(c).width(),sTextSelector:"span",nImageWidth:40,itemPadding:0,maxWidth:80,itemWidth:40,nProximity:80,smoothness:"high",aWidths:[],pngFix:false};c.dmxFishEyeConfig=jQuery.extend(g,a);if(jQuery.browser.msie&&!jQuery.browser.msie7){c.dmxFishEyeConfig.pngFix=true}if(typeof c.dmxFishEyeConfig.textPos=="undefined"){c.dmxFishEyeConfig.textPos=c.dmxFishEyeConfig.valign=="top"?"bottom":"top"}if(c.dmxFishEyeConfig.itemPadding>0){var f=c.dmxFishEyeConfig.maxWidth/c.dmxFishEyeConfig.itemWidth;c.dmxFishEyeConfig.itemWidth+=2*c.dmxFishEyeConfig.itemPadding;c.dmxFishEyeConfig.maxWidth+=2*c.dmxFishEyeConfig.itemPadding*f}if(a.smoothness){switch(a.smoothness){case"high":c.dmxFishEyeConfig.nProximity=140;break;case"medium":c.dmxFishEyeConfig.nProximity=80;break;case"low":c.dmxFishEyeConfig.nProximity=50;break}}if(a.itemsList){var e=c.dmxFishEyeConfig.nImageWidth;jQuery.each(a.itemsList,function(j,i){if(c.dmxFishEyeConfig.valign=="bottom"){c.dmxFishEyeConfig.hContainer.append('<a style="width: '+c.dmxFishEyeConfig.itemWidth+"px; left: "+j*c.dmxFishEyeConfig.itemWidth+'px;" href="#" class="fisheyeItem"><span>'+i.text+'</span><img src="'+i.image+'" width="'+e+'">')}else{if(c.dmxFishEyeConfig.valign=="top"){c.dmxFishEyeConfig.hContainer.append('<a style="width: '+c.dmxFishEyeConfig.itemWidth+"px; left: "+j*c.dmxFishEyeConfig.itemWidth+'px;" href="#" class="fisheyeItem"><img src="'+i.image+'" width="'+e+'"><span>'+i.text+"</span>")}}});c.dmxFishEyeConfig.hItems=jQuery(c.dmxFishEyeConfig.sItemsSelector,c)}jQuery.dmxFishEye.positionToolBar(this,0);jQuery.dmxFishEye.positionIcons(this);if(typeof soundManager!="undefined"){var d=new jQuery.delayedTask(function(){soundManager.play("baloon")})}var b;c.dmxFishEyeConfig.hItems.bind("mouseover",function(){if(d){d.delay(100)}}).bind("mouseout",function(){if(d){d.cancel()}}).each(function(j){b=this;jQuery(c.dmxFishEyeConfig.sTextSelector,this).css("opacity",0).css("display","block");if(c.dmxFishEyeConfig.textColor){jQuery(c.dmxFishEyeConfig.sTextSelector,this).css("color",c.dmxFishEyeConfig.textColor)}if(c.dmxFishEyeConfig.valign=="bottom"){jQuery(this).css("top","auto");jQuery(this).css("bottom","0")}else{if(c.dmxFishEyeConfig.valign=="top"){jQuery(this).css("top","0");jQuery(this).css("bottom","auto")}}if(c.dmxFishEyeConfig.itemPadding>0){jQuery(this).css("paddingLeft",c.dmxFishEyeConfig.itemPadding);jQuery(this).css("paddingRight",c.dmxFishEyeConfig.itemPadding);if(!jQuery.boxModel||jQuery.browser.msie){jQuery(this).css("width",c.dmxFishEyeConfig.itemWidth-2*c.dmxFishEyeConfig.itemPadding)}}if(c.dmxFishEyeConfig.textPos=="top"){jQuery("img",this).appendTo(jQuery(this))}else{if(c.dmxFishEyeConfig.textPos=="bottom"){jQuery("img",this).prependTo(jQuery(this))}}if(c.dmxFishEyeConfig.pngFix&&jQuery("img",this).attr("src").toLowerCase().indexOf(".png")>0){var i=new Image();jQuery(i).bind("load",function(){var l=this.width/this.height;b.pngDelta=l}).attr("src",jQuery(this).find("img")[0].src);jQuery("img",this).addClass("png");try{document.recalc()}catch(k){}}c.dmxFishEyeConfig.aWidths[j]=c.dmxFishEyeConfig.itemWidth});jQuery(this).bind("mouseout",function(){});jQuery(window).bind("resize",function(){c.dmxFishEyeConfig.hPos=jQuery(c).offset();jQuery.dmxFishEye.positionToolBar(c,0);jQuery.dmxFishEye.positionIcons(c)});jQuery(document).bind("mousemove",function(p){jQuery.event.fix(p);var o={x:p.pageX,y:p.pageY};var i=0;var l=0;var k=0;var n=0;if(c.dmxFishEyeConfig.halign){l=o.x-c.dmxFishEyeConfig.hPos.left;n=c.dmxFishEyeConfig.itemWidth*c.dmxFishEyeConfig.hItems.size();if(c.dmxFishEyeConfig.halign=="center"){l+=-(c.offsetWidth-n)/2}else{if(c.dmxFishEyeConfig.halign=="right"){l+=-c.offsetWidth+n}else{if(c.dmxFishEyeConfig.halign=="left"){}}}}k=o.y-c.dmxFishEyeConfig.hPos.top-c.offsetHeight/2;var j=Math.pow(k,2);var m=[];c.dmxFishEyeConfig.hItems.each(function(u){var r;if(c.dmxFishEyeConfig.halign!="center"){var t=0;for(var s=0;s<u;s++){t+=c.dmxFishEyeConfig.aWidths[s]}r=Math.sqrt(Math.pow(l-t,2)+j);r-=c.dmxFishEyeConfig.aWidths[u]/2}else{r=Math.sqrt(Math.pow(l-u*c.dmxFishEyeConfig.itemWidth,2)+j);r-=c.dmxFishEyeConfig.itemWidth/2}r=r<0?0:r;r=r>c.dmxFishEyeConfig.nProximity?c.dmxFishEyeConfig.nProximity:r;r=c.dmxFishEyeConfig.nProximity-r;var q=r/(c.dmxFishEyeConfig.nProximity/100);if(q>20){jQuery(c.dmxFishEyeConfig.sTextSelector,this).css("opacity",q/100)}else{jQuery(c.dmxFishEyeConfig.sTextSelector,this).css("opacity",0)}var v=c.dmxFishEyeConfig.maxWidth*(r/c.dmxFishEyeConfig.nProximity);m[u]=c.dmxFishEyeConfig.itemWidth+v;jQuery(this).css("width",c.dmxFishEyeConfig.itemWidth+v);if(c.dmxFishEyeConfig.pngFix&&this.pngDelta){jQuery(this).css("height",(c.dmxFishEyeConfig.itemWidth+v)/this.pngDelta)}if(c.dmxFishEyeConfig.itemPadding>0){var w=c.dmxFishEyeConfig.itemPadding*(1+q/100);jQuery(this).css("paddingLeft",w);jQuery(this).css("paddingRight",w);if(!jQuery.boxModel||jQuery.browser.msie){jQuery(this).css("width",c.dmxFishEyeConfig.itemWidth+v-2*w);if(c.dmxFishEyeConfig.pngFix&&this.pngDelta){jQuery(this).css("height",(c.dmxFishEyeConfig.itemWidth+v-2*w)/this.pngDelta)}}}jQuery(this).css("left",c.dmxFishEyeConfig.itemWidth*u+i);i+=v});c.dmxFishEyeConfig.aWidths=m;jQuery.dmxFishEye.positionToolBar(c,i)})})},positionToolBar:function(b,a){if(typeof a=="undefined"){a=0}if(b.dmxFishEyeConfig.halign){if(b.dmxFishEyeConfig.halign=="center"){b.dmxFishEyeConfig.hContainer.css("left",(b.offsetWidth-b.dmxFishEyeConfig.itemWidth*b.dmxFishEyeConfig.hItems.size())/2-a/2)}else{if(b.dmxFishEyeConfig.halign=="left"){b.dmxFishEyeConfig.hContainer.css("left",-a/b.dmxFishEyeConfig.hItems.size())}else{if(b.dmxFishEyeConfig.halign=="right"){b.dmxFishEyeConfig.hContainer.css("left",b.offsetWidth-b.dmxFishEyeConfig.itemWidth*b.dmxFishEyeConfig.hItems.size()-a/2)}}}}b.dmxFishEyeConfig.hContainer.css("width",b.dmxFishEyeConfig.itemWidth*b.dmxFishEyeConfig.hItems.size()+a)},positionIcons:function(a){a.dmxFishEyeConfig.hItems.each(function(b){jQuery(this).css("width",a.dmxFishEyeConfig.itemWidth);jQuery(this).css("left",a.dmxFishEyeConfig.itemWidth*b)})}};jQuery.fn.dmxFishEye=jQuery.dmxFishEye.build;
