
// hover intent
(function($){$.fn.hoverIntent=function(f,g){var cfg={sensitivity:7,interval:100,timeout:0};cfg=$.extend(cfg,g?{over:f,out:g}:f);var cX,cY,pX,pY;var track=function(ev){cX=ev.pageX;cY=ev.pageY;};var compare=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);if((Math.abs(pX-cX)+Math.abs(pY-cY))<cfg.sensitivity){$(ob).unbind("mousemove",track);ob.hoverIntent_s=1;return cfg.over.apply(ob,[ev]);}else{pX=cX;pY=cY;ob.hoverIntent_t=setTimeout(function(){compare(ev,ob);},cfg.interval);}};var delay=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);ob.hoverIntent_s=0;return cfg.out.apply(ob,[ev]);};var handleHover=function(e){var p=(e.type=="mouseover"?e.fromElement:e.toElement)||e.relatedTarget;while(p&&p!=this){try{p=p.parentNode;}catch(e){p=this;}}if(p==this){return false;}var ev=jQuery.extend({},e);var ob=this;if(ob.hoverIntent_t){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);}if(e.type=="mouseover"){pX=ev.pageX;pY=ev.pageY;$(ob).bind("mousemove",track);if(ob.hoverIntent_s!=1){ob.hoverIntent_t=setTimeout(function(){compare(ev,ob);},cfg.interval);}}else{$(ob).unbind("mousemove",track);if(ob.hoverIntent_s==1){ob.hoverIntent_t=setTimeout(function(){delay(ev,ob);},cfg.timeout);}}};return this.mouseover(handleHover).mouseout(handleHover);};})(jQuery);

// BT
jQuery.bt={version:"0.9.5-rc1"};(function($){jQuery.fn.bt=function(content,options){if(typeof content!="string"){var contentSelect=true;options=content;content=false;}else{var contentSelect=false;}if(jQuery.fn.hoverIntent&&jQuery.bt.defaults.trigger=="hover"){jQuery.bt.defaults.trigger="hoverIntent";}return this.each(function(index){var opts=jQuery.extend(false,jQuery.bt.defaults,jQuery.bt.options,options);opts.spikeLength=numb(opts.spikeLength);opts.spikeGirth=numb(opts.spikeGirth);opts.overlap=numb(opts.overlap);var ajaxTimeout=false;if(opts.killTitle){$(this).find("[title]").andSelf().each(function(){if(!$(this).attr("bt-xTitle")){$(this).attr("bt-xTitle",$(this).attr("title")).attr("title","");}});}if(typeof opts.trigger=="string"){opts.trigger=[opts.trigger];}if(opts.trigger[0]=="hoverIntent"){var hoverOpts=jQuery.extend(opts.hoverIntentOpts,{over:function(){this.btOn();},out:function(){this.btOff();}});$(this).hoverIntent(hoverOpts);}else{if(opts.trigger[0]=="hover"){$(this).hover(function(){this.btOn();},function(){this.btOff();});}else{if(opts.trigger[0]=="now"){if($(this).hasClass("bt-active")){this.btOff();}else{this.btOn();}}else{if(opts.trigger[0]=="none"){}else{if(opts.trigger.length>1&&opts.trigger[0]!=opts.trigger[1]){$(this).bind(opts.trigger[0],function(){this.btOn();}).bind(opts.trigger[1],function(){this.btOff();});}else{$(this).bind(opts.trigger[0],function(){if($(this).hasClass("bt-active")){this.btOff();}else{this.btOn();}});}}}}}this.btOn=function(){if(typeof $(this).data("bt-box")=="object"){this.btOff();}opts.preBuild.apply(this);$(jQuery.bt.vars.closeWhenOpenStack).btOff();$(this).addClass("bt-active "+opts.activeClass);if(contentSelect&&opts.ajaxPath==null){if(opts.killTitle){$(this).attr("title",$(this).attr("bt-xTitle"));}content=$.isFunction(opts.contentSelector)?opts.contentSelector.apply(this):eval(opts.contentSelector);if(opts.killTitle){$(this).attr("title","");}}if(opts.ajaxPath!=null&&content==false){if(typeof opts.ajaxPath=="object"){var url=eval(opts.ajaxPath[0]);url+=opts.ajaxPath[1]?" "+opts.ajaxPath[1]:"";}else{var url=opts.ajaxPath;}var off=url.indexOf(" ");if(off>=0){var selector=url.slice(off,url.length);url=url.slice(0,off);}var cacheData=opts.ajaxCache?$(document.body).data("btCache-"+url.replace(/\./g,"")):null;if(typeof cacheData=="string"){content=selector?$("<div/>").append(cacheData.replace(/<script(.|\s)*?\/script>/g,"")).find(selector):cacheData;}else{var target=this;var ajaxOpts=jQuery.extend(false,{type:opts.ajaxType,data:opts.ajaxData,cache:opts.ajaxCache,url:url,complete:function(XMLHttpRequest,textStatus){if(textStatus=="success"||textStatus=="notmodified"){if(opts.ajaxCache){$(document.body).data("btCache-"+url.replace(/\./g,""),XMLHttpRequest.responseText);}ajaxTimeout=false;content=selector?$("<div/>").append(XMLHttpRequest.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(selector):XMLHttpRequest.responseText;}else{if(textStatus=="timeout"){ajaxTimeout=true;}content=opts.ajaxError.replace(/%error/g,XMLHttpRequest.statusText);}if($(target).hasClass("bt-active")){target.btOn();}}},opts.ajaxOpts);jQuery.ajax(ajaxOpts);content=opts.ajaxLoading;}}var shadowMarginX=0;var shadowMarginY=0;var shadowShiftX=0;var shadowShiftY=0;if(opts.shadow&&!shadowSupport()){opts.shadow=false;jQuery.extend(opts,opts.noShadowOpts);}if(opts.shadow){if(opts.shadowBlur>Math.abs(opts.shadowOffsetX)){shadowMarginX=opts.shadowBlur*2;}else{shadowMarginX=opts.shadowBlur+Math.abs(opts.shadowOffsetX);}shadowShiftX=(opts.shadowBlur-opts.shadowOffsetX)>0?opts.shadowBlur-opts.shadowOffsetX:0;if(opts.shadowBlur>Math.abs(opts.shadowOffsetY)){shadowMarginY=opts.shadowBlur*2;}else{shadowMarginY=opts.shadowBlur+Math.abs(opts.shadowOffsetY);}shadowShiftY=(opts.shadowBlur-opts.shadowOffsetY)>0?opts.shadowBlur-opts.shadowOffsetY:0;}if(opts.offsetParent){var offsetParent=$(opts.offsetParent);var offsetParentPos=offsetParent.offset();var pos=$(this).offset();var top=numb(pos.top)-numb(offsetParentPos.top)+numb($(this).css("margin-top"))-shadowShiftY;var left=numb(pos.left)-numb(offsetParentPos.left)+numb($(this).css("margin-left"))-shadowShiftX;}else{var offsetParent=($(this).css("position")=="absolute")?$(this).parents().eq(0).offsetParent():$(this).offsetParent();var pos=$(this).btPosition();var top=numb(pos.top)+numb($(this).css("margin-top"))-shadowShiftY;var left=numb(pos.left)+numb($(this).css("margin-left"))-shadowShiftX;}var width=$(this).btOuterWidth();var height=$(this).outerHeight();if(typeof content=="object"){var original=content;var clone=$(original).clone(true).show();var origClones=$(original).data("bt-clones")||[];origClones.push(clone);$(original).data("bt-clones",origClones);$(clone).data("bt-orig",original);$(this).data("bt-content-orig",{original:original,clone:clone});content=clone;}if(typeof content=="null"||content==""){return;}var $text=$('<div class="bt-content"></div>').append(content).css({padding:opts.padding,position:"absolute",width:(opts.shrinkToFit?"auto":opts.width),zIndex:opts.textzIndex,left:shadowShiftX,top:shadowShiftY}).css(opts.cssStyles);var $box=$('<div class="bt-wrapper"></div>').append($text).addClass(opts.cssClass).css({position:"absolute",width:opts.width,zIndex:opts.wrapperzIndex,visibility:"hidden"}).appendTo(offsetParent);if(jQuery.fn.bgiframe){$text.bgiframe();$box.bgiframe();}$(this).data("bt-box",$box);var scrollTop=numb($(document).scrollTop());var scrollLeft=numb($(document).scrollLeft());var docWidth=numb($(window).width());var docHeight=numb($(window).height());var winRight=scrollLeft+docWidth;var winBottom=scrollTop+docHeight;var space=new Object();var thisOffset=$(this).offset();space.top=thisOffset.top-scrollTop;space.bottom=docHeight-((thisOffset+height)-scrollTop);space.left=thisOffset.left-scrollLeft;space.right=docWidth-((thisOffset.left+width)-scrollLeft);var textOutHeight=numb($text.outerHeight());var textOutWidth=numb($text.btOuterWidth());if(opts.positions.constructor==String){opts.positions=opts.positions.replace(/ /,"").split(",");}if(opts.positions[0]=="most"){var position="top";for(var pig in space){position=space[pig]>space[position]?pig:position;}}else{for(var x in opts.positions){var position=opts.positions[x];if((position=="left"||position=="right")&&space[position]>textOutWidth+opts.spikeLength){break;}else{if((position=="top"||position=="bottom")&&space[position]>textOutHeight+opts.spikeLength){break;}}}}var horiz=left+((width-textOutWidth)*0.5);var vert=top+((height-textOutHeight)*0.5);var points=new Array();var textTop,textLeft,textRight,textBottom,textTopSpace,textBottomSpace,textLeftSpace,textRightSpace,crossPoint,textCenter,spikePoint;switch(position){case"top":$text.css("margin-bottom",opts.spikeLength+"px");$box.css({top:(top-$text.outerHeight(true))+opts.overlap,left:horiz});textRightSpace=(winRight-opts.windowMargin)-($text.offset().left+$text.btOuterWidth(true));var xShift=shadowShiftX;if(textRightSpace<0){$box.css("left",(numb($box.css("left"))+textRightSpace)+"px");xShift-=textRightSpace;}textLeftSpace=($text.offset().left+numb($text.css("margin-left")))-(scrollLeft+opts.windowMargin);if(textLeftSpace<0){$box.css("left",(numb($box.css("left"))-textLeftSpace)+"px");xShift+=textLeftSpace;}textTop=$text.btPosition().top+numb($text.css("margin-top"));textLeft=$text.btPosition().left+numb($text.css("margin-left"));textRight=textLeft+$text.btOuterWidth();textBottom=textTop+$text.outerHeight();textCenter={x:textLeft+($text.btOuterWidth()*opts.centerPointX),y:textTop+($text.outerHeight()*opts.centerPointY)};points[points.length]=spikePoint={y:textBottom+opts.spikeLength,x:((textRight-textLeft)*0.5)+xShift,type:"spike"};crossPoint=findIntersectX(spikePoint.x,spikePoint.y,textCenter.x,textCenter.y,textBottom);crossPoint.x=crossPoint.x<textLeft+opts.spikeGirth/2+opts.cornerRadius?textLeft+opts.spikeGirth/2+opts.cornerRadius:crossPoint.x;crossPoint.x=crossPoint.x>(textRight-opts.spikeGirth/2)-opts.cornerRadius?(textRight-opts.spikeGirth/2)-opts.CornerRadius:crossPoint.x;points[points.length]={x:crossPoint.x-(opts.spikeGirth/2),y:textBottom,type:"join"};points[points.length]={x:textLeft,y:textBottom,type:"corner"};points[points.length]={x:textLeft,y:textTop,type:"corner"};points[points.length]={x:textRight,y:textTop,type:"corner"};points[points.length]={x:textRight,y:textBottom,type:"corner"};points[points.length]={x:crossPoint.x+(opts.spikeGirth/2),y:textBottom,type:"join"};points[points.length]=spikePoint;break;case"left":$text.css("margin-right",opts.spikeLength+"px");$box.css({top:vert+"px",left:((left-$text.btOuterWidth(true))+opts.overlap)+"px"});textBottomSpace=(winBottom-opts.windowMargin)-($text.offset().top+$text.outerHeight(true));var yShift=shadowShiftY;if(textBottomSpace<0){$box.css("top",(numb($box.css("top"))+textBottomSpace)+"px");yShift-=textBottomSpace;}textTopSpace=($text.offset().top+numb($text.css("margin-top")))-(scrollTop+opts.windowMargin);if(textTopSpace<0){$box.css("top",(numb($box.css("top"))-textTopSpace)+"px");yShift+=textTopSpace;}textTop=$text.btPosition().top+numb($text.css("margin-top"));textLeft=$text.btPosition().left+numb($text.css("margin-left"));textRight=textLeft+$text.btOuterWidth();textBottom=textTop+$text.outerHeight();textCenter={x:textLeft+($text.btOuterWidth()*opts.centerPointX),y:textTop+($text.outerHeight()*opts.centerPointY)};points[points.length]=spikePoint={x:textRight+opts.spikeLength,y:((textBottom-textTop)*0.5)+yShift,type:"spike"};crossPoint=findIntersectY(spikePoint.x,spikePoint.y,textCenter.x,textCenter.y,textRight);crossPoint.y=crossPoint.y<textTop+opts.spikeGirth/2+opts.cornerRadius?textTop+opts.spikeGirth/2+opts.cornerRadius:crossPoint.y;crossPoint.y=crossPoint.y>(textBottom-opts.spikeGirth/2)-opts.cornerRadius?(textBottom-opts.spikeGirth/2)-opts.cornerRadius:crossPoint.y;points[points.length]={x:textRight,y:crossPoint.y+opts.spikeGirth/2,type:"join"};points[points.length]={x:textRight,y:textBottom,type:"corner"};points[points.length]={x:textLeft,y:textBottom,type:"corner"};points[points.length]={x:textLeft,y:textTop,type:"corner"};points[points.length]={x:textRight,y:textTop,type:"corner"};points[points.length]={x:textRight,y:crossPoint.y-opts.spikeGirth/2,type:"join"};points[points.length]=spikePoint;break;case"bottom":$text.css("margin-top",opts.spikeLength+"px");$box.css({top:(top+height)-opts.overlap,left:horiz});textRightSpace=(winRight-opts.windowMargin)-($text.offset().left+$text.btOuterWidth(true));var xShift=shadowShiftX;if(textRightSpace<0){$box.css("left",(numb($box.css("left"))+textRightSpace)+"px");xShift-=textRightSpace;}textLeftSpace=($text.offset().left+numb($text.css("margin-left")))-(scrollLeft+opts.windowMargin);if(textLeftSpace<0){$box.css("left",(numb($box.css("left"))-textLeftSpace)+"px");xShift+=textLeftSpace;}textTop=$text.btPosition().top+numb($text.css("margin-top"));textLeft=$text.btPosition().left+numb($text.css("margin-left"));textRight=textLeft+$text.btOuterWidth();textBottom=textTop+$text.outerHeight();textCenter={x:textLeft+($text.btOuterWidth()*opts.centerPointX),y:textTop+($text.outerHeight()*opts.centerPointY)};points[points.length]=spikePoint={x:((textRight-textLeft)*0.5)+xShift,y:shadowShiftY,type:"spike"};crossPoint=findIntersectX(spikePoint.x,spikePoint.y,textCenter.x,textCenter.y,textTop);crossPoint.x=crossPoint.x<textLeft+opts.spikeGirth/2+opts.cornerRadius?textLeft+opts.spikeGirth/2+opts.cornerRadius:crossPoint.x;crossPoint.x=crossPoint.x>(textRight-opts.spikeGirth/2)-opts.cornerRadius?(textRight-opts.spikeGirth/2)-opts.cornerRadius:crossPoint.x;points[points.length]={x:crossPoint.x+opts.spikeGirth/2,y:textTop,type:"join"};points[points.length]={x:textRight,y:textTop,type:"corner"};points[points.length]={x:textRight,y:textBottom,type:"corner"};points[points.length]={x:textLeft,y:textBottom,type:"corner"};points[points.length]={x:textLeft,y:textTop,type:"corner"};points[points.length]={x:crossPoint.x-(opts.spikeGirth/2),y:textTop,type:"join"};points[points.length]=spikePoint;break;case"right":$text.css("margin-left",(opts.spikeLength+"px"));$box.css({top:vert+"px",left:((left+width)-opts.overlap)+"px"});textBottomSpace=(winBottom-opts.windowMargin)-($text.offset().top+$text.outerHeight(true));var yShift=shadowShiftY;if(textBottomSpace<0){$box.css("top",(numb($box.css("top"))+textBottomSpace)+"px");yShift-=textBottomSpace;}textTopSpace=($text.offset().top+numb($text.css("margin-top")))-(scrollTop+opts.windowMargin);if(textTopSpace<0){$box.css("top",(numb($box.css("top"))-textTopSpace)+"px");yShift+=textTopSpace;}textTop=$text.btPosition().top+numb($text.css("margin-top"));textLeft=$text.btPosition().left+numb($text.css("margin-left"));textRight=textLeft+$text.btOuterWidth();textBottom=textTop+$text.outerHeight();textCenter={x:textLeft+($text.btOuterWidth()*opts.centerPointX),y:textTop+($text.outerHeight()*opts.centerPointY)};points[points.length]=spikePoint={x:shadowShiftX,y:((textBottom-textTop)*0.5)+yShift,type:"spike"};crossPoint=findIntersectY(spikePoint.x,spikePoint.y,textCenter.x,textCenter.y,textLeft);crossPoint.y=crossPoint.y<textTop+opts.spikeGirth/2+opts.cornerRadius?textTop+opts.spikeGirth/2+opts.cornerRadius:crossPoint.y;crossPoint.y=crossPoint.y>(textBottom-opts.spikeGirth/2)-opts.cornerRadius?(textBottom-opts.spikeGirth/2)-opts.cornerRadius:crossPoint.y;points[points.length]={x:textLeft,y:crossPoint.y-opts.spikeGirth/2,type:"join"};points[points.length]={x:textLeft,y:textTop,type:"corner"};points[points.length]={x:textRight,y:textTop,type:"corner"};points[points.length]={x:textRight,y:textBottom,type:"corner"};points[points.length]={x:textLeft,y:textBottom,type:"corner"};points[points.length]={x:textLeft,y:crossPoint.y+opts.spikeGirth/2,type:"join"};points[points.length]=spikePoint;break;}var canvas=document.createElement("canvas");$(canvas).attr("width",(numb($text.btOuterWidth(true))+opts.strokeWidth*2+shadowMarginX)).attr("height",(numb($text.outerHeight(true))+opts.strokeWidth*2+shadowMarginY)).appendTo($box).css({position:"absolute",zIndex:opts.boxzIndex});if(typeof G_vmlCanvasManager!="undefined"){canvas=G_vmlCanvasManager.initElement(canvas);}if(opts.cornerRadius>0){var newPoints=new Array();var newPoint;for(var i=0;i<points.length;i++){if(points[i].type=="corner"){newPoint=betweenPoint(points[i],points[(i-1)%points.length],opts.cornerRadius);newPoint.type="arcStart";newPoints[newPoints.length]=newPoint;newPoints[newPoints.length]=points[i];newPoint=betweenPoint(points[i],points[(i+1)%points.length],opts.cornerRadius);newPoint.type="arcEnd";newPoints[newPoints.length]=newPoint;}else{newPoints[newPoints.length]=points[i];}}points=newPoints;}var ctx=canvas.getContext("2d");if(opts.shadow&&opts.shadowOverlap!==true){var shadowOverlap=numb(opts.shadowOverlap);switch(position){case"top":if(opts.shadowOffsetX+opts.shadowBlur-shadowOverlap>0){$box.css("top",(numb($box.css("top"))-(opts.shadowOffsetX+opts.shadowBlur-shadowOverlap)));}break;case"right":if(shadowShiftX-shadowOverlap>0){$box.css("left",(numb($box.css("left"))+shadowShiftX-shadowOverlap));}break;case"bottom":if(shadowShiftY-shadowOverlap>0){$box.css("top",(numb($box.css("top"))+shadowShiftY-shadowOverlap));}break;case"left":if(opts.shadowOffsetY+opts.shadowBlur-shadowOverlap>0){$box.css("left",(numb($box.css("left"))-(opts.shadowOffsetY+opts.shadowBlur-shadowOverlap)));}break;}}drawIt.apply(ctx,[points],opts.strokeWidth);ctx.fillStyle=opts.fill;if(opts.shadow){ctx.shadowOffsetX=opts.shadowOffsetX;ctx.shadowOffsetY=opts.shadowOffsetY;ctx.shadowBlur=opts.shadowBlur;ctx.shadowColor=opts.shadowColor;}ctx.closePath();ctx.fill();if(opts.strokeWidth>0){ctx.shadowColor="rgba(0, 0, 0, 0)";ctx.lineWidth=opts.strokeWidth;ctx.strokeStyle=opts.strokeStyle;ctx.beginPath();drawIt.apply(ctx,[points],opts.strokeWidth);ctx.closePath();ctx.stroke();}opts.preShow.apply(this,[$box[0]]);$box.css({display:"none",visibility:"visible"});opts.showTip.apply(this,[$box[0]]);if(opts.overlay){var overlay=$('<div class="bt-overlay"></div>').css({position:"absolute",backgroundColor:"blue",top:top,left:left,width:width,height:height,opacity:".2"}).appendTo(offsetParent);$(this).data("overlay",overlay);}if((opts.ajaxPath!=null&&opts.ajaxCache==false)||ajaxTimeout){content=false;}if(opts.clickAnywhereToClose){jQuery.bt.vars.clickAnywhereStack.push(this);$(document).click(jQuery.bt.docClick);}if(opts.closeWhenOthersOpen){jQuery.bt.vars.closeWhenOpenStack.push(this);}opts.postShow.apply(this,[$box[0]]);};this.btOff=function(){var box=$(this).data("bt-box");opts.preHide.apply(this,[box]);var i=this;i.btCleanup=function(){var box=$(i).data("bt-box");var contentOrig=$(i).data("bt-content-orig");var overlay=$(i).data("bt-overlay");if(typeof box=="object"){$(box).remove();$(i).removeData("bt-box");}if(typeof contentOrig=="object"){var clones=$(contentOrig.original).data("bt-clones");$(contentOrig).data("bt-clones",arrayRemove(clones,contentOrig.clone));}if(typeof overlay=="object"){$(overlay).remove();$(i).removeData("bt-overlay");}jQuery.bt.vars.clickAnywhereStack=arrayRemove(jQuery.bt.vars.clickAnywhereStack,i);jQuery.bt.vars.closeWhenOpenStack=arrayRemove(jQuery.bt.vars.closeWhenOpenStack,i);$(i).removeClass("bt-active "+opts.activeClass);opts.postHide.apply(i);};opts.hideTip.apply(this,[box,i.btCleanup]);};var refresh=this.btRefresh=function(){this.btOff();this.btOn();};});function drawIt(points,strokeWidth){this.moveTo(points[0].x,points[0].y);for(i=1;i<points.length;i++){if(points[i-1].type=="arcStart"){this.quadraticCurveTo(round5(points[i].x,strokeWidth),round5(points[i].y,strokeWidth),round5(points[(i+1)%points.length].x,strokeWidth),round5(points[(i+1)%points.length].y,strokeWidth));i++;}else{this.lineTo(round5(points[i].x,strokeWidth),round5(points[i].y,strokeWidth));}}}function round5(num,strokeWidth){var ret;strokeWidth=numb(strokeWidth);if(strokeWidth%2){ret=num;}else{ret=Math.round(num-0.5)+0.5;}return ret;}function numb(num){return parseInt(num)||0;}function arrayRemove(arr,elem){var x,newArr=new Array();for(x in arr){if(arr[x]!=elem){newArr.push(arr[x]);}}return newArr;}function canvasSupport(){var canvas_compatible=false;try{canvas_compatible=!!(document.createElement("canvas").getContext("2d"));}catch(e){canvas_compatible=!!(document.createElement("canvas").getContext);}return canvas_compatible;}function shadowSupport(){try{var userAgent=navigator.userAgent.toLowerCase();if(/webkit/.test(userAgent)){return true;}else{if(/gecko|mozilla/.test(userAgent)&&parseFloat(userAgent.match(/firefox\/(\d+(?:\.\d+)+)/)[1])>=3.1){return true;}}}catch(err){}return false;}function betweenPoint(point1,point2,dist){var y,x;if(point1.x==point2.x){y=point1.y<point2.y?point1.y+dist:point1.y-dist;return{x:point1.x,y:y};}else{if(point1.y==point2.y){x=point1.x<point2.x?point1.x+dist:point1.x-dist;return{x:x,y:point1.y};}}}function centerPoint(arcStart,corner,arcEnd){var x=corner.x==arcStart.x?arcEnd.x:arcStart.x;var y=corner.y==arcStart.y?arcEnd.y:arcStart.y;var startAngle,endAngle;if(arcStart.x<arcEnd.x){if(arcStart.y>arcEnd.y){startAngle=(Math.PI/180)*180;endAngle=(Math.PI/180)*90;}else{startAngle=(Math.PI/180)*90;endAngle=0;}}else{if(arcStart.y>arcEnd.y){startAngle=(Math.PI/180)*270;endAngle=(Math.PI/180)*180;}else{startAngle=0;endAngle=(Math.PI/180)*270;}}return{x:x,y:y,type:"center",startAngle:startAngle,endAngle:endAngle};}function findIntersect(r1x1,r1y1,r1x2,r1y2,r2x1,r2y1,r2x2,r2y2){if(r2x1==r2x2){return findIntersectY(r1x1,r1y1,r1x2,r1y2,r2x1);}if(r2y1==r2y2){return findIntersectX(r1x1,r1y1,r1x2,r1y2,r2y1);}var r1m=(r1y1-r1y2)/(r1x1-r1x2);var r1b=r1y1-(r1m*r1x1);var r2m=(r2y1-r2y2)/(r2x1-r2x2);var r2b=r2y1-(r2m*r2x1);var x=(r2b-r1b)/(r1m-r2m);var y=r1m*x+r1b;return{x:x,y:y};}function findIntersectY(r1x1,r1y1,r1x2,r1y2,x){if(r1y1==r1y2){return{x:x,y:r1y1};}var r1m=(r1y1-r1y2)/(r1x1-r1x2);var r1b=r1y1-(r1m*r1x1);var y=r1m*x+r1b;return{x:x,y:y};}function findIntersectX(r1x1,r1y1,r1x2,r1y2,y){if(r1x1==r1x2){return{x:r1x1,y:y};}var r1m=(r1y1-r1y2)/(r1x1-r1x2);var r1b=r1y1-(r1m*r1x1);var x=(y-r1b)/r1m;return{x:x,y:y};}};jQuery.fn.btPosition=function(){function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,"marginTop");offset.left-=num(this,"marginLeft");parentOffset.top+=num(offsetParent,"borderTopWidth");parentOffset.left+=num(offsetParent,"borderLeftWidth");results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};}return results;};jQuery.fn.btOuterWidth=function(margin){function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}return this["innerWidth"]()+num(this,"borderLeftWidth")+num(this,"borderRightWidth")+(margin?num(this,"marginLeft")+num(this,"marginRight"):0);};jQuery.fn.btOn=function(){return this.each(function(index){if(jQuery.isFunction(this.btOn)){this.btOn();}});};jQuery.fn.btOff=function(){return this.each(function(index){if(jQuery.isFunction(this.btOff)){this.btOff();}});};jQuery.bt.vars={clickAnywhereStack:[],closeWhenOpenStack:[]};jQuery.bt.docClick=function(e){if(!e){var e=window.event;}if(!$(e.target).parents().andSelf().filter(".bt-wrapper, .bt-active").length&&jQuery.bt.vars.clickAnywhereStack.length){$(jQuery.bt.vars.clickAnywhereStack).btOff();$(document).unbind("click",jQuery.bt.docClick);}};jQuery.bt.defaults={trigger:"hover",clickAnywhereToClose:true,closeWhenOthersOpen:false,shrinkToFit:false,width:"200px",padding:"10px",spikeGirth:10,spikeLength:15,overlap:0,overlay:false,killTitle:true,textzIndex:9999,boxzIndex:9998,wrapperzIndex:9997,offsetParent:null,positions:["most"],fill:"rgb(255, 255, 102)",windowMargin:10,strokeWidth:1,strokeStyle:"#000",cornerRadius:5,centerPointX:0.5,centerPointY:0.5,shadow:false,shadowOffsetX:2,shadowOffsetY:2,shadowBlur:3,shadowColor:"#000",shadowOverlap:false,noShadowOpts:{strokeStyle:"#999"},cssClass:"",cssStyles:{},activeClass:"bt-active",contentSelector:"$(this).attr('title')",ajaxPath:null,ajaxError:"<strong>ERROR:</strong> <em>%error</em>",ajaxLoading:"<blink>Loading...</blink>",ajaxData:{},ajaxType:"GET",ajaxCache:true,ajaxOpts:{},preBuild:function(){},preShow:function(box){},showTip:function(box){$(box).show();},postShow:function(box){},preHide:function(box){},hideTip:function(box,callback){$(box).hide();callback();},postHide:function(){},hoverIntentOpts:{interval:300,timeout:500}};jQuery.bt.options={};})(jQuery);

// scrollTO
(function($){var m=$.scrollTo=function(b,h,f){$(window).scrollTo(b,h,f)};m.defaults={axis:'xy',duration:parseFloat($.fn.jquery)>=1.3?0:1};m.window=function(b){return $(window).scrollable()};$.fn.scrollable=function(){return this.map(function(){var b=this,h=!b.nodeName||$.inArray(b.nodeName.toLowerCase(),['iframe','#document','html','body'])!=-1;if(!h)return b;var f=(b.contentWindow||b).document||b.ownerDocument||b;return $.browser.safari||f.compatMode=='BackCompat'?f.body:f.documentElement})};$.fn.scrollTo=function(l,j,a){if(typeof j=='object'){a=j;j=0}if(typeof a=='function')a={onAfter:a};if(l=='max')l=9e9;a=$.extend({},m.defaults,a);j=j||a.speed||a.duration;a.queue=a.queue&&a.axis.length>1;if(a.queue)j/=2;a.offset=n(a.offset);a.over=n(a.over);return this.scrollable().each(function(){var k=this,o=$(k),d=l,p,g={},q=o.is('html,body');switch(typeof d){case'number':case'string':if(/^([+-]=)?\d+(\.\d+)?(px)?$/.test(d)){d=n(d);break}d=$(d,this);case'object':if(d.is||d.style)p=(d=$(d)).offset()}$.each(a.axis.split(''),function(b,h){var f=h=='x'?'Left':'Top',i=f.toLowerCase(),c='scroll'+f,r=k[c],s=h=='x'?'Width':'Height';if(p){g[c]=p[i]+(q?0:r-o.offset()[i]);if(a.margin){g[c]-=parseInt(d.css('margin'+f))||0;g[c]-=parseInt(d.css('border'+f+'Width'))||0}g[c]+=a.offset[i]||0;if(a.over[i])g[c]+=d[s.toLowerCase()]()*a.over[i]}else g[c]=d[i];if(/^\d+$/.test(g[c]))g[c]=g[c]<=0?0:Math.min(g[c],u(s));if(!b&&a.queue){if(r!=g[c])t(a.onAfterFirst);delete g[c]}});t(a.onAfter);function t(b){o.animate(g,j,a.easing,b&&function(){b.call(this,l,a)})};function u(b){var h='scroll'+b;if(!q)return k[h];var f='client'+b,i=k.ownerDocument.documentElement,c=k.ownerDocument.body;return Math.max(i[h],c[h])-Math.min(i[f],c[f])}}).end()};function n(b){return typeof b=='object'?b:{top:b,left:b}}})(jQuery);

// local scroll
(function($){var l=location.href.replace(/#.*/,'');var g=$.localScroll=function(a){$('body').localScroll(a)};g.defaults={duration:1e3,axis:'y',event:'click',stop:true,target:window,reset:true};g.hash=function(a){if(location.hash){a=$.extend({},g.defaults,a);a.hash=false;if(a.reset){var e=a.duration;delete a.duration;$(a.target).scrollTo(0,a);a.duration=e}i(0,location,a)}};$.fn.localScroll=function(b){b=$.extend({},g.defaults,b);return b.lazy?this.bind(b.event,function(a){var e=$([a.target,a.target.parentNode]).filter(d)[0];if(e)i(a,e,b)}):this.find('a,area').filter(d).bind(b.event,function(a){i(a,this,b)}).end().end();function d(){return!!this.href&&!!this.hash&&this.href.replace(this.hash,'')==l&&(!b.filter||$(this).is(b.filter))}};function i(a,e,b){var d=e.hash.slice(1),f=document.getElementById(d)||document.getElementsByName(d)[0];if(!f)return;if(a)a.preventDefault();var h=$(b.target);if(b.lock&&h.is(':animated')||b.onBefore&&b.onBefore.call(b,a,f,h)===false)return;if(b.stop)h.stop(true);if(b.hash){var j=f.id==d?'id':'name',k=$('<a> </a>').attr(j,d).css({position:'absolute',top:$(window).scrollTop(),left:$(window).scrollLeft()});f[j]='';$('body').prepend(k);location=e.hash;k.remove();f[j]=d}h.scrollTo(f,b).trigger('notify.serialScroll',[f])}})(jQuery);

// cookie
jQuery.cookie=function(key,value,options){if(arguments.length>1&&String(value)!=="[object Object]"){options=jQuery.extend({},options);if(value===null||value===undefined){options.expires=-1;}if(typeof options.expires==='number'){var days=options.expires,t=options.expires=new Date();t.setDate(t.getDate()+days);}value=String(value);return(document.cookie=[encodeURIComponent(key),'=',options.raw?value:encodeURIComponent(value),options.expires?'; expires='+options.expires.toUTCString():'',options.path?'; path='+options.path:'',options.domain?'; domain='+options.domain:'',options.secure?'; secure':''].join(''));}options=value||{};var result,decode=options.raw?function(s){return s;}:decodeURIComponent;return(result=new RegExp('(?:^|; )'+encodeURIComponent(key)+'=([^;]*)').exec(document.cookie))?decode(result[1]):null;};

// autosuggest 
(function($){$.Autocompleter=function($elem,options){this.cacheData_={};this.cacheLength_=0;this.selectClass_='jquery-autocomplete-selected-item';this.keyTimeout_=null;this.lastKeyPressed_=null;this.lastProcessedValue_=null;this.lastSelectedValue_=null;this.active_=false;this.finishOnBlur_=true;if(!$elem||!($elem instanceof jQuery)||$elem.length!==1||$elem.get(0).tagName.toUpperCase()!=='INPUT'){alert('Invalid parameter for jquery.Autocompleter, jQuery object with one element with INPUT tag expected');return;}if(typeof options==='string'){this.options={url:options};}else{this.options=options;}this.options.maxCacheLength=parseInt(this.options.maxCacheLength,10);if(isNaN(this.options.maxCacheLength)||this.options.maxCacheLength<1){this.options.maxCacheLength=1;}this.options.minChars=parseInt(this.options.minChars,10);if(isNaN(this.options.minChars)||this.options.minChars<1){this.options.minChars=1;}this.dom={};this.dom.$elem=$elem;if(this.options.inputClass){this.dom.$elem.addClass(this.options.inputClass);}this.dom.$results=$('<div></div>').hide();if(this.options.resultsClass){this.dom.$results.addClass(this.options.resultsClass);}this.dom.$results.css({position:'absolute'});$('body').append(this.dom.$results);var self=this;$elem.keydown(function(e){self.lastKeyPressed_=e.keyCode;switch(self.lastKeyPressed_){case 38:e.preventDefault();if(self.active_){self.focusPrev();}else{self.activate();}return false;break;case 40:e.preventDefault();if(self.active_){self.focusNext();}else{self.activate();}return false;break;case 9:case 13:if(self.active_){e.preventDefault();self.selectCurrent();return false;}break;case 27:if(self.active_){e.preventDefault();self.finish();return false;}break;default:self.activate();}});$elem.blur(function(){if(self.finishOnBlur_){setTimeout(function(){self.finish();},200);}});};$.Autocompleter.prototype.position=function(){var offset=this.dom.$elem.offset();this.dom.$results.css({top:offset.top+this.dom.$elem.outerHeight(),left:offset.left});};$.Autocompleter.prototype.cacheRead=function(filter){var filterLength,searchLength,search,maxPos,pos;if(this.options.useCache){filter=String(filter);filterLength=filter.length;if(this.options.matchSubset){searchLength=1;}else{searchLength=filterLength;}while(searchLength<=filterLength){if(this.options.matchInside){maxPos=filterLength-searchLength;}else{maxPos=0;}pos=0;while(pos<=maxPos){search=filter.substr(0,searchLength);if(this.cacheData_[search]!==undefined){return this.cacheData_[search];}pos++;}searchLength++;}}return false;};$.Autocompleter.prototype.cacheWrite=function(filter,data){if(this.options.useCache){if(this.cacheLength_>=this.options.maxCacheLength){this.cacheFlush();}filter=String(filter);if(this.cacheData_[filter]!==undefined){this.cacheLength_++;}return this.cacheData_[filter]=data;}return false;};$.Autocompleter.prototype.cacheFlush=function(){this.cacheData_={};this.cacheLength_=0;};$.Autocompleter.prototype.callHook=function(hook,data){var f=this.options[hook];if(f&&$.isFunction(f)){return f(data,this);}return false;};$.Autocompleter.prototype.activate=function(){var self=this;var activateNow=function(){self.activateNow();};var delay=parseInt(this.options.delay,10);if(isNaN(delay)||delay<=0){delay=250;}if(this.keyTimeout_){clearTimeout(this.keyTimeout_);}this.keyTimeout_=setTimeout(activateNow,delay);};$.Autocompleter.prototype.activateNow=function(){var value=this.dom.$elem.val();if(value!==this.lastProcessedValue_&&value!==this.lastSelectedValue_){if(value.length>=this.options.minChars){this.active_=true;this.lastProcessedValue_=value;this.fetchData(value);}}};$.Autocompleter.prototype.fetchData=function(value){if(this.options.data){this.filterAndShowResults(this.options.data,value);}else{var self=this;this.fetchRemoteData(value,function(remoteData){self.filterAndShowResults(remoteData,value);});}};$.Autocompleter.prototype.fetchRemoteData=function(filter,callback){var data=this.cacheRead(filter);if(data){callback(data);}else{var self=this;this.dom.$elem.addClass(this.options.loadingClass);var ajaxCallback=function(data){var parsed=false;if(data!==false){parsed=self.parseRemoteData(data);self.cacheWrite(filter,parsed);}self.dom.$elem.removeClass(self.options.loadingClass);callback(parsed);};$.ajax({url:this.makeUrl(filter),success:ajaxCallback,error:function(){ajaxCallback(false);}});}};$.Autocompleter.prototype.setExtraParam=function(name,value){var index=$.trim(String(name));if(index){if(!this.options.extraParams){this.options.extraParams={};}if(this.options.extraParams[index]!==value){this.options.extraParams[index]=value;this.cacheFlush();}}};$.Autocompleter.prototype.makeUrl=function(param){var self=this;var paramName=this.options.paramName||'q';var url=this.options.url;var params=$.extend({},this.options.extraParams);if(this.options.paramName===false){url+=encodeURIComponent(param);}else{params[paramName]=param;}var urlAppend=[];$.each(params,function(index,value){urlAppend.push(self.makeUrlParam(index,value));});if(urlAppend.length){url+=url.indexOf('?')==-1?'?':'&';url+=urlAppend.join('&');}return url;};$.Autocompleter.prototype.makeUrlParam=function(name,value){return String(name)+'='+encodeURIComponent(value);};$.Autocompleter.prototype.parseRemoteData=function(remoteData){var results=[];var text=String(remoteData).replace('\r\n','\n');var i,j,data,line,lines=text.split('\n');var value;for(i=0;i<lines.length;i++){line=lines[i].split('|');data=[];for(j=0;j<line.length;j++){data.push(unescape(line[j]));}value=data.shift();results.push({value:unescape(value),data:data});}return results;};$.Autocompleter.prototype.filterAndShowResults=function(results,filter){this.showResults(this.filterResults(results,filter),filter);};$.Autocompleter.prototype.filterResults=function(results,filter){var filtered=[];var value,data,i,result,type,include;var regex,pattern,attributes='';var specials=new RegExp("[.*+?|()\\[\\]{}\\\\]","g");for(i=0;i<results.length;i++){result=results[i];type=typeof result;if(type==='string'){value=result;data={};}else if($.isArray(result)){value=result[0];data=result.slice(1);}else if(type==='object'){value=result.value;data=result.data;}value=String(value);if(value>''){if(typeof data!=='object'){data={};}include=!this.options.filterResults;if(!include){pattern=String(filter);pattern=pattern.replace(specials,'\\$&');if(!this.options.matchInside){pattern='^'+pattern;}if(!this.options.matchCase){attributes='i';}regex=new RegExp(pattern,attributes);include=regex.test(value);}if(include){filtered.push({value:value,data:data});}}}if(this.options.sortResults){filtered=this.sortResults(filtered,filter);}if(this.options.maxItemsToShow>0&&this.options.maxItemsToShow<filtered.length){filtered.length=this.options.maxItemsToShow;}return filtered;};$.Autocompleter.prototype.sortResults=function(results,filter){var self=this;var sortFunction=this.options.sortFunction;if(!$.isFunction(sortFunction)){sortFunction=function(a,b,f){return self.sortValueAlpha(a,b,f);};}results.sort(function(a,b){return sortFunction(a,b,filter);});return results;};$.Autocompleter.prototype.sortValueAlpha=function(a,b,filter){a=String(a.value);b=String(b.value);if(!this.options.matchCase){a=a.toLowerCase();b=b.toLowerCase();}if(a>b){return 1;}if(a<b){return-1;}return 0;};$.Autocompleter.prototype.showResults=function(results,filter){var self=this;var $ul=$('<ul></ul>');var i,result,$li,extraWidth,first=false,$first=false;var numResults=results.length;for(i=0;i<numResults;i++){result=results[i];$li=$('<li>'+this.showResult(result.value,result.data)+'</li>');$li.data('value',result.value);$li.data('data',result.data);$li.click(function(){var $this=$(this);self.selectItem($this);}).mousedown(function(){self.finishOnBlur_=false;}).mouseup(function(){self.finishOnBlur_=true;});$ul.append($li);if(first===false){first=String(result.value);$first=$li;$li.addClass(this.options.firstItemClass);}if(i==numResults-1){$li.addClass(this.options.lastItemClass);}}this.position();this.dom.$results.html($ul).show();extraWidth=this.dom.$results.outerWidth()-this.dom.$results.width();this.dom.$results.width(this.dom.$elem.outerWidth()-extraWidth);$('li',this.dom.$results).hover(function(){self.focusItem(this);},function(){});if(this.autoFill(first,filter)){this.focusItem($first);}};$.Autocompleter.prototype.showResult=function(value,data){if($.isFunction(this.options.showResult)){return this.options.showResult(value,data);}else{return value;}};$.Autocompleter.prototype.autoFill=function(value,filter){var lcValue,lcFilter,valueLength,filterLength;if(this.options.autoFill&&this.lastKeyPressed_!=8){lcValue=String(value).toLowerCase();lcFilter=String(filter).toLowerCase();valueLength=value.length;filterLength=filter.length;if(lcValue.substr(0,filterLength)===lcFilter){this.dom.$elem.val(value);this.selectRange(filterLength,valueLength);return true;}}return false;};$.Autocompleter.prototype.focusNext=function(){this.focusMove(+1);};$.Autocompleter.prototype.focusPrev=function(){this.focusMove(-1);};$.Autocompleter.prototype.focusMove=function(modifier){var i,$items=$('li',this.dom.$results);modifier=parseInt(modifier,10);for(var i=0;i<$items.length;i++){if($($items[i]).hasClass(this.selectClass_)){this.focusItem(i+modifier);return;}}this.focusItem(0);};$.Autocompleter.prototype.focusItem=function(item){var $item,$items=$('li',this.dom.$results);if($items.length){$items.removeClass(this.selectClass_).removeClass(this.options.selectClass);if(typeof item==='number'){item=parseInt(item,10);if(item<0){item=0;}else if(item>=$items.length){item=$items.length-1;}$item=$($items[item]);}else{$item=$(item);}if($item){$item.addClass(this.selectClass_).addClass(this.options.selectClass);}}};$.Autocompleter.prototype.selectCurrent=function(){var $item=$('li.'+this.selectClass_,this.dom.$results);if($item.length==1){this.selectItem($item);}else{this.finish();}};$.Autocompleter.prototype.selectItem=function($li){var value=$li.data('value');var data=$li.data('data');var displayValue=this.displayValue(value,data);this.lastProcessedValue_=displayValue;this.lastSelectedValue_=displayValue;this.dom.$elem.val(displayValue).focus();this.setCaret(displayValue.length);this.callHook('onItemSelect',{value:value,data:data});this.finish();};$.Autocompleter.prototype.displayValue=function(value,data){if($.isFunction(this.options.displayValue)){return this.options.displayValue(value,data);}else{return value;}};$.Autocompleter.prototype.finish=function(){if(this.keyTimeout_){clearTimeout(this.keyTimeout_);}if(this.dom.$elem.val()!==this.lastSelectedValue_){if(this.options.mustMatch){this.dom.$elem.val('');}this.callHook('onNoMatch');}this.dom.$results.hide();this.lastKeyPressed_=null;this.lastProcessedValue_=null;if(this.active_){this.callHook('onFinish');}this.active_=false;};$.Autocompleter.prototype.selectRange=function(start,end){var input=this.dom.$elem.get(0);if(input.setSelectionRange){input.focus();input.setSelectionRange(start,end);}else if(this.createTextRange){var range=this.createTextRange();range.collapse(true);range.moveEnd('character',end);range.moveStart('character',start);range.select();}};$.Autocompleter.prototype.setCaret=function(pos){this.selectRange(pos,pos);};$.fn.autocomplete=function(options){if(typeof options==='string'){options={url:options};}var o=$.extend({},$.fn.autocomplete.defaults,options);return this.each(function(){var $this=$(this);var ac=new $.Autocompleter($this,o);$this.data('autocompleter',ac);});};$.fn.autocomplete.defaults={paramName:'q',minChars:1,loadingClass:'acLoading',resultsClass:'acResults',inputClass:'acInput',selectClass:'acSelect',mustMatch:false,matchCase:false,matchInside:true,matchSubset:true,useCache:true,maxCacheLength:10,autoFill:false,filterResults:true,sortResults:true,sortFunction:false,onItemSelect:false,onNoMatch:false,maxItemsToShow:-1};})(jQuery);

// sort
(function(b){b.tinysort={id:"TinySort",version:"1.0.5",copyright:"Copyright (c) 2008-2011 Ron Valstar",uri:"http://tinysort.sjeiti.com/",defaults:{order:"asc",attr:"",place:"start",returns:false,useVal:false}};b.fn.extend({tinysort:function(h,j){if(h&&typeof(h)!="string"){j=h;h=null}var e=b.extend({},b.tinysort.defaults,j);var p={};this.each(function(t){var v=(!h||h=="")?b(this):b(this).find(h);var u=e.order=="rand"?""+Math.random():(e.attr==""?(e.useVal?v.val():v.text()):v.attr(e.attr));var s=b(this).parent();if(!p[s]){p[s]={s:[],n:[]}}if(v.length>0){p[s].s.push({s:u,e:b(this),n:t})}else{p[s].n.push({e:b(this),n:t})}});for(var g in p){var d=p[g];d.s.sort(function k(t,s){var i=t.s.toLowerCase?t.s.toLowerCase():t.s;var u=s.s.toLowerCase?s.s.toLowerCase():s.s;if(c(t.s)&&c(s.s)){i=parseFloat(t.s);u=parseFloat(s.s)}return(e.order=="asc"?1:-1)*(i<u?-1:(i>u?1:0))})}var m=[];for(var g in p){var d=p[g];var n=[];var f=b(this).length;switch(e.place){case"first":b.each(d.s,function(s,t){f=Math.min(f,t.n)});break;case"org":b.each(d.s,function(s,t){n.push(t.n)});break;case"end":f=d.n.length;break;default:f=0}var q=[0,0];for(var l=0;l<b(this).length;l++){var o=l>=f&&l<f+d.s.length;if(a(n,l)){o=true}var r=(o?d.s:d.n)[q[o?0:1]].e;r.parent().append(r);if(o||!e.returns){m.push(r.get(0))}q[o?0:1]++}}return this.pushStack(m)}});function c(e){var d=/^\s*?[\+-]?(\d*\.?\d*?)\s*?$/.exec(e);return d&&d.length>0?d[1]:false}function a(e,f){var d=false;b.each(e,function(h,g){if(!d){d=g==f}});return d}b.fn.TinySort=b.fn.Tinysort=b.fn.tsort=b.fn.tinysort})(jQuery);


function printIframe(id)
{
    var iframe = document.frames ? document.frames[id] : document.getElementById(id);
    var ifWin = iframe.contentWindow || iframe;
    ifWin.focus();
    ifWin.print();
    return false;
}
function jw(url)
{
		jwplayer("jw").setup({
			flashplayer: "/jwplayer/player.swf",
			file: url.split("|")[0],
			duration: 'invalid',
			width: 480,
			height: 270,
			plugins: 'adtvideo',
			'adtvideo.config': '/jwplayer/preroll.php?url=' + url.split("|")[1]
		});	
}

$(document).ready(function() {

	$.localScroll();
	
	
	$(".c_but_pdf").live("click",function()
	{
		_gat._getTrackerByName()._trackEvent('pdfknop', document.location.href.substr(23,100));
	});
	
	$(".c_but_print").live("click",function()
	{
		_gat._getTrackerByName()._trackEvent('printknop', document.location.href.substr(23,100));
		if ($(this).parent().parent()[0].id == "fancybox-inner")
		{
			document.location.href = '/'+ $(this).parent().parent().children("h1")[0].className + '#doprint';
			return false;

		}
		else
		{
			window.print();
			return false;
		}
	});
	
	$("#zoekbut").click(function()
	{
		$("#zoekform").submit();
		return false;
	});
	
	$(".searchbutton").click(function()
	{
		$("#zoekzoek").submit();
		return false;
	});	
	
	$("#body_24884 .hover, #body_207 .hover, #body_220 .hover, .zoekresult .hover, .body_24038 .hover, .newsblock, .body_212 .hover, .body_286 .hover, .boek, .bl_home, .body_210 .hover, .body_18880 .hover, .body_15181 .hover, .body_15182 .hover, #rkol .hover").live("click", function()
	{
		document.location.href = $("a", this)[0].href;
		return false;
	});	
	
	$('.woord').bt(
	{
		ajaxPath: ["$(this).attr('href')", 'div#woord'],
		ajaxCache: false,
	  	fill: 'rgba(242, 242, 255, .95)', 
	  	strokeStyle: '#B7B7B7', 
	  	spikeLength: 20, 
	  	spikeGirth: 10, 
	  	padding: 10, 
	  	cornerRadius: 4, 
	  	cssStyles: { fontFamily: '"lucida grande",tahoma,verdana,arial,sans-serif', fontSize: '11px' }
	});
	$('.woord').click(function(){return false;});	

	$(".fancy").click(function()
	{
		$("#fancybox-inner").css({'font-size':'10pt','margin':'10px'});
		var theid = this.hash;
		$.fancybox({
				'href': $(this)[0].href,
	        	'type': 'ajax', 
	        	'ajax': { 
	        		dataFilter: function(data) 
	        		{ 
	                	var fakeBody = $(data);  // <----  fakeBody is a context which can now be used to manipulate the context 
	                	if (theid)
	                	{
	                		fakeBody = $(theid, fakeBody); // <---- extract the part you want from fakeBody and assign it back to fakeBody 
                		}
	                	return(fakeBody);  // <---- FancyBox will only display this part in the lightbox 	
	            	}
	        	},
				'padding'		: 10,
				'autoScale'		: true,
				'transitionIn'	: 'elastic',
				'transitionOut'	: 'elastic',
				'width'		: 650,
				'height'	: '95%',
				 'autoDimensions':false 
		
		});
		return false;
	});
	
	
	
	$(".body_389 .hover, .body_14332 .list_1 li").click(function() {
		$("#fancybox-inner").css({'font-size':'10pt','margin':'10px'});
	
		$.fancybox({
				'href': $("a", this)[0].href,
	        	'type': 'ajax', 
	        	'ajax': { 
	        		dataFilter: function(data) 
	        		{ 
	                	var fakeBody = $(data);  // <----  fakeBody is a context which can now be used to manipulate the context 
	                	fakeBody = $('#vraag, h1, .c_but', fakeBody); // <---- extract the part you want from fakeBody and assign it back to fakeBody 
	                	
	                	return(fakeBody);  // <---- FancyBox will only display this part in the lightbox 	
	            	}
	        	},
				'padding'		: 10,
				'autoScale'		: false,
				'transitionIn'	: 'elastic',
				'transitionOut'	: 'elastic',
				'width'		: 650,
				'height'	: '95%',
				 'autoDimensions':false,
				onComplete: function(){gapi.plusone.go("vraag2");}
				
				
				
			});
	
		return false;
	});	
	
	$(".bl_infotheek").click(function()
	{
		document.location.href = $("a", this)[0].href;
	});
	
	$(".hero").click(function()
	{
		document.location.href = '/infotheek';	
		
	});
	
	$("#body_24884 .hover").click(function() {
		$("#fancybox-inner").css({'font-size':'10pt','margin':'10px'});
	
		$.fancybox({
				'href': $("a", this)[0].href,
	        	'type': 'ajax', 
	        	'ajax': { 
	        		dataFilter: function(data) 
	        		{ 
	                	var fakeBody = $(data);  // <----  fakeBody is a context which can now be used to manipulate the context 
	                	fakeBody = $('#vraag, h1', fakeBody); // <---- extract the part you want from fakeBody and assign it back to fakeBody 
	                	return(fakeBody);  // <---- FancyBox will only display this part in the lightbox 	
	            	}
	        	},
				'padding'		: 10,
				'autoScale'		: false,
				'transitionIn'	: 'elastic',
				'transitionOut'	: 'elastic',
				'width'		: 650,
				'height'	: '95%',
				'autoDimensions':false,
				onComplete: function(){gapi.plusone.go("vraag");do_reacties();}
				
				
				
			});
	
		return false;
	});		

	
	$("#ggroot").click(function()
	{
		$.fancybox({'type':'iframe','href':this.href,'width':'100%','height':'100%','padding':0});
		return false;
	});
	
	$(".smallvideo a").click(function() {
		$("#fancybox-close").css({'position':'absolute','top':'-10px', 'right':'-33px'});
/*
		$.fancybox({
				'padding'		: 10,
				'autoScale'		: false,
				'transitionIn'	: 'elastic',
				'transitionOut'	: 'elastic',
	//			'title'			: 'test',
				'width'		: 680,
				'height'		: 413,
				'href'			: this.href.replace(new RegExp("watch\\?v=", "i"), 'v/'),
				'type'			: 'swf',
				'swf'			: {
					'allowfullscreen'	: 'true'
				}
				
				*/
				
		$.fancybox({
				'padding'		: 0,
				'autoScale'		: false,
				'transitionIn'	: 'elastic',
				'transitionOut'	: 'elastic',
	//			'title'			: 'test',
				'width'		: 680,
				'height'		: 407,			
				'href'			: '/jwplayer/player.swf?file='+escape(this.href).split("|")[0]+'&autostart=1' +
								  '&plugins=adtvideo&adtvideo.config=/jwplayer/preroll.php?url=' + this.href.split("|")[1],
				'type'			: 'swf',
				'swf'			: {
					'wmode':'transparent',
					'allowfullscreen'	: 'true'
				}
				
				
	 	//jw('vraag',"http://www.youtube.com/watch?v=glsn5jbbS0w&version=3&rel=0&showinfo=0&hd=1&autoplay=1&modestbranding=1");
				
				
			});
	
		return false;
	});	

	
	function wrap(elements, wrap, size) 
	{
	  var x, i = 0, c = -1, l = elements.length, n = [];
	  for(i; i < l; i++)
	  {
	    (x = i % size) ? n[c][x] = elements[i] : n[++c] = [elements[i]];
	  }
	  l = n.length;
	  for(i = 0; i < l; i++) 
	  {
	    $(n[i]).wrapAll(wrap);
	  }
	}	

// video browser
 	var vbreedte = 230;
 	var vaant = 4;
 	$("#meervids .hover").wrapAll('<div id="vidouter"></div>');
 	$("#meervids .hover").wrapAll('<div id="vidinner"></div>');
    $("#vidinner .hover").css({"width":vbreedte + "px"});
    wrap($('#vidinner .hover'), '<div class="pagegroup"></div>', vaant);
	$("#vidouter").css({"width":vbreedte + "px","height":$("#vidinner .pagegroup").height()});

	$(".goleft").click(function(){vpage(vidpage+1);return false;});
	$(".goright").click(function(){vpage(vidpage-1);return false;});	
	
	function vpage(i)
	{
		if (i >= 0 && i < $("#vidinner .hover").length/vaant)
		{
			vidpage = i;
			$("#vidinner").animate(
			{
				left: i*-1*vbreedte
			
			}, 300, function(){vcount()});
		}
	}
	function vcount()
	{
		if ($("#vidinner .hover").length > vaant)
		{
			$(".goright").css({'visibility':'visible'});
			$(".goleft").css({'visibility':'visible'});
			$(".vcount").css({'visibility':'visible'});
	
			var page = ($("#vidinner").position().left)/(-1 * vbreedte);
			$(".vcount").html(((page * vaant) + 1) + '-' + ($(".pagegroup:eq(" + page + ") .hover").length + (vaant*page)) + ' uit '+ $("#vidinner .hover").length);	
			if (page == 0)
			{
				$(".goright").css({'visibility':'hidden'});
			}
			if ($("#vidinner .hover").length < ((page+1)*vaant + 1))
			{
				$(".goleft").css({'visibility':'hidden'});
			}
		}
		else
		{
			$(".goright").parent().parent().parent().parent().next().remove();
			$(".goright").parent().parent().parent().remove();	
		}
	}
	var vidpage = Math.floor($(".hover").index($(".active"))/vaant);
	vpage(vidpage);
	
	$(".videoimg").click(function()
	{
		document.location.href = $("a", this)[0].href;
		return false;
	});
	
	$("a").each(function()
	{
		if(!$(this).parent().hasClass('kort') &&!$(this).parent().hasClass('jhyves') && !$(this).parent().hasClass('colbanner') && !$(this).parent().parent().hasClass('sites') && this.href.indexOf('dev.uitvaart.nl') == -1 && (this.href.indexOf('www.uitvaart.nl') == -1) && this.href.indexOf('youtube') == -1)
		{
			$(this).addClass('extern');
			$(this).click(function()
			{
				if ($(".body_15183")[0])
				{
					_gat._getTrackerByName()._trackEvent('clickoutbedrijf', this.href.substr(7,100));
				}
				else
				{			
					_gat._getTrackerByName()._trackEvent('clickouts', this.href.substr(7,100));
				}
			});
		}
	});
	
	$("#body_156 .bl_infotheek h3").click(function()
	{
		_gat._getTrackerByName()._trackEvent('infotheek_titel_klik', this.parentNode.href.substr(33,100));
	});

	$("#topbanner a").live("click", function()
	{
		_gat._getTrackerByName()._trackEvent('topbanner', $(this).attr('href').substr(7,100));
		return true;	
	});
	
	$(".a_small, .a_middle, .a_big").click(function()
	{
		_gat._getTrackerByName()._trackEvent('fontsize_change', $(this).attr('className').substr(2));
		return true;	
	});
	
	$("#pmeerlink").click(function()
	{
		_gat._getTrackerByName()._trackEvent('advies_meer_vragen_tonen', document.location.href.substr(23));
	});
	
	
	

	$("#oldirectehulp div, #oldirectehulp span").css({'display':'none'});
	$("#oldirectehulp li, #oldirectehulp blockquote").css({'cursor':'pointer'});
	$("#oldirectehulp li, #oldirectehulp blockquote").click(function()
	{
		$("div, span", this).toggle('fast');
		$(".but_next", this).toggle();
	});
	
	if (window.location.hash && window.location.hash.indexOf('agenda') != -1)
	{
		$(window.location.hash + " span").show('fast');
		$(window).scrollTo(window.location.hash);
		$(window.location.hash + " .but_next").toggle();
		return true;
	}
	
	if (document.location.hash && document.location.hash.indexOf('doprint') != -1)
	{
		window.print();
	}	
	
	$("#bplaats").autocomplete("/includes/inc_autosuggest.php?f=plaats");
	$("#bzoek").autocomplete({ 
		url: '/includes/inc_autosuggest.php?f=naam', 
		minChars: 2, 
		matchInside: true

	});

	if ($("#gmap")[0])
	{
		initialize();
	}

	if ($.cookie('zl'))
	{
		$("body").css({'font-size':$.cookie('zl')+'%'});
	}
	
	$("#topbanner").load("/includes/inc_topbanner.php?id=" + document.body.id.substr(5, document.body.id.length), function(responseText)
	{
		if (responseText.length > 5)
		{
			$(this).fadeIn();
		}
	});
	
	// rating	
	$(".rate .but").click(function()
	{
		//$(".rate .but").removeClass("active");
		//$(this).addClass("active");
		$("#rating").val($(".rate .but").index(this));
		//$("#realrate").css('width','0px');
		//$("#realrate").css('width',($(".rate .but").index(this))* 22 + 'px');		
		
	});
	
	$(".rate").hover(function()
	{
		$("#realrate").css('width','0px');
	},
	function()
	{
		$("#realrate").css('width',((1*$("#rating").val()+ 1)* 22) + 'px');
	});
	
	$(".rate .but").hover(function()
	{
		$("#realrate").css('width',22* $(".rate .but").index(this) + 'px');
			
	},
	function()
	{	
		$("#realrate").css('width','0px');
	});
	$("#geholpen").click(function()
	{
		if ($(".input_react").val() == $(".input_react").attr('title'))
		{
			$(".input_react").val('');
		}
		if ($(".input_react").val() != "" || $("#rating").val() > -1)
		{
			_gat._getTrackerByName()._trackEvent('rating', document.location.href.substr(23,100),'' + ($(".input_react").val() != ""),1 + parseInt($("#rating").val()));
			$("#heeftgeholpen").load("/includes/inc_bl_geholpen.php?" + $("#heeftgeholpen form").serialize());
		}
		else
		{
			$(".input_react").val($(".input_react").attr('title'));
		}
		return false;			
		
	});
	
	if ($(".input_react")[0])
	{
		$(".input_react").val($(".input_react").attr('title')).css('color', '#AAA');
	}
	
	if ($("#search")[0])
	{
		$("#search").val($("#search").attr('title')).css('color', '#AAA');
	}
		
	$(".input_react, #search").click(function()
	{
		if ($(this).attr('title') == $(this).val()  || $(this).val() == "")
		{	
			$(this).val('');
			$(this).css('color', '#202020');
		}
	});
		
	$(".input_react, #search").blur(function()
	{
		if ($(this).attr('title') == $(this).val() || $(this).val() == "")
		{
			$(this).val($(this).attr('title'));
			$(this).css('color', '#AAA');
		}
	});	
	
	// zoek
	$(".zoekresult").each(function()
	{
		$(this).load("/includes/inc_search.php?f=" + escape($(this).html()));
		$(this).html('<span style=\"color:#aaa;font-style:italic\">zoeken in ' + $(this).html().split('||')[0]+ ' naar <b>' + $(this).html().split('||')[1]+ '</b></span> <img src="/images/ajax.gif" />').show();;
	});
	
	$(".sites a").click(function()
	{
		window.open(this.href);
		return false;
	});
	
	// hero
	function swap_hero()
	{
		var maxswap = 4;
		var curher = parseInt($(".hero img").attr('src').substr(15,1));
		if (curher < maxswap)
		{
			newher = curher + 1;
		}
		else 
		{
			newher = 1;
		}
		$("#herotmp img").remove();
		$("#herotmp").html('<img src="' + $(".hero img").attr('src').replace(curher, newher) + '" />');
		$("#herotmp").fadeIn(2500, function()
		{
			$(".hero img").attr('src', $("#herotmp img").attr('src')); 
			$("#herotmp").hide('slow');
			setTimeout(function(){swap_hero()}, 9000);
		});
	}
	if ($("#body_154")[0])
	{
		setTimeout(function(){swap_hero()}, 9000);
	}
	
	$("#psubmit").click(function(){$("#steleenvraag").submit();return false;});
	$("#steleenvraag").submit(function()
	{
		var isok = true;	
		if ($("#pnaam").val().length < 3 || $("#pnaam").val() == $("#pnaam")[0].title)
		{
			$("#pnaam").css({'background-color':'#FFDDDD'});
			isok = false;
		}
		else
		{
			$("#pnaam").css({'background-color':'transparent'});
		}			

		if ($("#psubject").val().length < 2 || $("#psubject").val() == $("#psubject")[0].title)
		{
			$("#psubject").css({'background-color':'#FFDDDD'});
			isok = false;
		}
		else
		{
			$("#psubject").css({'background-color':'transparent'});
		}			
		var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
		if (!reg.test($("#peml").val()))		
		{
			$("#peml").css({'background-color':'#FFDDDD'});
			isok = false;
		}
		else
		{
			$("#peml").css({'background-color':'transparent'});
		}

		if ($("#pvraag").val().length < 20 || $("#pvraag").val() == $("#pvraag")[0].title)
		{
			$("#pvraag").css({'background-color':'#FFDDDD'});
			isok = false;
		}
		else
		{
			$("#pvraag").css({'background-color':'transparent'});
		}	
		
		if (isok)
		{
			$.post("/includes/inc_bl_stel_een_vraag.php", $("#steleenvraag").serialize(),function(data) 
			{
     			$("#err").html(data);
   			});
		
		}					
		return false;
	});
	
	$("#steleenvraag input[type=text], #steleenvraag textarea").each(function()
	{
		if (this.title != "")
		{
			$(this).val(this.title);
			$(this).css({'font-weight':'bold','color': '#AAA', 'font-style':'italic'});
			$(this).focus(function()
			{
				if ($(this).val() == this.title)
				{
					$(this).val('').css({'font-weight':'normal','color': '#222', 'font-style':'normal'});;
				}
				
			});
			$(this).blur(function()
			{
				if ($(this).val() == '')
				{
					$(this).val(this.title).css({'font-weight':'bold','color': '#AAA', 'font-style':'italic'});;
				}	
			});
		}	
		
	});
	
	
	
	$("#ketak").submit(function()
	{
		var isok = true;	
		if ($("#cpersoon").val().length < 3)
		{
			$("#cpersoon").css({'background-color':'#FFDDDD'});
			isok = false;
		}
		else
		{
			$("#cpersoon").css({'background-color':'transparent'});
		}			
		
		
		if ($("#ctxt").val().indexOf("http://") != -1)
		{
			$("#ctxt").css({'background-color':'#FFDDDD'});
			isok = false;
		}
		else
		{
			$("#ctxt").css({'background-color':'transparent'});
		}	
		var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
		if (!reg.test($("#ceml").val()))		
		{
			$("#ceml").css({'background-color':'#FFDDDD'});
			isok = false;
		}
		else
		{
			$("#ceml").css({'background-color':'transparent'});
		}
	
		if (isok)
		{
			$.post("/includes/inc_contact.php", $("#ketak").serialize(),function(data) 
			{
     			$("#err").html(data);
   			});			
			
		}					
		return false;
	});	
	
	$(".meer").live("click", function()
	{
		$("." + this.id).slideDown('normal');
		$(this).remove();
		return false;
	});

	$("#pmeerlink").click(function()
	{
		$("#pmeer").slideDown('normal');
		$(this).remove();
		return false;
	});
	
	function do_reacties()
	{
		$("#reactie").show();
		$("#pmeer").hide();
		$("#rsubmit").click(function(){$("#reactie").submit();return false;});
		$("#reactie").submit(function()
		{
			var isok = true;	
			if ($("#rnaam").val().length < 3 || $("#rnaam").val() == $("#rnaam")[0].title)
			{
				$("#rnaam").css({'background-color':'#FFDDDD'});
				isok = false;
			}
			else
			{
				$("#rnaam").css({'background-color':'transparent'});
			}			
			
			var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
			if (!reg.test($("#reml").val()))		
			{
				$("#reml").css({'background-color':'#FFDDDD'});
				isok = false;
			}
			else
			{
				$("#reml").css({'background-color':'transparent'});
			}
	
			if ($("#rtxt").val().length < 20 || $("#rtxt").val() == $("#rtxt")[0].title)
			{
				$("#rtxt").css({'background-color':'#FFDDDD'});
				isok = false;
			}
			else
			{
				$("#rtxt").css({'background-color':'transparent'});
			
			}	
			
			if (isok)
			{
				$("#err").load("/includes/inc_bl_reactie.php?f=" + escape($("#reactie").serialize().replace("'","`")));
			}					
			return false;
		});	
	}
	do_reacties();
	
	
	$("#sug").click(function()
	{
		$(".suga").toggle();
	});
	$(".suga").hide();

	if ($("#jw")[0])
	{
		jw($("#jw").html());
	}
	
	gapi.plusone.go("body");
	
	$("#submenu1 .cclosed ul").hide();
	$("#submenu1 span").css({'cursor':'pointer'});
	$("#submenu1 span").toggle(
		function()
		{
			$(this).parent().children("ul").show("normal");
			$("img",this).attr('src', '/images/open.gif');
		},
		function()
		{
			$(this).parent().children("ul").hide("fast");
			$("img", this).attr('src', '/images/closed.gif');
		}
	);
	
	
	$("#rkol .kort").click(function()
	{
		document.location.href = $("a", this).attr('href');
	});
	
	
	$("a.ba_foto").fancybox();
});      

