/*
Dependencies:
	jquery.js
*/
/* 
JQuery Curvy Corners by Mike Jolley - 
http://blue-anvil.com
19th May 2008
v1.5 - B190508
*/
(function($){$.fn.corner=function(a){var b={tl:{radius:8},tr:{radius:8},bl:{radius:8},br:{radius:8},antiAlias:true,autoPad:true,validTags:["div"]};if(a&&typeof(a)!='string')jQuery.extend(b,a);return this.each(function(){new curvyObject(b,this).applyCorners()})};function curvyObject(){this.box=arguments[1];this.masterCorners=new Array();this.settings=arguments[0];var F=$(this.box).css("height");var G=$(this.box).css("width");var H=$(this.box).css("borderTopWidth");var I=$(this.box).css("backgroundImage");var J=$(this.box).css("position");var K=$(this.box).css("paddingTop");var L=$(this.box).css("paddingBottom");var M=$(this.box).css("paddingLeft");var N=$(this.box).css("paddingRight");this.boxHeight=parseInt(((F!=""&&F!="auto"&&F.indexOf("%")==-1)?F.substring(0,F.indexOf("px")):this.box.scrollHeight));this.boxWidth=parseInt(((G!=""&&G!="auto"&&G.indexOf("%")==-1)?G.substring(0,G.indexOf("px")):this.box.scrollWidth));this.borderWidth=parseInt(((H!=""&&H.indexOf("px")!==-1)?H.slice(0,H.indexOf("px")):0));this.boxPaddingTop=strip_px(K);this.boxPaddingBottom=strip_px(L);this.boxPaddingLeft=strip_px(M);this.boxPaddingRight=strip_px(N);this.borderColour=format_colour($(this.box).css("borderTopColor"));this.boxColour=format_colour($(this.box).css("backgroundColor"));this.borderString=this.borderWidth+"px"+" solid "+this.borderColour;this.bgImage=(I!="none"&&I!="initial")?I:"";this.boxContent=$(this.box).html();$(this.box).css("padding","0px");if(J!="absolute")$(this.box).css("position","relative");if(($.browser.msie&&$.browser.version==6)&&G=="auto"&&F=="auto")$(this.box).css("width","100%");if(($.browser.msie)){$(this.box).css("zoom","1");$(this.box+" *").css("zoom","normal")}if(this.settings.autoPad==true)$(this.box).html("");this.applyCorners=function(){var a=Math.max(this.settings.tl?this.settings.tl.radius:0,this.settings.tr?this.settings.tr.radius:0);var b=Math.max(this.settings.bl?this.settings.bl.radius:0,this.settings.br?this.settings.br.radius:0);for(var t=0;t<2;t++){switch(t){case 0:if(this.settings.tl||this.settings.tr){var c=document.createElement("div");this.topContainer=this.box.appendChild(c);$(this.topContainer).css({width:"100%","font-size":"1px",overflow:"hidden",position:"absolute","padding-left":this.borderWidth,"padding-right":this.borderWidth,height:a+"px",top:0-a+"px",left:0-this.borderWidth+"px"})};break;case 1:if(this.settings.bl||this.settings.br){var c=document.createElement("DIV");var c=document.createElement("div");this.bottomContainer=this.box.appendChild(c);$(this.bottomContainer).css({width:"100%","font-size":"1px",overflow:"hidden",position:"absolute","padding-left":this.borderWidth,"padding-right":this.borderWidth,height:b,bottom:0-b+"px",left:0-this.borderWidth+"px"})};break}};if(this.settings.autoPad==true){var d=document.createElement("DIV");var e=document.createElement("DIV");$(d).css({position:"relative",float:"left","margin-top":"-"+a+"px","margin-bottom":"-"+b+"px","padding-bottom":this.boxPaddingBottom,"padding-top":this.boxPaddingTop,"padding-left":this.boxPaddingLeft,"padding-right":this.boxPaddingRight}).html(this.boxContent).addClass="autoPadDiv";$(e).css("clear","both");this.contentDIV=this.box.appendChild(d);this.contentDIV=this.box.appendChild(e)};if(this.topContainer)$(this.box).css("border-top",0);if(this.bottomContainer)$(this.box).css("border-bottom",0);var f=["tr","tl","br","bl"];for(var i in f){if(i>-1<4){var g=f[i];if(!this.settings[g]){if(((g=="tr"||g=="tl")&&this.topContainer!=null)||((g=="br"||g=="bl")&&this.bottomContainer!=null)){var h=document.createElement("DIV");$(h).css({position:"relative","font-size":"1px",overflow:"hidden"});if(this.bgImage=="")$(h).css("background-color",this.boxColour);else $(h).css("background-image",this.bgImage).css("background-color",this.boxColour);switch(g){case"tl":$(h).css({height:a-this.borderWidth,"margin-right":this.settings.tr.radius-(this.borderWidth*2),"border-left":this.borderString,"border-top":this.borderString,left:-this.borderWidth+"px","background-repeat":$(this.box).css("background-repeat"),"background-position":this.borderWidth+"px 0px"});break;case"tr":$(h).css({height:a-this.borderWidth,"margin-left":this.settings.tl.radius-(this.borderWidth*2),"border-right":this.borderString,"border-top":this.borderString,left:this.borderWidth+"px","background-repeat":$(this.box).css("background-repeat"),"background-position":"-"+(a+this.borderWidth)+"px 0px"});break;case"bl":if(a>0)$(h).css({height:b-this.borderWidth,"margin-right":this.settings.br.radius-(this.borderWidth*2),"border-left":this.borderString,"border-bottom":this.borderString,left:-this.borderWidth+"px","background-repeat":$(this.box).css("background-repeat"),"background-position":"0px -"+($(this.box).height()+a-this.borderWidth+1)+"px"});else $(h).css({height:b-this.borderWidth,"margin-right":this.settings.br.radius-(this.borderWidth*2),"border-left":this.borderString,"border-bottom":this.borderString,left:-this.borderWidth+"px","background-repeat":$(this.box).css("background-repeat"),"background-position":"0px -"+($(this.box).height())+"px"});break;case"br":if(a>0)$(h).css({height:b-this.borderWidth,"margin-left":this.settings.bl.radius-(this.borderWidth*2),"border-right":this.borderString,"border-bottom":this.borderString,left:this.borderWidth+"px","background-repeat":$(this.box).css("background-repeat"),"background-position":"-"+this.settings.bl.radius+this.borderWidth+"px -"+($(this.box).height()+a-this.borderWidth+1)+"px"});else $(h).css({height:b-this.borderWidth,"margin-left":this.settings.bl.radius-(this.borderWidth*2),"border-right":this.borderString,"border-bottom":this.borderString,left:this.borderWidth+"px","background-repeat":$(this.box).css("background-repeat"),"background-position":"-"+this.settings.bl.radius+this.borderWidth+"px -"+($(this.box).height())+"px"});break}}}else{if(this.masterCorners[this.settings[g].radius]){var h=this.masterCorners[this.settings[g].radius].cloneNode(true)}else{var h=document.createElement("DIV");$(h).css({height:this.settings[g].radius,width:this.settings[g].radius,position:"absolute","font-size":"1px",overflow:"hidden"});var l=parseInt(this.settings[g].radius-this.borderWidth);for(var m=0,j=this.settings[g].radius;m<j;m++){if((m+1)>=l)var n=-1;else var n=(Math.floor(Math.sqrt(Math.pow(l,2)-Math.pow((m+1),2)))-1);if(l!=j){if((m)>=l)var o=-1;else var o=Math.ceil(Math.sqrt(Math.pow(l,2)-Math.pow(m,2)));if((m+1)>=j)var p=-1;else var p=(Math.floor(Math.sqrt(Math.pow(j,2)-Math.pow((m+1),2)))-1)};if((m)>=j)var q=-1;else var q=Math.ceil(Math.sqrt(Math.pow(j,2)-Math.pow(m,2)));if(n>-1)this.drawPixel(m,0,this.boxColour,100,(n+1),h,-1,this.settings[g].radius);if(l!=j){for(var r=(n+1);r<o;r++){if(this.settings.antiAlias){if(this.bgImage!=""){var s=(pixelFraction(m,r,l)*100);if(s<30){this.drawPixel(m,r,this.borderColour,100,1,h,0,this.settings[g].radius)}else{this.drawPixel(m,r,this.borderColour,100,1,h,-1,this.settings[g].radius)}}else{var u=BlendColour(this.boxColour,this.borderColour,pixelFraction(m,r,l));this.drawPixel(m,r,u,100,1,h,0,this.settings[g].radius,g)}}};if(this.settings.antiAlias){if(p>=o){if(o==-1)o=0;this.drawPixel(m,o,this.borderColour,100,(p-o+1),h,0,0)}}else{if(p>=n){this.drawPixel(m,(n+1),this.borderColour,100,(p-n),h,0,0)}};var v=this.borderColour}else{var v=this.boxColour;var p=n};if(this.settings.antiAlias){for(var r=(p+1);r<q;r++){this.drawPixel(m,r,v,(pixelFraction(m,r,j)*100),1,h,((this.borderWidth>0)?0:-1),this.settings[g].radius)}}};this.masterCorners[this.settings[g].radius]=h.cloneNode(true)};if(g!="br"){for(var t=0,k=h.childNodes.length;t<k;t++){var w=h.childNodes[t];var x=strip_px($(w).css("top"));var y=strip_px($(w).css("left"));var A=strip_px($(w).css("height"));if(g=="tl"||g=="bl"){$(w).css("left",this.settings[g].radius-y-1+"px")};if(g=="tr"||g=="tl"){$(w).css("top",this.settings[g].radius-A-x+"px")};switch(g){case"tr":$(w).css("background-position","-"+Math.abs((this.boxWidth-this.settings[g].radius+this.borderWidth)+y)+"px -"+Math.abs(this.settings[g].radius-A-x-this.borderWidth)+"px");break;case"tl":$(w).css("background-position","-"+Math.abs((this.settings[g].radius-y-1)-this.borderWidth)+"px -"+Math.abs(this.settings[g].radius-A-x-this.borderWidth)+"px");break;case"bl":if(a>0)$(w).css("background-position","-"+Math.abs((this.settings[g].radius-y-1)-this.borderWidth)+"px -"+Math.abs(($(this.box).height()+a-this.borderWidth+1))+"px");else $(w).css("background-position","-"+Math.abs((this.settings[g].radius-y-1)-this.borderWidth)+"px -"+Math.abs(($(this.box).height()))+"px");break}}}};if(h){switch(g){case"tl":if($(h).css("position")=="absolute")$(h).css("top","0");if($(h).css("position")=="absolute")$(h).css("left","0");if(this.topContainer)this.topContainer.appendChild(h);break;case"tr":if($(h).css("position")=="absolute")$(h).css("top","0");if($(h).css("position")=="absolute")$(h).css("right","0");if(this.topContainer)this.topContainer.appendChild(h);break;case"bl":if($(h).css("position")=="absolute")$(h).css("bottom","0");if(h.style.position=="absolute")$(h).css("left","0");if(this.bottomContainer)this.bottomContainer.appendChild(h);break;case"br":if($(h).css("position")=="absolute")$(h).css("bottom","0");if($(h).css("position")=="absolute")$(h).css("right","0");if(this.bottomContainer)this.bottomContainer.appendChild(h);break}}}};var B=new Array();B["t"]=Math.abs(this.settings.tl.radius-this.settings.tr.radius);B["b"]=Math.abs(this.settings.bl.radius-this.settings.br.radius);for(z in B){if(z=="t"||z=="b"){if(B[z]){var C=((this.settings[z+"l"].radius<this.settings[z+"r"].radius)?z+"l":z+"r");var D=document.createElement("DIV");$(D).css({height:B[z],width:this.settings[C].radius+"px",position:"absolute","font-size":"1px",overflow:"hidden","background-color":this.boxColour});switch(C){case"tl":$(D).css({"bottom":"0","left":"0","border-left":this.borderString});this.topContainer.appendChild(D);break;case"tr":$(D).css({"bottom":"0","right":"0","border-right":this.borderString});this.topContainer.appendChild(D);break;case"bl":$(D).css({"top":"0","left":"0","border-left":this.borderString});this.bottomContainer.appendChild(D);break;case"br":$(D).css({"top":"0","right":"0","border-right":this.borderString});this.bottomContainer.appendChild(D);break}};var E=document.createElement("DIV");$(E).css({position:"relative","font-size":"1px",overflow:"hidden","background-color":this.boxColour,"background-image":this.bgImage,"background-repeat":$(this.box).css("background-repeat")});switch(z){case"t":if(this.topContainer){if(this.settings.tl.radius&&this.settings.tr.radius){$(E).css({height:a-this.borderWidth+"px","margin-left":this.settings.tl.radius-this.borderWidth+"px","margin-right":this.settings.tr.radius-this.borderWidth+"px","border-top":this.borderString});if(this.bgImage!="")$(E).css("background-position","-"+(a+this.borderWidth)+"px 0px");this.topContainer.appendChild(E)};$(this.box).css("background-position","0px -"+(a-this.borderWidth+1)+"px")};break;case"b":if(this.bottomContainer){if(this.settings.bl.radius&&this.settings.br.radius){$(E).css({height:b-this.borderWidth+"px","margin-left":this.settings.bl.radius-this.borderWidth+"px","margin-right":this.settings.br.radius-this.borderWidth+"px","border-bottom":this.borderString});if(this.bgImage!=""&&a>0)$(E).css("background-position","-"+(this.settings.bl.radius-this.borderWidth)+"px -"+($(this.box).height()+a-this.borderWidth+1)+"px");else $(E).css("background-position","-"+(this.settings.bl.radius-this.borderWidth)+"px -"+($(this.box).height())+"px");this.bottomContainer.appendChild(E)}};break}}}};this.drawPixel=function(a,b,c,d,e,f,g,h){var i=document.createElement("DIV");$(i).css({height:e,width:"1px",position:"absolute","font-size":"1px",overflow:"hidden"});var j=Math.max(this.settings["tr"].radius,this.settings["tl"].radius);if(g==-1&&this.bgImage!=""){if(j>0)$(i).css("background-position","-"+((this.boxWidth-h-this.borderWidth)+a)+"px -"+(($(this.box).height()+j-this.borderWidth)-b)+"px");else $(i).css("background-position","-"+((this.boxWidth-h-this.borderWidth)+a)+"px -"+(($(this.box).height())-b)+"px");$(i).css({"background-image":this.bgImage,"background-repeat":$(this.box).css("background-repeat"),"background-color":c})}else{$(i).css("background-color",c)};if(d!=100)setOpacity(i,d);$(i).css({top:b+"px",left:a+"px"});f.appendChild(i)}};function BlendColour(a,b,c){var d=parseInt(a.substr(1,2),16);var e=parseInt(a.substr(3,2),16);var f=parseInt(a.substr(5,2),16);var g=parseInt(b.substr(1,2),16);var h=parseInt(b.substr(3,2),16);var i=parseInt(b.substr(5,2),16);if(c>1||c<0)c=1;var j=Math.round((d*c)+(g*(1-c)));if(j>255)j=255;if(j<0)j=0;var k=Math.round((e*c)+(h*(1-c)));if(k>255)k=255;if(k<0)k=0;var l=Math.round((f*c)+(i*(1-c)));if(l>255)l=255;if(l<0)l=0;return"#"+IntToHex(j)+IntToHex(k)+IntToHex(l)};function IntToHex(a){base=a/16;rem=a%16;base=base-(rem/16);baseS=MakeHex(base);remS=MakeHex(rem);return baseS+''+remS};function MakeHex(x){if((x>=0)&&(x<=9)){return x}else{switch(x){case 10:return"A";case 11:return"B";case 12:return"C";case 13:return"D";case 14:return"E";case 15:return"F"}}};function pixelFraction(x,y,r){var a=0;var b=new Array(1);var c=new Array(1);var d=0;var e="";var f=Math.sqrt((Math.pow(r,2)-Math.pow(x,2)));if((f>=y)&&(f<(y+1))){e="Left";b[d]=0;c[d]=f-y;d=d+1};var f=Math.sqrt((Math.pow(r,2)-Math.pow(y+1,2)));if((f>=x)&&(f<(x+1))){e=e+"Top";b[d]=f-x;c[d]=1;d=d+1};var f=Math.sqrt((Math.pow(r,2)-Math.pow(x+1,2)));if((f>=y)&&(f<(y+1))){e=e+"Right";b[d]=1;c[d]=f-y;d=d+1};var f=Math.sqrt((Math.pow(r,2)-Math.pow(y,2)));if((f>=x)&&(f<(x+1))){e=e+"Bottom";b[d]=f-x;c[d]=0};switch(e){case"LeftRight":a=Math.min(c[0],c[1])+((Math.max(c[0],c[1])-Math.min(c[0],c[1]))/2);break;case"TopRight":a=1-(((1-b[0])*(1-c[1]))/2);break;case"TopBottom":a=Math.min(b[0],b[1])+((Math.max(b[0],b[1])-Math.min(b[0],b[1]))/2);break;case"LeftBottom":a=(c[0]*b[1])/2;break;default:a=1};return a};function rgb2Hex(a){try{var b=rgb2Array(a);var c=parseInt(b[0]);var d=parseInt(b[1]);var f=parseInt(b[2]);var g="#"+IntToHex(c)+IntToHex(d)+IntToHex(f)}catch(e){alert("There was an error converting the RGB value to Hexadecimal in function rgb2Hex")};return g};function rgb2Array(a){var b=a.substring(4,a.indexOf(")"));var c=b.split(", ");return c};function setOpacity(a,b){b=(b==100)?99.999:b;if($.browser.safari&&a.tagName!="IFRAME"){var c=rgb2Array(a.style.backgroundColor);var d=parseInt(c[0]);var e=parseInt(c[1]);var f=parseInt(c[2]);a.style.backgroundColor="rgba("+d+", "+e+", "+f+", "+b/100+")"}else if(typeof(a.style.opacity)!="undefined"){a.style.opacity=b/100}else if(typeof(a.style.MozOpacity)!="undefined"){a.style.MozOpacity=b/100}else if(typeof(a.style.filter)!="undefined"){a.style.filter="alpha(opacity:"+b+")"}else if(typeof(a.style.KHTMLOpacity)!="undefined"){a.style.KHTMLOpacity=b/100}};function format_colour(a){var b="transparent";if(a!=""&&a!="transparent"){if(a.substr(0,3)=="rgb"){b=rgb2Hex(a)}else if(a.length==4){b="#"+a.substring(1,2)+a.substring(1,2)+a.substring(2,3)+a.substring(2,3)+a.substring(3,4)+a.substring(3,4)}else{b=a}};return b};function strip_px(a){return parseInt(((a!=""&&a.indexOf("px")!==-1)?a.slice(0,a.indexOf("px")):0))}})(jQuery);