jQuery.effects||function(f){function k(c){var a;
if(c&&c.constructor==Array&&c.length==3){return c
}if(a=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(c)){return[parseInt(a[1],10),parseInt(a[2],10),parseInt(a[3],10)]
}if(a=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(c)){return[parseFloat(a[1])*2.55,parseFloat(a[2])*2.55,parseFloat(a[3])*2.55]
}if(a=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(c)){return[parseInt(a[1],16),parseInt(a[2],16),parseInt(a[3],16)]
}if(a=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(c)){return[parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16),parseInt(a[3]+a[3],16)]
}if(/rgba\(0, 0, 0, 0\)/.exec(c)){return l.transparent
}return l[f.trim(c).toLowerCase()]
}function q(c,a){var b;
do{b=f.curCSS(c,a);
if(b!=""&&b!="transparent"||f.nodeName(c,"body")){break
}a="backgroundColor"
}while(c=c.parentNode);
return k(b)
}function m(){var c=document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle,a={},b,d;
if(c&&c.length&&c[0]&&c[c[0]]){for(var e=c.length;
e--;
){b=c[e];
if(typeof c[b]=="string"){d=b.replace(/\-(\w)/g,function(g,h){return h.toUpperCase()
});
a[d]=c[b]
}}}else{for(b in c){if(typeof c[b]==="string"){a[b]=c[b]
}}}return a
}function n(c){var a,b;
for(a in c){b=c[a];
if(b==null||f.isFunction(b)||a in r||/scrollbar/.test(a)||!/color/i.test(a)&&isNaN(parseFloat(b))){delete c[a]
}}return c
}function s(c,a){var b={_:0},d;
for(d in a){if(c[d]!=a[d]){b[d]=a[d]
}}return b
}function j(c,a,b,d){if(typeof c=="object"){d=a;
b=null;
a=c;
c=a.effect
}if(f.isFunction(a)){d=a;
b=null;
a={}
}if(f.isFunction(b)){d=b;
b=null
}if(typeof a=="number"||f.fx.speeds[a]){d=b;
b=a;
a={}
}a=a||{};
b=b||a.duration;
b=f.fx.off?0:typeof b=="number"?b:f.fx.speeds[b]||f.fx.speeds._default;
d=d||a.complete;
return[c,a,b,d]
}f.effects={};
f.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor","borderTopColor","color","outlineColor"],function(c,a){f.fx.step[a]=function(b){if(!b.colorInit){b.start=q(b.elem,a);
b.end=k(b.end);
b.colorInit=true
}b.elem.style[a]="rgb("+Math.max(Math.min(parseInt(b.pos*(b.end[0]-b.start[0])+b.start[0],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[1]-b.start[1])+b.start[1],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[2]-b.start[2])+b.start[2],10),255),0)+")"
}
});
var l={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]},o=["add","remove","toggle"],r={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};
f.effects.animateClass=function(c,a,b,d){if(f.isFunction(b)){d=b;
b=null
}return this.each(function(){var e=f(this),g=e.attr("style")||" ",h=n(m.call(this)),p,t=e.attr("className");
f.each(o,function(u,i){c[i]&&e[i+"Class"](c[i])
});
p=n(m.call(this));
e.attr("className",t);
e.animate(s(h,p),a,b,function(){f.each(o,function(u,i){c[i]&&e[i+"Class"](c[i])
});
if(typeof e.attr("style")=="object"){e.attr("style").cssText="";
e.attr("style").cssText=g
}else{e.attr("style",g)
}d&&d.apply(this,arguments)
})
})
};
f.fn.extend({_addClass:f.fn.addClass,addClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{add:c},a,b,d]):this._addClass(c)
},_removeClass:f.fn.removeClass,removeClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{remove:c},a,b,d]):this._removeClass(c)
},_toggleClass:f.fn.toggleClass,toggleClass:function(c,a,b,d,e){return typeof a=="boolean"||a===undefined?b?f.effects.animateClass.apply(this,[a?{add:c}:{remove:c},b,d,e]):this._toggleClass(c,a):f.effects.animateClass.apply(this,[{toggle:c},a,b,d])
},switchClass:function(c,a,b,d,e){return f.effects.animateClass.apply(this,[{add:a,remove:c},b,d,e])
}});
f.extend(f.effects,{version:"1.8.1",save:function(c,a){for(var b=0;
b<a.length;
b++){a[b]!==null&&c.data("ec.storage."+a[b],c[0].style[a[b]])
}},restore:function(c,a){for(var b=0;
b<a.length;
b++){a[b]!==null&&c.css(a[b],c.data("ec.storage."+a[b]))
}},setMode:function(c,a){if(a=="toggle"){a=c.is(":hidden")?"show":"hide"
}return a
},getBaseline:function(c,a){var b;
switch(c[0]){case"top":b=0;
break;
case"middle":b=0.5;
break;
case"bottom":b=1;
break;
default:b=c[0]/a.height
}switch(c[1]){case"left":c=0;
break;
case"center":c=0.5;
break;
case"right":c=1;
break;
default:c=c[1]/a.width
}return{x:c,y:b}
},createWrapper:function(c){if(c.parent().is(".ui-effects-wrapper")){return c.parent()
}var a={width:c.outerWidth(true),height:c.outerHeight(true),"float":c.css("float")},b=f("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0});
c.wrap(b);
b=c.parent();
if(c.css("position")=="static"){b.css({position:"relative"});
c.css({position:"relative"})
}else{f.extend(a,{position:c.css("position"),zIndex:c.css("z-index")});
f.each(["top","left","bottom","right"],function(d,e){a[e]=c.css(e);
if(isNaN(parseInt(a[e],10))){a[e]="auto"
}});
c.css({position:"relative",top:0,left:0})
}return b.css(a).show()
},removeWrapper:function(c){if(c.parent().is(".ui-effects-wrapper")){return c.parent().replaceWith(c)
}return c
},setTransition:function(c,a,b,d){d=d||{};
f.each(a,function(e,g){unit=c.cssUnit(g);
if(unit[0]>0){d[g]=unit[0]*b+unit[1]
}});
return d
}});
f.fn.extend({effect:function(c){var a=j.apply(this,arguments);
a={options:a[1],duration:a[2],callback:a[3]};
var b=f.effects[c];
return b&&!f.fx.off?b.call(this,a):this
},_show:f.fn.show,show:function(c){if(!c||typeof c=="number"||f.fx.speeds[c]){return this._show.apply(this,arguments)
}else{var a=j.apply(this,arguments);
a[1].mode="show";
return this.effect.apply(this,a)
}},_hide:f.fn.hide,hide:function(c){if(!c||typeof c=="number"||f.fx.speeds[c]){return this._hide.apply(this,arguments)
}else{var a=j.apply(this,arguments);
a[1].mode="hide";
return this.effect.apply(this,a)
}},__toggle:f.fn.toggle,toggle:function(c){if(!c||typeof c=="number"||f.fx.speeds[c]||typeof c=="boolean"||f.isFunction(c)){return this.__toggle.apply(this,arguments)
}else{var a=j.apply(this,arguments);
a[1].mode="toggle";
return this.effect.apply(this,a)
}},cssUnit:function(c){var a=this.css(c),b=[];
f.each(["em","px","%","pt"],function(d,e){if(a.indexOf(e)>0){b=[parseFloat(a),e]
}});
return b
}});
f.easing.jswing=f.easing.swing;
f.extend(f.easing,{def:"easeOutQuad",swing:function(c,a,b,d,e){return f.easing[f.easing.def](c,a,b,d,e)
},easeInQuad:function(c,a,b,d,e){return d*(a/=e)*a+b
},easeOutQuad:function(c,a,b,d,e){return -d*(a/=e)*(a-2)+b
},easeInOutQuad:function(c,a,b,d,e){if((a/=e/2)<1){return d/2*a*a+b
}return -d/2*(--a*(a-2)-1)+b
},easeInCubic:function(c,a,b,d,e){return d*(a/=e)*a*a+b
},easeOutCubic:function(c,a,b,d,e){return d*((a=a/e-1)*a*a+1)+b
},easeInOutCubic:function(c,a,b,d,e){if((a/=e/2)<1){return d/2*a*a*a+b
}return d/2*((a-=2)*a*a+2)+b
},easeInQuart:function(c,a,b,d,e){return d*(a/=e)*a*a*a+b
},easeOutQuart:function(c,a,b,d,e){return -d*((a=a/e-1)*a*a*a-1)+b
},easeInOutQuart:function(c,a,b,d,e){if((a/=e/2)<1){return d/2*a*a*a*a+b
}return -d/2*((a-=2)*a*a*a-2)+b
},easeInQuint:function(c,a,b,d,e){return d*(a/=e)*a*a*a*a+b
},easeOutQuint:function(c,a,b,d,e){return d*((a=a/e-1)*a*a*a*a+1)+b
},easeInOutQuint:function(c,a,b,d,e){if((a/=e/2)<1){return d/2*a*a*a*a*a+b
}return d/2*((a-=2)*a*a*a*a+2)+b
},easeInSine:function(c,a,b,d,e){return -d*Math.cos(a/e*(Math.PI/2))+d+b
},easeOutSine:function(c,a,b,d,e){return d*Math.sin(a/e*(Math.PI/2))+b
},easeInOutSine:function(c,a,b,d,e){return -d/2*(Math.cos(Math.PI*a/e)-1)+b
},easeInExpo:function(c,a,b,d,e){return a==0?b:d*Math.pow(2,10*(a/e-1))+b
},easeOutExpo:function(c,a,b,d,e){return a==e?b+d:d*(-Math.pow(2,-10*a/e)+1)+b
},easeInOutExpo:function(c,a,b,d,e){if(a==0){return b
}if(a==e){return b+d
}if((a/=e/2)<1){return d/2*Math.pow(2,10*(a-1))+b
}return d/2*(-Math.pow(2,-10*--a)+2)+b
},easeInCirc:function(c,a,b,d,e){return -d*(Math.sqrt(1-(a/=e)*a)-1)+b
},easeOutCirc:function(c,a,b,d,e){return d*Math.sqrt(1-(a=a/e-1)*a)+b
},easeInOutCirc:function(c,a,b,d,e){if((a/=e/2)<1){return -d/2*(Math.sqrt(1-a*a)-1)+b
}return d/2*(Math.sqrt(1-(a-=2)*a)+1)+b
},easeInElastic:function(c,a,b,d,e){c=1.70158;
var g=0,h=d;
if(a==0){return b
}if((a/=e)==1){return b+d
}g||(g=e*0.3);
if(h<Math.abs(d)){h=d;
c=g/4
}else{c=g/(2*Math.PI)*Math.asin(d/h)
}return -(h*Math.pow(2,10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g))+b
},easeOutElastic:function(c,a,b,d,e){c=1.70158;
var g=0,h=d;
if(a==0){return b
}if((a/=e)==1){return b+d
}g||(g=e*0.3);
if(h<Math.abs(d)){h=d;
c=g/4
}else{c=g/(2*Math.PI)*Math.asin(d/h)
}return h*Math.pow(2,-10*a)*Math.sin((a*e-c)*2*Math.PI/g)+d+b
},easeInOutElastic:function(c,a,b,d,e){c=1.70158;
var g=0,h=d;
if(a==0){return b
}if((a/=e/2)==2){return b+d
}g||(g=e*0.3*1.5);
if(h<Math.abs(d)){h=d;
c=g/4
}else{c=g/(2*Math.PI)*Math.asin(d/h)
}if(a<1){return -0.5*h*Math.pow(2,10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g)+b
}return h*Math.pow(2,-10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g)*0.5+d+b
},easeInBack:function(c,a,b,d,e,g){if(g==undefined){g=1.70158
}return d*(a/=e)*a*((g+1)*a-g)+b
},easeOutBack:function(c,a,b,d,e,g){if(g==undefined){g=1.70158
}return d*((a=a/e-1)*a*((g+1)*a+g)+1)+b
},easeInOutBack:function(c,a,b,d,e,g){if(g==undefined){g=1.70158
}if((a/=e/2)<1){return d/2*a*a*(((g*=1.525)+1)*a-g)+b
}return d/2*((a-=2)*a*(((g*=1.525)+1)*a+g)+2)+b
},easeInBounce:function(c,a,b,d,e){return d-f.easing.easeOutBounce(c,e-a,0,d,e)+b
},easeOutBounce:function(c,a,b,d,e){return(a/=e)<1/2.75?d*7.5625*a*a+b:a<2/2.75?d*(7.5625*(a-=1.5/2.75)*a+0.75)+b:a<2.5/2.75?d*(7.5625*(a-=2.25/2.75)*a+0.9375)+b:d*(7.5625*(a-=2.625/2.75)*a+0.984375)+b
},easeInOutBounce:function(c,a,b,d,e){if(a<e/2){return f.easing.easeInBounce(c,a*2,0,d,e)*0.5+b
}return f.easing.easeOutBounce(c,a*2-e,0,d,e)*0.5+d*0.5+b
}})
}(jQuery);
(function(b){b.effects.blind=function(c){return this.queue(function(){var a=b(this),g=["position","top","left"],f=b.effects.setMode(a,c.options.mode||"hide"),d=c.options.direction||"vertical";
b.effects.save(a,g);
a.show();
var e=b.effects.createWrapper(a).css({overflow:"hidden"}),h=d=="vertical"?"height":"width";
d=d=="vertical"?e.height():e.width();
f=="show"&&e.css(h,0);
var i={};
i[h]=f=="show"?d:0;
e.animate(i,c.duration,c.options.easing,function(){f=="hide"&&a.hide();
b.effects.restore(a,g);
b.effects.removeWrapper(a);
c.callback&&c.callback.apply(a[0],arguments);
a.dequeue()
})
})
}
})(jQuery);
(function(b){b.effects.clip=function(e){return this.queue(function(){var a=b(this),i=["position","top","left","height","width"],f=b.effects.setMode(a,e.options.mode||"hide"),c=e.options.direction||"vertical";
b.effects.save(a,i);
a.show();
var d=b.effects.createWrapper(a).css({overflow:"hidden"});
d=a[0].tagName=="IMG"?d:a;
var g={size:c=="vertical"?"height":"width",position:c=="vertical"?"top":"left"};
c=c=="vertical"?d.height():d.width();
if(f=="show"){d.css(g.size,0);
d.css(g.position,c/2)
}var h={};
h[g.size]=f=="show"?c:0;
h[g.position]=f=="show"?0:c/2;
d.animate(h,{queue:false,duration:e.duration,easing:e.options.easing,complete:function(){f=="hide"&&a.hide();
b.effects.restore(a,i);
b.effects.removeWrapper(a);
e.callback&&e.callback.apply(a[0],arguments);
a.dequeue()
}})
})
}
})(jQuery);
(function(c){c.effects.drop=function(d){return this.queue(function(){var a=c(this),h=["position","top","left","opacity"],e=c.effects.setMode(a,d.options.mode||"hide"),b=d.options.direction||"left";
c.effects.save(a,h);
a.show();
c.effects.createWrapper(a);
var f=b=="up"||b=="down"?"top":"left";
b=b=="up"||b=="left"?"pos":"neg";
var g=d.options.distance||(f=="top"?a.outerHeight({margin:true})/2:a.outerWidth({margin:true})/2);
if(e=="show"){a.css("opacity",0).css(f,b=="pos"?-g:g)
}var i={opacity:e=="show"?1:0};
i[f]=(e=="show"?b=="pos"?"+=":"-=":b=="pos"?"-=":"+=")+g;
a.animate(i,{queue:false,duration:d.duration,easing:d.options.easing,complete:function(){e=="hide"&&a.hide();
c.effects.restore(a,h);
c.effects.removeWrapper(a);
d.callback&&d.callback.apply(this,arguments);
a.dequeue()
}})
})
}
})(jQuery);
(function(b){b.effects.highlight=function(c){return this.queue(function(){var a=b(this),e=["backgroundImage","backgroundColor","opacity"],d=b.effects.setMode(a,c.options.mode||"show"),f={backgroundColor:a.css("backgroundColor")};
if(d=="hide"){f.opacity=0
}b.effects.save(a,e);
a.show().css({backgroundImage:"none",backgroundColor:c.options.color||"#ffff99"}).animate(f,{queue:false,duration:c.duration,easing:c.options.easing,complete:function(){d=="hide"&&a.hide();
b.effects.restore(a,e);
d=="show"&&!b.support.opacity&&this.style.removeAttribute("filter");
c.callback&&c.callback.apply(this,arguments);
a.dequeue()
}})
})
}
})(jQuery);
(function(d){d.effects.pulsate=function(a){return this.queue(function(){var b=d(this),c=d.effects.setMode(b,a.options.mode||"show");
times=(a.options.times||5)*2-1;
duration=a.duration?a.duration/2:d.fx.speeds._default/2;
isVisible=b.is(":visible");
animateTo=0;
if(!isVisible){b.css("opacity",0).show();
animateTo=1
}if(c=="hide"&&isVisible||c=="show"&&!isVisible){times--
}for(c=0;
c<times;
c++){b.animate({opacity:animateTo},duration,a.options.easing);
animateTo=(animateTo+1)%2
}b.animate({opacity:animateTo},duration,a.options.easing,function(){animateTo==0&&b.hide();
a.callback&&a.callback.apply(this,arguments)
});
b.queue("fx",function(){b.dequeue()
}).dequeue()
})
}
})(jQuery);
(function(c){c.effects.puff=function(b){return this.queue(function(){var a=c(this),e=c.effects.setMode(a,b.options.mode||"hide"),g=parseInt(b.options.percent,10)||150,h=g/100,i={height:a.height(),width:a.width()};
c.extend(b.options,{fade:true,mode:e,percent:e=="hide"?g:100,from:e=="hide"?i:{height:i.height*h,width:i.width*h}});
a.effect("scale",b.options,b.duration,b.callback);
a.dequeue()
})
};
c.effects.scale=function(b){return this.queue(function(){var a=c(this),e=c.extend(true,{},b.options),g=c.effects.setMode(a,b.options.mode||"effect"),h=parseInt(b.options.percent,10)||(parseInt(b.options.percent,10)==0?0:g=="hide"?0:100),i=b.options.direction||"both",f=b.options.origin;
if(g!="effect"){e.origin=f||["middle","center"];
e.restore=true
}f={height:a.height(),width:a.width()};
a.from=b.options.from||(g=="show"?{height:0,width:0}:f);
h={y:i!="horizontal"?h/100:1,x:i!="vertical"?h/100:1};
a.to={height:f.height*h.y,width:f.width*h.x};
if(b.options.fade){if(g=="show"){a.from.opacity=0;
a.to.opacity=1
}if(g=="hide"){a.from.opacity=1;
a.to.opacity=0
}}e.from=a.from;
e.to=a.to;
e.mode=g;
a.effect("size",e,b.duration,b.callback);
a.dequeue()
})
};
c.effects.size=function(b){return this.queue(function(){var a=c(this),e=["position","top","left","width","height","overflow","opacity"],g=["position","top","left","overflow","opacity"],h=["width","height","overflow"],i=["fontSize"],f=["borderTopWidth","borderBottomWidth","paddingTop","paddingBottom"],k=["borderLeftWidth","borderRightWidth","paddingLeft","paddingRight"],p=c.effects.setMode(a,b.options.mode||"effect"),n=b.options.restore||false,m=b.options.scale||"both",l=b.options.origin,j={height:a.height(),width:a.width()};
a.from=b.options.from||j;
a.to=b.options.to||j;
if(l){l=c.effects.getBaseline(l,j);
a.from.top=(j.height-a.from.height)*l.y;
a.from.left=(j.width-a.from.width)*l.x;
a.to.top=(j.height-a.to.height)*l.y;
a.to.left=(j.width-a.to.width)*l.x
}var d={from:{y:a.from.height/j.height,x:a.from.width/j.width},to:{y:a.to.height/j.height,x:a.to.width/j.width}};
if(m=="box"||m=="both"){if(d.from.y!=d.to.y){e=e.concat(f);
a.from=c.effects.setTransition(a,f,d.from.y,a.from);
a.to=c.effects.setTransition(a,f,d.to.y,a.to)
}if(d.from.x!=d.to.x){e=e.concat(k);
a.from=c.effects.setTransition(a,k,d.from.x,a.from);
a.to=c.effects.setTransition(a,k,d.to.x,a.to)
}}if(m=="content"||m=="both"){if(d.from.y!=d.to.y){e=e.concat(i);
a.from=c.effects.setTransition(a,i,d.from.y,a.from);
a.to=c.effects.setTransition(a,i,d.to.y,a.to)
}}c.effects.save(a,n?e:g);
a.show();
c.effects.createWrapper(a);
a.css("overflow","hidden").css(a.from);
if(m=="content"||m=="both"){f=f.concat(["marginTop","marginBottom"]).concat(i);
k=k.concat(["marginLeft","marginRight"]);
h=e.concat(f).concat(k);
a.find("*[width]").each(function(){child=c(this);
n&&c.effects.save(child,h);
var o={height:child.height(),width:child.width()};
child.from={height:o.height*d.from.y,width:o.width*d.from.x};
child.to={height:o.height*d.to.y,width:o.width*d.to.x};
if(d.from.y!=d.to.y){child.from=c.effects.setTransition(child,f,d.from.y,child.from);
child.to=c.effects.setTransition(child,f,d.to.y,child.to)
}if(d.from.x!=d.to.x){child.from=c.effects.setTransition(child,k,d.from.x,child.from);
child.to=c.effects.setTransition(child,k,d.to.x,child.to)
}child.css(child.from);
child.animate(child.to,b.duration,b.options.easing,function(){n&&c.effects.restore(child,h)
})
})
}a.animate(a.to,{queue:false,duration:b.duration,easing:b.options.easing,complete:function(){a.to.opacity===0&&a.css("opacity",a.from.opacity);
p=="hide"&&a.hide();
c.effects.restore(a,n?e:g);
c.effects.removeWrapper(a);
b.callback&&b.callback.apply(this,arguments);
a.dequeue()
}})
})
}
})(jQuery);
(function(d){d.effects.shake=function(a){return this.queue(function(){var b=d(this),j=["position","top","left"];
d.effects.setMode(b,a.options.mode||"effect");
var c=a.options.direction||"left",e=a.options.distance||20,l=a.options.times||3,f=a.duration||a.options.duration||140;
d.effects.save(b,j);
b.show();
d.effects.createWrapper(b);
var g=c=="up"||c=="down"?"top":"left",h=c=="up"||c=="left"?"pos":"neg";
c={};
var i={},k={};
c[g]=(h=="pos"?"-=":"+=")+e;
i[g]=(h=="pos"?"+=":"-=")+e*2;
k[g]=(h=="pos"?"-=":"+=")+e*2;
b.animate(c,f,a.options.easing);
for(e=1;
e<l;
e++){b.animate(i,f,a.options.easing).animate(k,f,a.options.easing)
}b.animate(i,f,a.options.easing).animate(c,f/2,a.options.easing,function(){d.effects.restore(b,j);
d.effects.removeWrapper(b);
a.callback&&a.callback.apply(this,arguments)
});
b.queue("fx",function(){b.dequeue()
});
b.dequeue()
})
}
})(jQuery);
(function(c){c.effects.slide=function(d){return this.queue(function(){var a=c(this),h=["position","top","left"],e=c.effects.setMode(a,d.options.mode||"show"),b=d.options.direction||"left";
c.effects.save(a,h);
a.show();
c.effects.createWrapper(a).css({overflow:"hidden"});
var f=b=="up"||b=="down"?"top":"left";
b=b=="up"||b=="left"?"pos":"neg";
var g=d.options.distance||(f=="top"?a.outerHeight({margin:true}):a.outerWidth({margin:true}));
if(e=="show"){a.css(f,b=="pos"?-g:g)
}var i={};
i[f]=(e=="show"?b=="pos"?"+=":"-=":b=="pos"?"-=":"+=")+g;
a.animate(i,{queue:false,duration:d.duration,easing:d.options.easing,complete:function(){e=="hide"&&a.hide();
c.effects.restore(a,h);
c.effects.removeWrapper(a);
d.callback&&d.callback.apply(this,arguments);
a.dequeue()
}})
})
}
})(jQuery);
(function(e){e.effects.transfer=function(a){return this.queue(function(){var b=e(this),c=e(a.options.to),d=c.offset();
c={top:d.top,left:d.left,height:c.innerHeight(),width:c.innerWidth()};
d=b.offset();
var f=e('<div class="ui-effects-transfer"></div>').appendTo(document.body).addClass(a.options.className).css({top:d.top,left:d.left,height:b.innerHeight(),width:b.innerWidth(),position:"absolute"}).animate(c,a.duration,a.options.easing,function(){f.remove();
a.callback&&a.callback.apply(b[0],arguments);
b.dequeue()
})
})
}
})(jQuery);
(function($){$.uniform={options:{selectClass:"selector",radioClass:"radio",checkboxClass:"checker",fileClass:"uploader",filenameClass:"filename",fileBtnClass:"action",globalClass:"uniform",fileDefaultText:"No file selected",fileBtnText:"Choose File",checkedClass:"checked",focusClass:"focus",disabledClass:"disabled",activeClass:"active",hoverClass:"hover",useID:true,idPrefix:"uniform",resetSelector:false},elements:[]};
if($.browser.msie&&$.browser.version<7){$.selectOpacity=false
}else{$.selectOpacity=true
}$.fn.uniform=function(options){options=$.extend($.uniform.options,options);
var el=this;
if(options.resetSelector!=false){$(options.resetSelector).mouseup(function(){function resetThis(){$.uniform.update(el)
}setTimeout(resetThis,10)
})
}function doSelect(elem){var divTag=$("<div />"),innerDivTag=$("<div />"),spanTag=$("<span />");
divTag.addClass(options.selectClass).addClass(options.globalClass);
if(options.useID){divTag.attr("id",options.idPrefix+"-"+elem.attr("id"))
}var $selected=elem.find(":selected:first");
if($selected.length===0){$selected=elem.find("option:first")
}spanTag.text($selected.text());
elem.css("opacity",0);
elem.wrap(divTag);
innerDivTag.append(spanTag);
elem.before(innerDivTag);
divTag=elem.parent("div");
innerDivTag=elem.siblings("div");
spanTag=innerDivTag.find("span");
elem.change(function(){spanTag.text(elem.children(":selected").text())
}).focus(function(){divTag.addClass(options.focusClass)
}).blur(function(){divTag.removeClass(options.focusClass)
}).mousedown(function(){divTag.addClass(options.activeClass)
}).mouseup(function(){divTag.removeClass(options.activeClass)
}).hover(function(){divTag.addClass(options.hoverClass)
},function(){divTag.removeClass(options.hoverClass)
}).keypress(function(){spanTag.text(elem.children(":selected").text())
});
if($(elem).attr("disabled")){divTag.addClass(options.disabledClass)
}var targetWidth=parseInt(elem.css("width"),10);
if(!isNaN(targetWidth)){divTag.css("width",targetWidth-10);
spanTag.width(targetWidth-37)
}storeElement(elem)
}function doCheckbox(elem){var divTag=$("<div />"),spanTag=$("<span />");
divTag.addClass(options.checkboxClass).addClass(options.globalClass);
if(options.useID){divTag.attr("id",options.idPrefix+"-"+elem.attr("id"))
}$(elem).wrap(divTag);
$(elem).wrap(spanTag);
spanTag=elem.parent();
divTag=spanTag.parent();
$(elem).css("opacity",0).focus(function(){divTag.addClass(options.focusClass)
}).blur(function(){divTag.removeClass(options.focusClass)
}).click(function(){if(!$(elem).attr("checked")){spanTag.removeClass(options.checkedClass)
}else{spanTag.addClass(options.checkedClass)
}}).mousedown(function(){divTag.addClass(options.activeClass)
}).mouseup(function(){divTag.removeClass(options.activeClass)
}).hover(function(){divTag.addClass(options.hoverClass)
},function(){divTag.removeClass(options.hoverClass)
});
if($(elem).attr("checked")){spanTag.addClass(options.checkedClass)
}if($(elem).attr("disabled")){divTag.addClass(options.disabledClass)
}attachLabelHover($(elem),divTag);
storeElement(elem)
}function doRadio(elem){var divTag=$("<div />"),spanTag=$("<span />");
divTag.addClass(options.radioClass).addClass(options.globalClass);
if(options.useID){divTag.attr("id",options.idPrefix+"-"+elem.attr("id"))
}$(elem).wrap(divTag);
$(elem).wrap(spanTag);
spanTag=elem.parent();
divTag=spanTag.parent();
$(elem).css("opacity",0).focus(function(){divTag.addClass(options.focusClass)
}).blur(function(){divTag.removeClass(options.focusClass)
}).click(function(){if(!$(elem).attr("checked")){spanTag.removeClass(options.checkedClass)
}else{$("."+options.radioClass+" span."+options.checkedClass+":has([name='"+$(elem).attr("name")+"'])").removeClass(options.checkedClass);
spanTag.addClass(options.checkedClass)
}}).mousedown(function(){if(!$(elem).is(":disabled")){divTag.addClass(options.activeClass)
}}).mouseup(function(){divTag.removeClass(options.activeClass)
}).hover(function(){divTag.addClass(options.hoverClass)
},function(){divTag.removeClass(options.hoverClass)
});
if($(elem).attr("checked")){spanTag.addClass(options.checkedClass)
}if($(elem).attr("disabled")){divTag.addClass(options.disabledClass)
}attachLabelHover($(elem),divTag);
storeElement(elem)
}function doFile(elem){var $el=$(elem);
var divTag=$("<div />"),filenameTag=$("<span>"+$.htmlEscape(options.fileDefaultText)+"</span>"),btnTag=$("<span>"+$.htmlEscape(options.fileBtnText)+"</span>");
divTag.addClass(options.fileClass).addClass(options.globalClass);
filenameTag.addClass(options.filenameClass);
btnTag.addClass(options.fileBtnClass);
if(options.useID){divTag.attr("id",options.idPrefix+"-"+$el.attr("id"))
}$el.wrap(divTag);
$el.after(btnTag);
$el.after(filenameTag);
divTag=$el.closest("div");
filenameTag=$el.siblings("."+options.filenameClass);
btnTag=$el.siblings("."+options.fileBtnClass);
if(!$el.attr("size")){var divWidth=divTag.width();
$el.attr("size",divWidth/10)
}var setFilename=function(){var filename=$el.val();
if(filename===""){filename=options.fileDefaultText
}else{filename=filename.split(/[\/\\]+/);
filename=filename[(filename.length-1)];
filenameTag.text(filename)
}};
setFilename();
$el.css("opacity",0).focus(function(){divTag.addClass(options.focusClass)
}).blur(function(){divTag.removeClass(options.focusClass)
}).mousedown(function(){if(!$(elem).is(":disabled")){divTag.addClass(options.activeClass)
}}).mouseup(function(){divTag.removeClass(options.activeClass)
}).hover(function(){divTag.addClass(options.hoverClass)
},function(){divTag.removeClass(options.hoverClass)
});
if($.browser.msie){$el.click(function(){setTimeout(setFilename,0)
})
}else{$el.change(setFilename)
}if($el.attr("disabled")){divTag.addClass(options.disabledClass)
}storeElement(elem)
}function storeElement(elem){elem=$(elem).get();
if(elem.length>1){$.each(elem,function(i,val){$.uniform.elements.push(val)
})
}else{$.uniform.elements.push(elem)
}}$.uniform.update=function(elem){if(elem==undefined){elem=$($.uniform.elements)
}elem=$(elem);
elem.each(function(){var $e=$(this);
if($e.closest("body").length<1){return
}var spanTag;
var divTag;
if($e.is("select")){spanTag=$e.siblings("div").find("span");
divTag=$e.parent("div");
divTag.removeClass(options.hoverClass+" "+options.focusClass+" "+options.activeClass);
spanTag.html($e.children(":selected").text());
if($e.is(":disabled")){divTag.addClass(options.disabledClass)
}else{divTag.removeClass(options.disabledClass)
}}else{if($e.is(":checkbox")){spanTag=$e.closest("span");
divTag=$e.closest("div");
divTag.removeClass(options.hoverClass+" "+options.focusClass+" "+options.activeClass);
spanTag.removeClass(options.checkedClass);
if($e.is(":checked")){spanTag.addClass(options.checkedClass)
}if($e.is(":disabled")){divTag.addClass(options.disabledClass)
}else{divTag.removeClass(options.disabledClass)
}}else{if($e.is(":radio")){spanTag=$e.closest("span");
divTag=$e.closest("div");
divTag.removeClass(options.hoverClass+" "+options.focusClass+" "+options.activeClass);
spanTag.removeClass(options.checkedClass);
if($e.is(":checked")){spanTag.addClass(options.checkedClass)
}if($e.is(":disabled")){divTag.addClass(options.disabledClass)
}else{divTag.removeClass(options.disabledClass)
}}else{if($e.is(":file")){divTag=$e.parent("div");
var filenameTag=$e.siblings(options.filenameClass);
var btnTag=$e.siblings(options.fileBtnClass);
divTag.removeClass(options.hoverClass+" "+options.focusClass+" "+options.activeClass);
filenameTag.text($e.val());
if($e.is(":disabled")){divTag.addClass(options.disabledClass)
}else{divTag.removeClass(options.disabledClass)
}}}}}})
};
function attachLabelHover($e,divTag){$('label[for="'+$e.attr("id")+'"]').mouseover(function(){divTag.addClass("focus")
}).mouseout(function(){divTag.removeClass("focus")
})
}return this.each(function(){if($.selectOpacity){var elem=$(this);
if(elem.is("select")){if(elem.attr("multiple")!=true){doSelect(elem)
}}else{if(elem.is(":checkbox")){doCheckbox(elem)
}else{if(elem.is(":radio")){doRadio(elem)
}else{if(elem.is(":file")){doFile(elem)
}}}}}})
}
})(jQuery);
(function($){$.extend({tablesorter:new function(){var parsers=[],widgets=[];
this.defaults={cssHeader:"header",cssAsc:"headerSortUp",cssDesc:"headerSortDown",cssSortGroupSelector:"tbody tr:not(.sortGroup)",sortInitialOrder:"asc",sortMultiSortKey:"shiftKey",sortForce:null,sortAppend:null,textExtraction:"simple",parsers:{},widgets:[],widgetZebra:{css:["even","odd"]},headers:{},widthFixed:false,cancelSelection:true,sortList:[],headerList:[],dateFormat:"us",decimal:".",debug:false,headerNode:null};
function benchmark(s,d){log(s+","+(new Date().getTime()-d.getTime())+"ms")
}this.benchmark=benchmark;
function log(s){if(typeof console!="undefined"&&typeof console.debug!="undefined"){console.log(s)
}else{alert(s)
}}function buildParserCache(table,$headers){if(table.config.debug){var parsersDebug=""
}var rows=$(table).find(table.config.cssSortGroupSelector);
if(rows.length>0){var list=[],cells=rows[0].cells,l=cells.length;
for(var i=0;
i<l;
i++){var p=false;
if($.metadata&&($($headers[i]).metadata()&&$($headers[i]).metadata().sorter)){p=getParserById($($headers[i]).metadata().sorter)
}else{if((table.config.headers[i]&&table.config.headers[i].sorter)){p=getParserById(table.config.headers[i].sorter)
}}if(!p){p=detectParserForColumn(table,cells[i])
}if(table.config.debug){parsersDebug+="column:"+i+" parser:"+p.id+"\n"
}list.push(p)
}}if(table.config.debug){log(parsersDebug)
}return list
}function detectParserForColumn(table,node){var l=parsers.length;
for(var i=1;
i<l;
i++){if(parsers[i].is($.trim(getElementText(table.config,node)),table,node)){return parsers[i]
}}return parsers[0]
}function getParserById(name){var l=parsers.length;
for(var i=0;
i<l;
i++){if(parsers[i].id.toLowerCase()==name.toLowerCase()){return parsers[i]
}}return false
}function buildCache(table){if(table.config.debug){var cacheTime=new Date()
}var $rows=$(table).find(table.config.cssSortGroupSelector);
var totalRows=$rows.length||0;
var totalCells=($rows[0]&&$rows[0].cells.length)||0,parsers=table.config.parsers,cache={row:[],normalized:[]};
for(var i=0;
i<totalRows;
++i){var c=$rows[i],cols=[];
cache.row.push($(c));
for(var j=0;
j<totalCells;
++j){cols.push(parsers[j].format(getElementText(table.config,c.cells[j]),table,c.cells[j]))
}cols.push(i);
cache.normalized.push(cols);
cols=null
}if(table.config.debug){benchmark("Building cache for "+totalRows+" rows:",cacheTime)
}return cache
}function getElementText(config,node){if(!node){return""
}var t="";
if(config.textExtraction=="simple"){if(node.childNodes[0]&&node.childNodes[0].hasChildNodes()){t=node.childNodes[0].innerHTML
}else{t=node.innerHTML
}}else{if(typeof(config.textExtraction)=="function"){t=config.textExtraction(node)
}else{t=$(node).text()
}}return t
}function appendToTable(table,cache){if(table.config.debug){var appendTime=new Date()
}var c=cache,r=c.row,n=c.normalized,totalRows=n.length,checkCell=(n[0].length-1),tableBody=$(table.tBodies[0]),rows=[];
for(var i=0;
i<totalRows;
i++){rows.push(r[n[i][checkCell]]);
if(!table.config.appender){var o=r[n[i][checkCell]];
var l=o.length;
for(var j=0;
j<l;
j++){tableBody[0].appendChild(o[j])
}}}if(table.config.appender){table.config.appender(table,rows)
}rows=null;
if(table.config.debug){benchmark("Rebuilt table:",appendTime)
}applyWidget(table);
setTimeout(function(){$(table).trigger("sortEnd")
},0)
}function buildHeaders(table){if(table.config.debug){var time=new Date()
}var meta=($.metadata)?true:false,tableHeadersRows=[];
for(var i=0;
i<$("tr",table.config.headerNode).length;
i++){tableHeadersRows[i]=0
}var $tableHeaders=$("th",table.config.headerNode);
$tableHeaders.each(function(index){this.column=index;
this.count=this.order=formatSortingOrder(table.config.sortInitialOrder);
if(checkHeaderMetadata(this)||checkHeaderOptions(table,index)){this.sortDisabled=true
}if(!this.sortDisabled){$(this).addClass(table.config.cssHeader)
}table.config.headerList[index]=this
});
if(table.config.debug){benchmark("Built headers:",time);
log($tableHeaders)
}return $tableHeaders
}function checkHeaderMetadata(cell){if(($.metadata)&&($(cell).metadata().sorter===false)){return true
}return false
}function checkHeaderOptions(table,i){if((table.config.headers[i])&&(table.config.headers[i].sorter===false)){return true
}return false
}function applyWidget(table){var c=table.config.widgets;
var l=c.length;
for(var i=0;
i<l;
i++){getWidgetById(c[i]).format(table)
}}function getWidgetById(name){var l=widgets.length;
for(var i=0;
i<l;
i++){if(widgets[i].id.toLowerCase()==name.toLowerCase()){return widgets[i]
}}}function formatSortingOrder(v){if(typeof(v)!="Number"){i=(v.toLowerCase()=="desc")?1:0
}else{i=(v==(0||1))?v:0
}return i
}function isValueInArray(v,a){var l=a.length;
for(var i=0;
i<l;
i++){if(a[i][0]==v){return true
}}return false
}function setHeadersCss(table,$headers,list,css){$headers.removeClass(css[0]).removeClass(css[1]);
var h=[];
$headers.each(function(offset){if(!this.sortDisabled){h[this.column]=$(this)
}});
var l=list.length;
for(var i=0;
i<l;
i++){h[list[i][0]].addClass(css[list[i][1]])
}}function fixColumnWidth(table,$headers){var c=table.config;
if(c.widthFixed){var colgroup=$("<colgroup>");
$("tr:first td",table.tBodies[0]).each(function(){colgroup.append($("<col>").css("width",$(this).width()))
});
$(table).prepend(colgroup)
}}function updateHeaderSortCount(table,sortList){var c=table.config,l=sortList.length;
for(var i=0;
i<l;
i++){var s=sortList[i],o=c.headerList[s[0]];
o.count=s[1];
o.count++
}}function multisort(table,sortList,cache){if(table.config.debug){var sortTime=new Date()
}var dynamicExp="var sortWrapper = function(a,b) {",l=sortList.length;
for(var i=0;
i<l;
i++){var c=sortList[i][0];
var order=sortList[i][1];
var s=(getCachedSortType(table.config.parsers,c)=="text")?((order==0)?"sortText":"sortTextDesc"):((order==0)?"sortNumeric":"sortNumericDesc");
var e="e"+i;
dynamicExp+="var "+e+" = "+s+"(a["+c+"],b["+c+"]); ";
dynamicExp+="if("+e+") { return "+e+"; } ";
dynamicExp+="else { "
}var orgOrderCol=cache.normalized[0].length-1;
dynamicExp+="return a["+orgOrderCol+"]-b["+orgOrderCol+"];";
for(var i=0;
i<l;
i++){dynamicExp+="}; "
}dynamicExp+="return 0; ";
dynamicExp+="}; ";
eval(dynamicExp);
cache.normalized.sort(sortWrapper);
if(table.config.debug){benchmark("Sorting on "+sortList.toString()+" and dir "+order+" time:",sortTime)
}return cache
}function sortText(a,b){if(a===""&&b!==""){return 1
}else{if(b===""&&a!==""){return -1
}}return((a<b)?-1:((a>b)?1:0))
}function sortTextDesc(a,b){if(a===""&&b!==""){return -1
}else{if(b===""&&a!==""){return 1
}}return((b<a)?-1:((b>a)?1:0))
}function sortNumeric(a,b){return a-b
}function sortNumericDesc(a,b){return b-a
}function getCachedSortType(parsers,i){return parsers[i].type
}this.construct=function(settings){return this.each(function(){if(!this.tBodies){return
}var $this,$document,$headers,cache,config,shiftDown=0,sortOrder;
this.config={};
config=$.extend(this.config,$.tablesorter.defaults,settings);
if(!config.headerNode){if(!this.tHead){return
}config.headerNode=this.tHead
}$this=$(this);
$headers=buildHeaders(this);
this.config.parsers=buildParserCache(this,$headers);
cache=buildCache(this);
var sortCSS=[config.cssDesc,config.cssAsc];
fixColumnWidth(this);
$headers.click(function(e){$this.trigger("sortStart");
var totalRows=($this[0].tBodies[0]&&$this[0].tBodies[0].rows.length)||0;
if(!this.sortDisabled&&totalRows>0){var $cell=$(this);
var i=this.column;
this.order=this.count++%2;
if(!e[config.sortMultiSortKey]){config.sortList=[];
if(config.sortForce!=null){var a=config.sortForce;
for(var j=0;
j<a.length;
j++){if(a[j][0]!=i){config.sortList.push(a[j])
}}}config.sortList.push([i,this.order])
}else{if(isValueInArray(i,config.sortList)){for(var j=0;
j<config.sortList.length;
j++){var s=config.sortList[j],o=config.headerList[s[0]];
if(s[0]==i){o.count=s[1];
o.count++;
s[1]=o.count%2
}}}else{config.sortList.push([i,this.order])
}}setTimeout(function(){setHeadersCss($this[0],$headers,config.sortList,sortCSS);
appendToTable($this[0],multisort($this[0],config.sortList,cache))
},1);
return false
}}).mousedown(function(){if(config.cancelSelection){this.onselectstart=function(){return false
};
return false
}});
$this.bind("update",function(){this.config.parsers=buildParserCache(this,$headers);
cache=buildCache(this)
}).bind("sorton",function(e,list){$(this).trigger("sortStart");
config.sortList=list;
var sortList=config.sortList;
updateHeaderSortCount(this,sortList);
setHeadersCss(this,$headers,sortList,sortCSS);
appendToTable(this,multisort(this,sortList,cache))
}).bind("appendCache",function(){appendToTable(this,cache)
}).bind("applyWidgetId",function(e,id){getWidgetById(id).format(this)
}).bind("applyWidgets",function(){applyWidget(this)
});
if($.metadata&&($(this).metadata()&&$(this).metadata().sortlist)){config.sortList=$(this).metadata().sortlist
}if(config.sortList.length>0){$this.trigger("sorton",[config.sortList])
}applyWidget(this)
})
};
this.addParser=function(parser){var l=parsers.length,a=true;
for(var i=0;
i<l;
i++){if(parsers[i].id.toLowerCase()==parser.id.toLowerCase()){a=false
}}if(a){parsers.push(parser)
}};
this.addWidget=function(widget){widgets.push(widget)
};
this.formatFloat=function(s){var i=parseFloat(s);
return(isNaN(i))?0:i
};
this.formatInt=function(s){var i=parseInt(s);
return(isNaN(i))?0:i
};
this.isDigit=function(s,config){var DECIMAL="\\"+config.decimal;
var exp="/(^[+]?0("+DECIMAL+"0+)?$)|(^([-+]?[1-9][0-9]*)$)|(^([-+]?((0?|[1-9][0-9]*)"+DECIMAL+"(0*[1-9][0-9]*)))$)|(^[-+]?[1-9]+[0-9]*"+DECIMAL+"0+$)/";
return RegExp(exp).test($.trim(s))
};
this.clearTableBody=function(table){if($.browser.msie){function empty(){while(this.firstChild){this.removeChild(this.firstChild)
}}empty.apply(table.tBodies[0])
}else{table.tBodies[0].innerHTML=""
}}
}});
$.fn.extend({tablesorter:$.tablesorter.construct});
var ts=$.tablesorter;
ts.addParser({id:"text",is:function(s){return true
},format:function(s){return $.trim(s.toLowerCase())
},type:"text"});
ts.addParser({id:"digit",is:function(s,table){var c=table.config;
return $.tablesorter.isDigit(s,c)
},format:function(s){return $.tablesorter.formatFloat(s)
},type:"numeric"});
ts.addParser({id:"currency",is:function(s){return/^[£$€?.]/.test(s)
},format:function(s){return $.tablesorter.formatFloat(s.replace(new RegExp(/[^0-9.]/g),""))
},type:"numeric"});
ts.addParser({id:"ipAddress",is:function(s){return/^\d{2,3}[\.]\d{2,3}[\.]\d{2,3}[\.]\d{2,3}$/.test(s)
},format:function(s){var a=s.split("."),r="",l=a.length;
for(var i=0;
i<l;
i++){var item=a[i];
if(item.length==2){r+="0"+item
}else{r+=item
}}return $.tablesorter.formatFloat(r)
},type:"numeric"});
ts.addParser({id:"url",is:function(s){return/^(https?|ftp|file):\/\/$/.test(s)
},format:function(s){return jQuery.trim(s.replace(new RegExp(/(https?|ftp|file):\/\//),""))
},type:"text"});
ts.addParser({id:"isoDate",is:function(s){return/^\d{4}[\/-]\d{1,2}[\/-]\d{1,2}$/.test(s)
},format:function(s){return $.tablesorter.formatFloat((s!="")?new Date(s.replace(new RegExp(/-/g),"/")).getTime():"0")
},type:"numeric"});
ts.addParser({id:"percent",is:function(s){return/\%$/.test($.trim(s))
},format:function(s){return $.tablesorter.formatFloat(s.replace(new RegExp(/%/g),""))
},type:"numeric"});
ts.addParser({id:"usLongDate",is:function(s){return s.match(new RegExp(/^[A-Za-z]{3,10}\.? [0-9]{1,2}, ([0-9]{4}|'?[0-9]{2})( (([0-2]?[0-9]:[0-5][0-9])|([0-1]?[0-9]:[0-5][0-9]\s(AM|PM))))?$/))
},format:function(s){return $.tablesorter.formatFloat(new Date(s).getTime())
},type:"numeric"});
ts.addParser({id:"shortDate",is:function(s){return/\d{1,2}[\/\-]\d{1,2}[\/\-]\d{2,4}/.test(s)
},format:function(s,table){var c=table.config;
s=s.replace(/\-/g,"/");
if(c.dateFormat=="us"){s=s.replace(/(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})/,"$3/$1/$2")
}else{if(c.dateFormat=="uk"){s=s.replace(/(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})/,"$3/$2/$1")
}else{if(c.dateFormat=="dd/mm/yy"||c.dateFormat=="dd-mm-yy"){s=s.replace(/(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{2})/,"$1/$2/$3")
}}}return $.tablesorter.formatFloat(new Date(s).getTime())
},type:"numeric"});
ts.addParser({id:"time",is:function(s){return/^(([0-2]?[0-9]:[0-5][0-9])|([0-1]?[0-9]:[0-5][0-9]\s(am|pm)))$/.test(s)
},format:function(s){return $.tablesorter.formatFloat(new Date("2000/01/01 "+s).getTime())
},type:"numeric"});
ts.addParser({id:"metadata",is:function(s){return false
},format:function(s,table,cell){var c=table.config,p=(!c.parserMetadataName)?"sortValue":c.parserMetadataName;
return $(cell).metadata()[p]
},type:"numeric"});
ts.addWidget({id:"zebra",format:function(table){if(table.config.debug){var time=new Date()
}$("tr:visible",table.tBodies[0]).filter(":even").removeClass(table.config.widgetZebra.css[1]).addClass(table.config.widgetZebra.css[0]).end().filter(":odd").removeClass(table.config.widgetZebra.css[0]).addClass(table.config.widgetZebra.css[1]);
if(table.config.debug){$.tablesorter.benchmark("Applying Zebra widget",time)
}}})
})(jQuery);
(function($){$.fn.fullScreen=function(options){var fullScreen=$(this[0]).data("fullScreen");
if(!fullScreen){fullScreen=new fullScreenObj(options,this[0])
}return fullScreen
};
var fullScreenObj=function(options,dom){this.settings=$.extend({},fullScreenObj.defaults,options);
this.currentDom=dom;
this.init()
};
$.extend(fullScreenObj,{defaults:{fullHeightSelector:".fullHeight"},prototype:{init:function(){var currentObj=this;
var $domObj=currentObj.$dom();
$domObj.data("fullScreen",currentObj);
currentObj.adjustSize();
$(window).resize(function(){currentObj.adjustSize()
})
},$dom:function(){if(!this._$dom){this._$dom=$(this.currentDom)
}return this._$dom
},adjustSize:function(){var fsObj=this;
var targetHeight=$(window).height();
fsObj.$dom().parents().andSelf().each(function(){var $t=$(this);
targetHeight-=$t.outerHeight()-$t.height()
});
targetHeight-=siblingsHeight(fsObj.$dom());
fsObj.$dom().children().height(targetHeight).each(function(){var $t=$(this);
if(!$t.is(":visible")){return
}$t.find(fsObj.settings.fullHeightSelector+":visible").each(function(){var $f=$(this);
$f.height($t.innerHeight()-siblingsHeight($f)).resize()
});
$t.resize()
})
}}});
var siblingsHeight=function($item){var h=0;
$item.siblings(":visible").each(function(){var $t=$(this);
if($t.css("position")!="fixed"&&$t.css("position")!="absolute"){h+=$t.outerHeight(true)
}});
return h
}
})(jQuery);
(function($){$.fn.combinationList=function(options){var comboList=$(this[0]).data("combinationList");
if(!comboList){comboList=new $.combinationListObject(options,this[0])
}return comboList
};
$.combinationListObject=function(options,list){this.settings=$.extend({},$.combinationListObject.defaults,options);
this.currentList=list;
this.init()
};
$.extend($.combinationListObject,{defaults:{clipText:false,headerContainerSelector:".headerContainer",hoverOnly:false,initialSort:[],loadedCallback:function(){},scrollableBody:true,searchable:false,searchCompleteCallback:function(){},searchFormSelector:"form",selectable:true,selectionCallback:function($selectedItems){},sortable:true,sortGrouping:true,sortHeaders:{},treeTable:false,treeColumn:0},prototype:{init:function(){var comboListObj=this;
var $comboList=$(comboListObj.currentList);
$comboList.data("combinationList",comboListObj);
if(comboListObj.settings.clipText){$(window).resize(function(event){adjustClipping(comboListObj)
})
}if(comboListObj.settings.scrollableBody){$comboList.clone().removeAttr("id").find("tbody").remove().end().appendTo(comboListObj.settings.headerContainerSelector).end().end().find("thead").remove()
}if(comboListObj.settings.selectable){$comboList.blistSelectableList({rowSelectionHandler:function($targetRow){comboListObj.settings.selectionCallback($targetRow,comboListObj.selectedItems())
}})
}else{if(comboListObj.settings.hoverOnly){$comboList.blistListHoverItems()
}}if(comboListObj.settings.treeTable){$comboList.treeTable({indent:0,treeColumn:comboListObj.settings.treeColumn})
}if(comboListObj.settings.sortable){$comboList.bind("sortEnd",function(event){sortFinishedHandler(comboListObj,event)
});
var sorterSettings={headers:comboListObj.settings.sortHeaders,textExtraction:"complex",widgets:[]};
if(comboListObj.settings.scrollableBody){sorterSettings.headerNode=$(comboListObj.settings.headerContainerSelector).find("table.selectableList thead")
}if(comboListObj.settings.sortGrouping){sorterSettings.widgets.push("sortGrouping")
}if(comboListObj.settings.initialSort.length>0){sorterSettings.sortInitialOrder=comboListObj.settings.initialSort[0][1]==1?"asc":"desc"
}$comboList.tablesorter(sorterSettings);
setupSortHeaders(comboListObj)
}if(comboListObj.settings.searchable){$comboList.searchable({searchFormSelector:comboListObj.settings.searchFormSelector,searchCompleteCallback:function(){comboListObj.settings.searchCompleteCallback();
$comboList.trigger("applyWidgetId","sortGrouping");
adjustClipping(comboListObj);
if(comboListObj.settings.treeTable){$comboList.find("tr.item.parent.filteredOut").each(function(){$(this).treeTable_disownChildren()
});
$comboList.find("tr.item.parent:not(.filteredOut)").each(function(){$(this).treeTable_reparentChildren()
})
}}})
}if($comboList.find("tbody tr").length<1){comboListObj.displayNoResults()
}comboListObj.settings.loadedCallback()
},updateList:function(newTable){var comboListObj=this;
var $comboList=$(comboListObj.currentList);
$comboList.find("tbody").html(newTable);
if(comboListObj.settings.sortable){$(comboListObj.settings.headerContainerSelector).find("table tr th").removeClass("headerSortUp").removeClass("headerSortDown");
setupSortHeaders(comboListObj)
}comboListObj.settings.loadedCallback();
adjustClipping(comboListObj);
if($comboList.find("tbody tr").length>0){if(comboListObj.settings.treeTable){$comboList.treeTable({indent:0,treeColumn:comboListObj.settings.treeColumn})
}$comboList.trigger("update")
}else{comboListObj.displayNoResults()
}},totalItemCount:function(){return $(this.currentList).find("tr.item:not(.filteredOut)").length
},selectedItems:function(){return $(this.currentList).find("tr.item.selected")
},displayNoResults:function(){var comboListObj=this;
var colSpan=$(comboListObj.settings.headerContainerSelector).find("table tr th").length;
var $newRow=$("<tr class='sortGroup'><td colspan='"+colSpan+"'><div>No Results</div></td></tr>");
$(comboListObj.currentList).find("tbody").append($newRow)
}}});
var sortFinishedHandler=function(comboListObj,event){var $comboList=$(comboListObj.currentList);
if(comboListObj.settings.treeTable){$comboList.find("tr.child").reverse().each(function(){var classMatch=$(this).attr("class").match(/child-of-(\S+)/);
if(classMatch&&classMatch.length>1){var $parRow=$("#"+classMatch[1]);
if($parRow.length==1){$parRow.after(this)
}}})
}};
var adjustClipping=function(comboListObj){if(comboListObj.settings.clipText){$(comboListObj.currentList).find("tbody .clipText > *").each(function(){blist.widget.clippedText.clipElement($(this))
})
}};
var setupSortHeaders=function(comboListObj){$.each(comboListObj.settings.initialSort,function(i,s){$(comboListObj.settings.headerContainerSelector).find("table tr th:nth("+s[0]+")").addClass(s[1]==1?"headerSortUp":"headerSortDown")
})
};
$.tablesorter.addWidget({id:"sortGrouping",format:function(table){function getSortGroup($cell,parser){var curVal=parser.format($cell.text(),table,$cell[0]);
var sortVal=curVal;
if($cell.hasClass("favorite")){return""
}else{if($cell.hasClass("type")){sortVal=curVal+"s"
}else{if(parser.type=="text"){sortVal=curVal.slice(0,1).toLowerCase()
}else{if(parser.id.match(/date/i)){if(curVal===0){sortVal=""
}else{sortVal=blist.util.humaneDate.getFromDate(new Date(curVal),blist.util.humaneDate.DAY)
}}}}}if(sortVal===""){sortVal="none"
}return sortVal
}if(!table||!table.config||!table.config.sortList||table.config.sortList.length<1||table.config.sortList[0].length<1){return
}var curCol=table.config.sortList[0][0];
$("tr.sortGroup",table).remove();
var groupValue="";
for(var i=0;
i<table.tBodies[0].rows.length;
i++){var $curRow=$(table.tBodies[0].rows[i]);
if($curRow.hasClass("child")||$curRow.is(":hidden")){continue
}var $curCell=$($curRow[0].cells[curCol]);
var sortVal=getSortGroup($curCell,table.config.parsers[curCol]);
if(groupValue!=sortVal){groupValue=sortVal;
var $newRow=$("<tr class='sortGroup'/>");
var colSpan=table.config.headerNode[0].rows[0].cells.length;
var $newCell=$("<td colspan='"+colSpan+"'/>");
$newRow.append($newCell);
$newRow.find("td:first-child").append("<div>"+groupValue+"</div>");
$curRow.before($newRow)
}}}})
})(jQuery);
(function($){$.fn.embedForm=function(options){var opts=$.extend({},$.fn.embedForm.defaults,options);
return this.each(function(){var $embedForm=$(this);
var config=$.meta?$.extend({},opts,$embedForm.data()):opts;
var template=$embedForm.find(config.textareaSelector).text();
$embedForm.find(config.widthSelector+","+config.heightSelector).keyup(function(){var dimensions=updatePublishCode($embedForm,config,template);
$embedForm.find(config.sizesSelector).removeClass("selected").filter("[data-width="+dimensions.width+"][data-height="+dimensions.height+"]").addClass("selected")
}).keypress(function(event){if((event.which<48||event.which>57)&&!(event.which==8||event.which==0)){return false
}});
$embedForm.find(config.textareaSelector).click(function(){$(this).select()
});
$embedForm.find(config.sizesSelector).click(function(event){var $this=$(this);
$this.siblings().removeClass("selected");
$this.addClass("selected");
$embedForm.find(config.widthSelector).val($this.attr("data-width"));
$embedForm.find(config.heightSelector).val($this.attr("data-height"));
updatePublishCode($embedForm,config,template)
});
updatePublishCode($embedForm,config,template)
});
function updatePublishCode($embedForm,config,template){var width=$embedForm.find(config.widthSelector).val();
var height=$embedForm.find(config.heightSelector).val();
$embedForm.find(config.textareaSelector).text(template.replace("#width#",width).replace("#height#",height));
if(parseInt(width,10)<425||parseInt(height,10)<425||width==""||height==""){$embedForm.find(config.errorMessageSelector).addClass("errorMessage");
$embedForm.find(config.textareaSelector).attr("disabled",true)
}else{$embedForm.find(config.errorMessageSelector).removeClass("errorMessage");
$embedForm.find(config.textareaSelector).removeAttr("disabled")
}return{width:width,height:height}
}};
$.fn.embedForm.defaults={textareaSelector:"#embed_code",widthSelector:"#embed_width",heightSelector:"#embed_height",errorMessageSelector:".sizeInformation",sizesSelector:".sizes li"}
})(jQuery);
var humaneUtilNS=blist.namespace.fetch("blist.util.humaneDate");
blist.util.humaneDate.MINUTE=0;
blist.util.humaneDate.HOUR=3;
blist.util.humaneDate.DAY=6;
blist.util.humaneDate.WEEK=9;
blist.util.humaneDate.MONTH=12;
blist.util.humaneDate.YEAR=15;
blist.util.humaneDate.CENTURY=18;
blist.util.humaneDate.getFromDate=function(date_obj,granularity){if(granularity===undefined){granularity=blist.util.humaneDate.MINUTE
}if(_.isNumber(date_obj)){date_obj=new Date(date_obj)
}var dt=new Date();
var seconds=(dt-date_obj)/1000;
var token="ago",list_choice=1;
if(seconds<0){seconds=Math.abs(seconds);
token="from now";
list_choice=2
}var i=granularity;
var format=humaneUtilNS.timeFormats[i++];
while(format){if(seconds<format[0]){if(format.length<3){return format[1]
}if(typeof format[2]=="string"){return format[list_choice]
}else{return Math.floor(seconds/format[2])+" "+format[1]+" "+token
}}format=humaneUtilNS.timeFormats[i++]
}if(seconds>5806080000){return Math.floor(seconds/2903040000)+" centuries "+token
}return date_str
};
blist.util.humaneDate.getFromISO=function(date_str){var time=(""+date_str).replace(/-/g,"/").replace(/[TZ]/g," ");
return humaneUtilNS.getFromDate(new Date(time))
};
blist.util.humaneDate.timeFormats=[[60,"just now"],[120,"1 minute ago","1 minute from now"],[3600,"minutes",60],[3600,"this hour"],[7200,"1 hour ago","1 hour from now"],[86400,"hours",3600],[86400,"today"],[172800,"yesterday","tomorrow"],[604800,"days",86400],[604800,"this week"],[1209600,"last week","next week"],[2419200,"weeks",604800],[2419200,"this month"],[4838400,"last month","next month"],[29030400,"months",2419200],[29030400,"this year"],[58060800,"last year","next year"],[2903040000,"years",29030400],[2903040000,"this century"],[5806080000,"a century ago","a century from now"]];
if(typeof jQuery!="undefined"){jQuery.fn.humane_dates=function(){return this.each(function(){var date=humaneUtilNS.getFromISO(this.title);
if(date){jQuery(this).text(date)
}})
}
}var navigationUtilNS=blist.namespace.fetch("blist.util.navigation");
blist.util.navigation.getViewUrl=function(viewId,args){var url="/d/"+viewId;
if(args){url+="?"+$.param(args)
}return url
};
blist.util.navigation.redirectToView=function(viewOrId,args){if(_.isString(viewOrId)){window.location=navigationUtilNS.getViewUrl(viewOrId,args)
}else{if($.isPlainObject(viewOrId)){window.location=$.generateViewUrl(viewOrId)
}}};
blist.util.navigation.redirectToNewView=function(){window.location="/datasets/new"
};
blist.util.navigation.urlToViewId=function(url){var matches=url.match(/(\/[a-zA-Z0-9_\-]+){1,2}\/(\w{4}-\w{4})/);
if(matches&&matches.length>2){return matches[2]
}return null
};
(function($){$.generateProfileUrl=function(user){return"/profile/"+$.urlSafe(user.displayName)+"/"+user.id
};
$.generateViewUrl=function(view){var base="";
if(!$.isBlank(view.domainCName)){var loc=document.location;
base=loc.protocol+"//"+view.domainCName;
if(loc.port!=80){base+=":"+loc.port
}}return base+"/"+$.urlSafe(view.category||"dataset")+"/"+$.urlSafe(view.name)+"/"+view.id
};
$.generateViewRel=function(view){return $.isBlank(view.domainCName)?"":' rel="external" '
}
})(jQuery);
blist.namespace.fetch("blist.events");
blist.events.COLUMNS_CHANGED="columnschanged";
blist.events.MODAL_SHOWN="modalshown";
blist.events.MODAL_HIDDEN="modalhidden";
blist.events.VALID_VIEW="validview";
$(function(){$(".modalDialog, #modals > *").jqm({trigger:false,modal:true,onShow:function(jqm){$(".menu").trigger("menu-close");
$(document).trigger(blist.events.MODAL_SHOWN);
jqm.w.fadeIn("slow");
jqm.o.fadeIn("slow")
},onHide:function(jqm){jqm.w.fadeOut("slow");
jqm.o.fadeOut("slow",function(){$(document).trigger(blist.events.MODAL_HIDDEN)
})
}});
$.live("a.jqmClose","click",function(event){event.preventDefault();
$(this).closest(".modalDialog").jqmHide()
})
});
datasetControlsNS=blist.namespace.fetch("blist.dataset.controls");
blist.dataset.controls.hookUpShareMenu=function(view,$menu,overrides){var tweet=escape("Check out the "+$.htmlEscape(view.name)+" dataset on "+blist.configuration.strings.company+": ");
var seoPath=window.location.hostname+$.generateViewUrl(view);
var shortPath=window.location.hostname.replace(/www\./,"")+"/d/"+view.id;
var opts={menuButtonContents:"Socialize",menuButtonTitle:"Share this dataset",contents:[{text:"Delicious",className:"delicious",rel:"external",href:"http://del.icio.us/post?url="+seoPath+"&title="+$.htmlEscape(view.name)},{text:"Digg",className:"digg",rel:"external",href:"http://digg.com/submit?phase=2&url="+seoPath+"&title="+$.htmlEscape(view.name)},{text:"Facebook",className:"facebook",rel:"external",href:"http://www.facebook.com/share.php?u="+seoPath},{text:"Twitter",className:"twitter",rel:"external",href:"http://www.twitter.com/home?status="+tweet+shortPath},{text:"Email",className:"email",href:"#email",onlyIf:view.viewType!="blobby"}]};
$.extend(opts,overrides);
$menu.menu(opts)
};
blist.dataset.controls.unsavedViewPrompt=function(){$.live("a","click",function(e){if(!blist.display.isTempView){return
}var a=e.currentTarget;
if(a.rel.indexOf("external")>-1){return
}if(a.className.indexOf("noRedirPrompt")>-1){return
}var origHref=a.href;
if($.isBlank(origHref)){return
}var href=origHref;
if(origHref.startsWith(window.location.href)){href=origHref.slice(window.location.href.length)
}if(href.charAt(0)=="#"){return
}e.preventDefault();
var doRedirect=function(){window.location=origHref;
return true
};
datasetControlsNS.showSaveViewDialog("leavingSaveDialog",doRedirect,doRedirect)
})
};
blist.dataset.controls.showSaveViewDialog=function(customClass,saveCallback,dontSaveCallback){var dialogObj=datasetControlsNS.showSaveViewDialog;
var $dialog=$(".saveViewDialog");
$dialog.find(".mainError").text("");
$dialog.jqmShow();
dialogObj._customClass=customClass;
if(!$.isBlank(dialogObj._customClass)){$dialog.addClass(dialogObj._customClass)
}var clearCustomClass=function(){setTimeout(function(){if(!$.isBlank(dialogObj._customClass)){$dialog.removeClass(dialogObj._customClass)
}},1000)
};
dialogObj._saveCallback=saveCallback;
dialogObj._dontSaveCallback=dontSaveCallback;
var saveView=function(){var name=$dialog.find(".viewName").val();
if($.isBlank(name)){$dialog.find(".mainError").text("A view name is required");
return
}$dialog.find(".mainError").text("");
var doSave=function(){$dialog.find(".loadingOverlay, .loadingSpinner").removeClass("hide");
$.ajax({url:"/views.json",type:"POST",dataType:"json",contentType:"application/json",data:JSON.stringify(blist.dataset.cleanViewForSave($.extend({},blist.display.view,{name:name}),true)),error:function(xhr){$dialog.find(".loadingOverlay, .loadingSpinner").addClass("hide");
$dialog.find(".mainError").text(JSON.parse(xhr.responseText).message)
},success:function(view){clearCustomClass();
$dialog.jqmHide();
var preventRedirect=false;
if(_.isFunction(dialogObj._saveCallback)){preventRedirect=dialogObj._saveCallback(view)
}if(!preventRedirect){blist.util.navigation.redirectToView(view)
}}})
};
if(!$.isBlank(blist.util.inlineLogin)){var msg="You must be logged in to save a view";
blist.util.inlineLogin.verifyUser(function(isSuccess){if(isSuccess){doSave()
}else{$dialog.find(".mainError").text(msg)
}},msg)
}else{doSave()
}};
if($.isBlank(dialogObj._hookedEvents)){$dialog.find("form").submit(function(e){e.preventDefault();
saveView()
});
$dialog.find("a.save").click(function(e){e.preventDefault();
saveView()
});
$dialog.find(".jqmClose").click(function(){clearCustomClass()
});
$dialog.find(".dontSave").click(function(){if(_.isFunction(dialogObj._dontSaveCallback)){dialogObj._dontSaveCallback()
}});
dialogObj._hookedEvents=true
}};
(function($){$.fn.stars=function(options){var opts=$.extend({},$.fn.stars.defaults,options);
return this.each(function(){var $this=$(this);
var $inner=$.tag({tagName:"div","class":"starsControlInner"});
var value=opts.value;
$this.attr("title",opts.value+" stars");
$this.empty().append($inner);
updateInner($inner,value,opts);
if(opts.enabled===true){$this.addClass("enabled");
var temporaryValue=value;
$this.mousemove(function(event){var actualX=event.pageX-$this.offset().left;
temporaryValue=Math.ceil(actualX/(opts.starWidth+opts.starMargin));
updateInner($inner,temporaryValue,opts)
});
$this.mouseleave(function(event){updateInner($inner,value,opts)
});
$this.click(function(event){if(_.isFunction(opts.onChange)&&(opts.onChange(temporaryValue)!==false)){value=temporaryValue
}})
}})
};
var updateInner=function($inner,value,opts){$inner.width((value*(opts.starWidth))+(Math.floor(value)*(opts.starMargin)))
};
$.fn.stars.defaults={enabled:true,onChange:function(value){},starMargin:2,starWidth:17,value:2.5}
})(jQuery);
(function($){$.fn.menu=function(options){var opts=$.extend({},$.fn.menu.defaults,options);
if(!_.isArray(opts.contents[0])){opts.contents=[opts.contents]
}var contents=_.map(opts.contents,function(column){var dividerNext=false;
return _.compact(_.map(column,function(item){if(item.divider===true){dividerNext=true;
return null
}if(item.onlyIf===false){return null
}else{if(dividerNext){item.className=(item.className||"")+" divider";
dividerNext=false
}}return item
}))
});
var itemDirective={".@class+":"row.className","a .contents":"row.text","a@href":"row.href","a@rel":"row.rel","a@title":"row.title","a .subtext":"row.subtext"};
_.each(opts.additionalDataKeys,function(key){itemDirective["a@data-"+key]="row."+key
});
_.each(opts.additionalJsonKeys,function(key){itemDirective["a@data-"+key]=function(k){return $.htmlEscape(JSON.stringify(k.item[key]))
}
});
var renderDirective={"+a.menuButton":"menuButtonContents","a.menuButton@title":"menuButtonTitle","a.menuButton@class":"menuButtonClass",".menuDropdown>ul>li":{"column<-columns":{"ul>li":{"row<-column":itemDirective}}}};
return this.each(function(){var $menuContainer=$(this);
$menuContainer.empty().append($.renderTemplate("menu",{menuButtonClass:opts.menuButtonClass,menuButtonContents:opts.menuButtonContents,menuButtonTitle:opts.menuButtonTitle,columns:contents},renderDirective));
var $menuButton=$menuContainer.children("a");
var $menuDropdown=$menuContainer.children("div");
$menuButton.bind("click",function(event){event.preventDefault();
if($menuDropdown.is(":visible")){closeMenu(opts,$menuContainer,$menuButton,$menuDropdown)
}else{openMenu(opts,$menuContainer,$menuButton,$menuDropdown)
}});
$menuContainer.bind("menu-close",function(event){if($menuDropdown.is(":visible")){closeMenu(opts,$menuContainer,$menuButton,$menuDropdown)
}})
})
};
var openMenu=function(opts,$menuContainer,$menuButton,$menuDropdown){if(_.isFunction(opts.onOpen)){opts.onOpen()
}$(document).trigger("click.menu");
var origDocumentHeight=$(document).height();
$menuContainer.addClass("open");
$menuDropdown.css("width",null).css("right",null).css("bottom",null).css("top",null).show();
if(($.browser.msie)&&($.browser.majorVersion<8)){var $topLevelList=$menuDropdown.children("ul");
var topLevelWidth=0;
$topLevelList.children().each(function(){topLevelWidth+=$(this).outerWidth(true)
});
$topLevelList.width(topLevelWidth);
$menuDropdown.width($topLevelList.outerWidth(true))
}if($menuDropdown.offset().left+$menuDropdown.outerWidth(true)>$(window).width()){if($menuContainer.offset().left+$menuButton.outerWidth(true)-$menuDropdown.outerWidth(true)<0){$menuDropdown.css("width",$(window).width()-$menuDropdown.offset().left-10)
}else{$menuDropdown.css("right",0)
}}if($menuDropdown.offset().top+$menuDropdown.outerHeight(true)>origDocumentHeight){if($menuContainer.offset().top-$menuDropdown.outerHeight(true)>0){$menuDropdown.css("bottom",$menuContainer.innerHeight())
}}else{$menuDropdown.css("top",$menuButton.outerHeight())
}$menuDropdown.hide().fadeIn(200);
$(document).unbind("click.menu");
$(document).bind("click.menu",function(event){if(($menuContainer.has(event.target).length===0)||($menuDropdown.find("a").has(event.target).length>0)||$(event.target).is(".menuDropdown a")){closeMenu(opts,$menuContainer,$menuButton,$menuDropdown)
}})
};
var closeMenu=function(opts,$menuContainer,$menuButton,$menuDropdown){if(_.isFunction(opts.onClose)){opts.onClose()
}$(document).unbind("click.menu");
$menuContainer.removeClass("open");
$menuDropdown.fadeOut(200)
};
$.fn.menu.defaults={additionalDataKeys:[],additionalJsonKeys:[],contents:[],menuButtonClass:"menuButton",menuButtonContents:"Menu",menuButtonTitle:"Menu",onOpen:function(){},onClose:function(){}}
})(jQuery);
(function($){$.fn.scrollTabs=function(options){var opts=$.extend({},$.fn.scrollTabs.defaults,options);
return this.each(function(){var $this=$(this);
var config=$.meta?$.extend({},opts,$this.data()):opts;
$this.data("config-scrollTabs",config);
$(window).resize(function(){resizeHandler($this)
});
resizeHandler($this)
});
function resizeHandler($this){var config=$this.data("config-scrollTabs");
if(needsScrolling($this)){$(config.scrollArrowsSelector).show();
$(config.scrollArrowPrevSelector).addClass("disabled");
$(config.scrollArrowsSelector+".disabled a").live("click",function(event){event.preventDefault()
});
$(config.scrollArrowsSelector+":not('.disabled') a").live("click",function(event){event.preventDefault();
var $a=$(this);
if($a.closest("li").is(".prev")){scrollPrevious($this)
}else{scrollNext($this)
}updateArrowStates($this)
})
}else{$(config.scrollArrowsSelector).hide();
$(config.scrollArrowPrevSelector).removeClass("disabled");
$(config.scrollArrowsSelector+".disabled a").die("click");
$(config.scrollArrowsSelector+":not('.disabled') a").die("click")
}}function needsScrolling($this){var config=$this.data("config-scrollTabs");
var tabsWidth=0;
$(config.scrollableSelector).each(function(){tabsWidth+=$(this).outerWidth()
});
return tabsWidth>$(config.containerSelector).width()
}function updateArrowStates($this){var config=$this.data("config-scrollTabs");
var $prev=$(config.scrollArrowPrevSelector);
var $next=$(config.scrollArrowNextSelector);
if($("."+config.scrolledAwayClass).length>0){$prev.removeClass("disabled")
}else{$prev.addClass("disabled")
}var adjustedContainerWidth=$(config.containerSelector).width()-($prev.outerWidth()+$next.outerWidth());
var visibleTabsSelector=config.scrollableSelector+":not('."+config.scrolledAwayClass+"')";
var visibleTabsWidth=0;
$(visibleTabsSelector).each(function(){visibleTabsWidth+=$(this).outerWidth()
});
if(visibleTabsWidth>adjustedContainerWidth){$next.removeClass("disabled")
}else{$next.addClass("disabled")
}}function scrollPrevious($this){var config=$this.data("config-scrollTabs");
var $tabToScrollIn=$($(config.scrollableSelector+"."+config.scrolledAwayClass+":last"));
var scrolledAwayWidth=0;
$("."+config.scrolledAwayClass).each(function(){scrolledAwayWidth+=$(this).outerWidth()
});
var newMargin=scrolledAwayWidth-$tabToScrollIn.outerWidth();
$(config.listSelector).animate({marginLeft:"-"+newMargin+"px"});
$tabToScrollIn.removeClass(config.scrolledAwayClass)
}function scrollNext($this){var config=$this.data("config-scrollTabs");
var $tabToScrollOff=$($(config.scrollableSelector+":not('."+config.scrolledAwayClass+"'):first"));
var scrolledAwayWidth=0;
$("."+config.scrolledAwayClass).each(function(){scrolledAwayWidth+=$(this).outerWidth()
});
var newMargin=scrolledAwayWidth+$tabToScrollOff.outerWidth();
$(config.listSelector).animate({marginLeft:"-"+newMargin+"px"});
$tabToScrollOff.addClass(config.scrolledAwayClass)
}};
$.fn.scrollTabs.defaults={containerSelector:"#widgetMeta .header",listSelector:"ul.summaryTabs",scrollableSelector:"ul.summaryTabs li.scrollable",scrollArrowsSelector:"ul.summaryTabs li.scrollArrow",scrollArrowPrevSelector:"ul.summaryTabs li.prev",scrollArrowNextSelector:"ul.summaryTabs li.next",scrolledAwayClass:"scrolledAway"}
})(jQuery);
(function($){$.fn.inlineEdit=function(options){var opts=$.extend({},$.fn.inlineEdit.defaults,options);
function editClick(event,$iEdit){var config=$iEdit.data("config-inlineEdit");
event.preventDefault();
closeAllForms($iEdit);
$(document).bind("click.inlineEdit",function(e){docClick(e,$iEdit)
});
$iEdit.find(config.displaySelector).hide();
var $form=$iEdit.find("form").keyup(function(event){if(event.keyCode==27){closeAllForms($iEdit)
}});
$form.show().find(":text,textarea").focus().select()
}function closeAllForms($iEdit){var config=$iEdit.data("config-inlineEdit");
var $allItemContainers=$(config.allItemSelector);
$allItemContainers.find("form").hide();
$allItemContainers.find(config.displaySelector).show();
$(document).unbind("click.inlineEdit")
}function editSubmit(event,$iEdit){event.preventDefault();
saveValue($iEdit)
}function saveValue($iEdit){var config=$iEdit.data("config-inlineEdit");
var $form=$iEdit.find(config.editSubmitSelector);
var fieldValue=$form.find(":text,textarea").val();
if(!fieldValue||fieldValue===""){closeAllForms($iEdit);
return
}if(blist.util&&blist.util.inlineLogin){$(document).unbind("click.inlineEdit");
blist.util.inlineLogin.verifyUser(function(isSuccess){if(isSuccess){doSave($iEdit,$form,fieldValue)
}else{closeAllForms($iEdit)
}},config.loginMessage)
}else{doSave($iEdit,$form,fieldValue)
}}function doSave($iEdit,$form,fieldValue){var config=$iEdit.data("config-inlineEdit");
$.ajax({url:(config.requestUrl||$form.attr("action")),type:config.requestType,contentType:config.requestContentType,data:config.requestDataCallback($form,fieldValue),dataType:"json",error:function(xhr){var errBody=JSON.parse(xhr.responseText);
alert(errBody.message)
},success:function(responseData){if(responseData.error){alert(responseData.error)
}else{$(document).unbind("click.inlineEdit");
if(config.onceOnly){$iEdit.find("*").unbind(".inlineEdit")
}$form.hide();
$iEdit.find(config.displaySelector).text(fieldValue).show();
config.submitSuccessCallback($iEdit,responseData)
}}})
}function editCancel(event,$iEdit){event.preventDefault();
closeAllForms($iEdit)
}function docClick(event,$iEdit){if($iEdit.find("*").andSelf().index(event.target)<0){saveValue($iEdit)
}}return this.each(function(){var $iEdit=$(this);
var config=$.meta?$.extend({},opts,$iEdit.data()):opts;
$iEdit.data("config-inlineEdit",config);
$iEdit.find(config.editClickSelector).bind("click.inlineEdit",function(e){editClick(e,$iEdit)
});
$iEdit.find(config.editSubmitSelector).bind("submit.inlineEdit",function(e){editSubmit(e,$iEdit)
});
$iEdit.find(config.editCancelSelector).bind("click.inlineEdit",function(e){editCancel(e,$iEdit)
})
})
};
$.fn.inlineEdit.defaults={allItemSelector:".inlineEdit",displaySelector:"span",editCancelSelector:"form .formCancelLink",editClickSelector:"span",editSubmitSelector:"form:not(.doFullReq)",loginMessage:"You must be logged in to edit",onceOnly:false,requestContentType:"application/x-www-form-urlencoded",requestDataCallback:function($form,fieldValue){return $form.find(":input")
},requestType:"POST",requestUrl:null,submitSuccessCallback:function($inlineEditItem,responseData){}}
})(jQuery);
var blistCommonNS=blist.namespace.fetch("blist.common");
blistCommonNS.formInliner=function(event){var $form=$(event.target);
var model=blist.$display.blistModel();
var view=blist.dataset.cleanViewForPost($.extend(true,{},blist.display.view));
$form.append($('<input type="hidden" name="view"/>').val(JSON.stringify(view))).append($('<input type="hidden" name="method" value="index" />'))
};
(function($){$.fn.downloadToFormCatcher=function(){if(!_.isUndefined(blist.$display.datasetGrid)){var dsGrid=blist.$display.datasetGrid();
return this.each(function(){$(this).click(function(event){if(dsGrid.isTempView!==true){return true
}event.preventDefault();
var href=$(this).attr("href").replace(/\w{4}-\w{4}/,"INLINE");
var $form=$("<form>").attr("ACTION",href).attr("method","post");
blist.$display.append($form);
$form.bind("submit",blistCommonNS.formInliner);
$form.submit()
})
})
}}
})(jQuery);
var widgetNS=blist.namespace.fetch("blist.widget");
var commonNS=blist.namespace.fetch("blist.common");
var configNS=blist.namespace.fetch("blist.configuration");
widgetNS.ready=false;
$.ajax({url:"/views/"+widgetNS.view.id+".json",data:{method:"opening",accessType:"WIDGET",referrer:document.referrer}});
blist.widget.resizeViewport=function(){widgetNS.$resizeContainer.fullScreen().adjustSize();
if($.browser.msie&&($.browser.majorVersion==7)){$(".mainMenu").toggleClass("open").toggleClass("open")
}};
blist.widget.searchToolbarShown=false;
blist.widget.showToolbar=function(sectionName){var sectionClassLookup={search:"toolbarSearchForm",email:"toolbarEmailForm",closePane:"toolbarClosePaneBox",about:"toolbarAboutBox"};
var sectionClass=sectionClassLookup[sectionName];
var $toolbar=$(".toolbar");
var toolbarChanged=!$toolbar.hasClass(sectionName);
$toolbar.removeClass().addClass("toolbar "+sectionName);
if(sectionName=="search"){widgetNS.searchToolbarShown=true
}var maxAboutBoxHeight=$(".widgetContent").innerHeight()*0.5;
$(".toolbarAboutBox").css("max-height",maxAboutBoxHeight);
if(!$toolbar.is(":visible")){if(sectionName=="about"){$toolbar.show().children().show();
$toolbar.height(Math.min($toolbar.find(".toolbarAboutBox").outerHeight(true),maxAboutBoxHeight)).hide()
}else{$toolbar.height(20)
}$toolbar.show("slide",{direction:((widgetNS.orientation=="downwards")?"up":"down")},500,widgetNS.resizeViewport);
$toolbar.children(":not(.close)").hide().filter("."+sectionClass).show()
}else{if(toolbarChanged){if(sectionName!="closePane"){widgetNS.closePane()
}if(sectionName=="about"){var $aboutBox=$toolbar.find(".toolbarAboutBox");
$aboutBox.show();
$toolbar.animate({height:Math.min($aboutBox.outerHeight(true),maxAboutBoxHeight)},500,widgetNS.resizeViewport);
$aboutBox.hide()
}else{$toolbar.animate({height:20},500,widgetNS.resizeViewport)
}$toolbar.children(":not(.close):visible").fadeOut("fast",function(){$toolbar.find("."+sectionClass).fadeIn("fast")
})
}}};
blist.widget.hideToolbar=function(){var $toolbar=$(".toolbar");
if($toolbar.hasClass("search")){widgetNS.searchToolbarShown=false
}else{if(widgetNS.searchToolbarShown){widgetNS.showToolbar("search");
return
}}$toolbar.removeClass().addClass("toolbar").hide("slide",{direction:((widgetNS.orientation=="downwards")?"up":"down")},widgetNS.resizeViewport)
};
blist.widget.closePane=function(){$(".toolbar").animate({"background-color":$(".subHeaderBar").css("background-color")},function(){$(this).css("background-color","")
});
widgetNS.showDataView()
};
blist.widget.flashToolbarMessage=function($messageElem,message,onDisplay){$messageElem.text(message).slideDown(function(){if(typeof onDisplay=="function"){onDisplay()
}setTimeout(function(){$messageElem.slideUp()
},5000)
})
};
blist.widget.showDataView=function(){if($(".widgetContentGrid").is(":visible")){return
}$(".widgetContent > :visible:first").fadeOut(200,function(){$(".widgetContentGrid").fadeIn(200);
widgetNS.resizeViewport()
})
};
(function($){if(blist.display.isInvalid){$("body").addClass("invalidView")
}})(jQuery);
$(function(){if(!$.isBlank($.uploadDialog)){$.uploadDialog.version=2
}widgetNS.orientation=widgetNS.theme.frame["orientation"];
widgetNS.isNonTabular=(widgetNS.view.viewType!=="tabular");
widgetNS.isAltView=!_.include(["Blist","Filter","Grouped"],blist.dataset.getDisplayType(widgetNS.view));
widgetNS.interstitial=widgetNS.theme.behavior["interstitial"];
widgetNS.$resizeContainer=$(".widgetContent");
widgetNS.$resizeContainer.fullScreen();
$("select, input:checkbox, input:radio, input:file").uniform();
var menuOptions=widgetNS.theme.menu["options"];
if(_.any(menuOptions)){$(".mainMenu").menu({additionalDataKeys:["targetPane","iconColor"],menuButtonTitle:"Access additional information about this dataset.",menuButtonClass:"mainMenuButton "+((widgetNS.orientation=="downwards")?"upArrow":"downArrow"),contents:[{text:"More Views",className:"views",targetPane:"views",subtext:"Filters, Charts, and Maps",href:"#views",iconColor:"#57b6dd",onlyIf:menuOptions.more_views},{text:"Download",className:"downloads",targetPane:"downloads",subtext:"Download in various formats",href:"#downloads",iconColor:"#959595",onlyIf:!widgetNS.isNonTabular&&menuOptions.downloads},{text:"Comments",className:"comments",targetPane:"comments",subtext:"Read comments on this dataset",href:"#comments",iconColor:"#bed62b",onlyIf:menuOptions.comments},{text:"Embed",className:"embed",targetPane:"embed",subtext:"Embed this player on your site",href:"#embed",iconColor:"#e44044",onlyIf:menuOptions.embed},{text:"API",className:"api",targetPane:"api",subtext:"Access this Dataset via SODA",href:"#api",iconColor:"#f93f06",onlyIf:menuOptions.api},{text:"Print",className:"print",targetPane:"print",subtext:"Print this dataset",href:"#print",iconColor:"#a460c4",onlyIf:!widgetNS.isAltView&&menuOptions.print},{text:"About the Socrata Social Data Player",className:"about",href:"http://www.socrata.com/try-it-free",rel:"external",onlyIf:menuOptions.about_sdp}],onOpen:function(){$.analytics.trackEvent("widget (v2)","main menu opened",document.referrer)
}});
if(menuOptions.about_sdp){$(".mainMenu .menuColumns").addClass("hasAbout")
}}var paneHandlers={embed:function(){$("#embed_code").focus().select()
}};
$(".mainMenu .menuDropdown a").click(function(event){var $this=$(this);
var target=$this.attr("data-targetPane");
if($.isBlank(target)){return
}event.preventDefault();
if(!$(".widgetContent_"+target).is(":visible")){$(".widgetContent > :visible:first").fadeOut(200,function(){$(".widgetContent_"+target).fadeIn(200);
$(".toolbarClosePaneName").text($this.find(".contents").text());
widgetNS.showToolbar("closePane");
$(".toolbar").animate({"background-color":$this.attr("data-iconColor")});
if(_.isFunction(paneHandlers[target])){paneHandlers[target]()
}});
$.analytics.trackEvent("widget (v2)","menu item clicked: "+$this.attr("href"),document.referrer)
}});
blist.dataset.controls.hookUpShareMenu(widgetNS.view,$(".subHeaderBar .share .shareMenu"),{menuButtonClass:"icon",onOpen:function(){$.analytics.trackEvent("widget (v2)","share menu opened",document.referrer)
}});
var $toolbar=$(".toolbar");
$(".toolbar .close").click(function(event){if($toolbar.hasClass("search")){$dataGrid.datasetGrid().clearFilterInput(event)
}else{event.preventDefault()
}if($toolbar.hasClass("closePane")){widgetNS.closePane()
}widgetNS.hideToolbar()
});
$(".subHeaderBar .about a").click(function(event){event.preventDefault();
if($toolbar.hasClass("about")&&$toolbar.is(":visible")){widgetNS.hideToolbar()
}else{widgetNS.showToolbar("about")
}});
$(".subHeaderBar .search a").click(function(event){event.preventDefault();
if($toolbar.hasClass("search")&&$toolbar.is(":visible")){widgetNS.hideToolbar()
}else{widgetNS.showToolbar("search")
}});
$(".shareMenu .email a").click(function(event){if($toolbar.hasClass("email")&&$toolbar.is(":visible")){$(".toolbarEmailForm .toolbarTextbox").effect("pulsate",{times:2})
}else{widgetNS.showToolbar("email")
}});
var emailRequestComplete=function(emails){if(emails.length>0){widgetNS.flashToolbarMessage($(".toolbarEmailForm .toolbarMessage"),"Some of your emails could not be sent. Please verify the addresses and try again.",function(){$(".toolbarEmailForm .toolbarTextbox").val(emails.join(", ")).attr("disabled",false).css("background-color",null).css("background-color",widgetNS.theme.toolbar.input_color)
})
}else{widgetNS.flashToolbarMessage($(".toolbarEmailForm .toolbarMessage"),"Your emails were sent successfully.",function(){$(".toolbarEmailForm .toolbarTextbox").val("").blur().attr("disabled",false).css("background-color",null).css("background-color",widgetNS.theme.toolbar.input_color)
})
}};
$(".toolbarEmailForm .toolbarTextbox, .toolbarSearchForm .toolbarTextbox").val("").blur();
$(".toolbar .toolbarEmailForm").submit(function(event){event.preventDefault();
var $form=$(this);
var $emailTextbox=$(".toolbarEmailForm .toolbarTextbox");
var emails=$.trim($emailTextbox.val());
emails=emails.split(/[, ]+/);
var completed=0;
var totalRequests=emails.length;
_.each(emails,function(email){$.ajax({url:$form.attr("action"),cache:false,data:{method:"email",email:email},success:function(responseData){if(responseData.error===undefined){emails=_.without(emails,email)
}if(++completed==totalRequests){emailRequestComplete(emails)
}},error:function(request,status,error){if(++completed==totalRequests){emailRequestComplete(emails)
}}})
});
$emailTextbox.attr("disabled",true).animate({"background-color":"#cdc9b7"})
});
$(".toolbarAboutBox .datasetAverageRating").stars({onChange:function(){$(".actionInterstitial").jqmShow().find(".actionPhrase").text("rate this dataset");
return false
},starMargin:1,starWidth:10,value:widgetNS.view.averageRating||0});
var $dataGrid=$("#data-grid");
if(!widgetNS.isAltView){if($dataGrid.length>0){$dataGrid.datasetGrid({viewId:widgetNS.viewId,accessType:"WIDGET",showRowNumbers:widgetNS.theme.grid["row_numbers"],showRowHandle:widgetNS.theme.grid["row_numbers"],editEnabled:false,manualResize:true,columnNameEdit:false,filterForm:".toolbar .toolbarSearchForm",autoHideClearFilterItem:false,initialResponse:$.unescapeObject(widgetNS.viewJson)})
}}else{if(blist.display.invokeVisualization){$("#data-grid").visualization()
}}var moreViews=[];
$.ajax({url:"/views.json?method=getByTableId&tableId="+widgetNS.view.tableId,dataType:"json",success:function(responseData){moreViews=_.reject(responseData||[],function(view){return(_.include(view.flags,"default")&&(view.viewType=="tabular"))||(view.viewType=="blobby")||(view.viewType=="href")
});
moreViews.sort(function(a,b){return b.viewCount-a.viewCount
});
$(".widgetContent_views").append($.renderTemplate("filtersTable",moreViews,{"tbody .item":{"filter<-":{".type .cellInner.icon":function(filter){return blist.dataset.getDisplayType(filter.item)
},".type@title":function(filter){return blist.dataset.getDisplayType(filter.item)
},".type@class+":function(filter){return" type"+blist.dataset.getDisplayType(filter.item)
},".name a":"filter.name!",".name a@title":"filter.description!",".name a@href":function(filter){return $.generateViewUrl(filter.item)
},".viewed .cellInner":"filter.viewCount",".picture a@href":function(filter){return $.generateProfileUrl(filter.item.owner)
},".picture img@src":function(filter){return filter.item.owner.profileImageUrlMedium||"/images/small-profile.png"
},".picture img@alt":"filter.owner.displayName!",".picture img@title":"filter.owner.displayName!"}}}));
$(".widgetContent_views .name a").each(function(){var $this=$(this);
if($this.attr("title")===""){return
}$this.socrataTip({message:$this.attr("title").replace(/\s/g," "),shrinkToFit:false})
});
$(".widgetContent_views table.gridList").combinationList({headerContainerSelector:".widgetContent_views .gridListWrapper",initialSort:[[2,1]],scrollableBody:false,selectable:false,sortGrouping:false,sortHeaders:{0:{sorter:"text"},1:{sorter:"text"},2:{sorter:"digit"},3:{sorter:false}}})
},error:function(xhr){}});
$(".widgetContent_downloads").append($.renderTemplate("downloadsTable",{downloadTypes:$.templates.downloadsTable.downloadTypes,viewId:widgetNS.view.id},$.templates.downloadsTable.directive));
$.templates.downloadsTable.postRender($(".widgetContent_downloads"));
var repliesDirective={".@data-commentid":"reply.id",".replyAuthor img@src":function(reply){return reply.item.user.profileImageUrlMedium||"/images/large-profile.png"
},".replyAuthor img@alt":"reply.user.displayName!",".replyAuthor a@href":function(reply){return $.generateProfileUrl(reply.item.user)
},".replyContainer .replyBody .replyAuthorName":"reply.user.displayName!",".replyContainer .replyBody .replyAuthorName@href":function(reply){return $.generateProfileUrl(reply.item.user)
},".replyContainer .replyBody .replyTitle":"reply.title!",".replyContainer .replyBody+":"reply.body!",".replyContainer .replyActions .timestamp":function(reply){return blist.util.humaneDate.getFromDate(new Date(reply.item.createdAt*1000))
},".replyContainer .replyActions .positiveRatings":function(reply){return(reply.item.upRatings>0)?("+"+reply.item.upRatings):""
},".replyContainer .replyActions .negativeRatings":function(reply){return(reply.item.downRatings>0)?("-"+reply.item.downRatings):""
},".replyContainer .replyActions .rateUp@class+":function(reply){return(!_.isUndefined(reply.item.currentUserRating)&&reply.item.currentUserRating.thumbUp===true)?" ratedUp":""
},".replyContainer .replyActions .rateDown@class+":function(reply){return(!_.isUndefined(reply.item.currentUserRating)&&reply.item.currentUserRating.thumbUp===false)?" ratedDown":""
}};
var commentsDirective={".commentList":{"comment<-":{".@data-commentid":"comment.id",".commentAuthor img@src":function(comment){return comment.item.user.profileImageUrlMedium||"/images/large-profile.png"
},".commentAuthor img@alt":"comment.user.displayName!",".commentAuthor a@href":function(comment){return $.generateProfileUrl(comment.item.user)
},".commentContainer .commentBody .commentAuthorName":"comment.user.displayName!",".commentContainer .commentBody .commentAuthorName@href":function(comment){return $.generateProfileUrl(comment.item.user)
},".commentContainer .commentBody .commentTitle":"comment.title!",".commentContainer .commentBody+":"comment.body!",".commentContainer .commentActions .timestamp":function(comment){return blist.util.humaneDate.getFromDate(new Date(comment.item.createdAt*1000))
},".commentContainer .commentActions .positiveRatings":function(comment){return(comment.item.upRatings>0)?("+"+comment.item.upRatings):""
},".commentContainer .commentActions .negativeRatings":function(comment){return(comment.item.downRatings>0)?("-"+comment.item.downRatings):""
},".commentContainer .commentActions .rateUp@class+":function(comment){return(!_.isUndefined(comment.item.currentUserRating)&&comment.item.currentUserRating.thumbUp===true)?" ratedUp":""
},".commentContainer .commentActions .rateDown@class+":function(comment){return(!_.isUndefined(comment.item.currentUserRating)&&comment.item.currentUserRating.thumbUp===false)?" ratedDown":""
},".commentContainer .replyViewAllLink":"View all #{comment.item.childCount} replies",".commentContainer .replyViewAllLink@class+":function(comment){return(comment.item.childCount<4)?" hide":""
},".commentContainer .replyWrapper .replyList":{"reply<-comment.children":repliesDirective},".commentContainer .replyWrapper@class+":function(comment){return(comment.item.childCount===0)?" hide":""
}}}};
var allComments=[];
var allCommentsCount=0;
var shownCommentCount=0;
var trimmedComments=[];
var showMoreComments=function(){$(".widgetContent_comments .commentsWrapper").append($.renderTemplate("comments",trimmedComments.slice(shownCommentCount,shownCommentCount+10),commentsDirective));
shownCommentCount+=10;
if(shownCommentCount>=allCommentsCount){$(".commentsViewMoreLink").hide()
}else{if((allCommentsCount-shownCommentCount)==1){$(".commentsViewMoreLink").text("Show last comment")
}else{$(".commentsViewMoreLink").text("Next "+Math.min(10,allCommentsCount-shownCommentCount)+" comments")
}}};
$.ajax({url:"/views/"+widgetNS.view.id+"/comments.json",dataType:"json",success:function(responseData){allComments=_.reject(responseData,function(comment){return $.isBlank(comment.title)&&$.isBlank(comment.body)
});
allCommentsCount=allComments.length;
if(allCommentsCount===0){$(".widgetContent_comments .commentsWrapper").append($.tag({tagName:"p","class":"emptyDataText",contents:"No one has posted any comments yet."}))
}else{trimmedComments=_.map(allComments,function(comment){var trimmedComment=$.extend({},comment);
if(!_.isUndefined(comment.children)&&(comment.children.length>3)){trimmedComment.children=comment.children.slice(0,3)
}trimmedComment.childCount=(_.isUndefined(comment.children)?0:comment.children.length);
return trimmedComment
});
showMoreComments()
}}});
$(".commentsViewMoreLink").click(function(event){event.preventDefault();
showMoreComments()
});
$.live(".widgetContent_comments .replyViewAllLink","click",function(event){event.preventDefault();
var $this=$(this);
var $commentList=$this.closest(".commentList");
var commentId=parseInt($commentList.attr("data-commentid"));
var commentObj=_.detect(allComments,function(comment){return comment.id===commentId
});
$commentList.find(".replyWrapper").append($.renderTemplate("comments .replyWrapper",commentObj.children.slice(3),{".replyList":{"reply<-":repliesDirective}}));
$this.remove()
});
$.live(".widgetContent_comments .commentActions a,.widgetContent_comments .replyActions a","click",function(event){event.preventDefault();
var message="do that";
var $listItem=$(this).closest("li");
if($listItem.hasClass("actionReply")){message="reply to this comment"
}else{if($listItem.hasClass("actionInappropriate")){message="flag this comment"
}else{if($listItem.hasClass("rateUp")||$listItem.hasClass("rateDown")){message="rate this comment"
}}}$(".actionInterstitial").jqmShow().find(".actionPhrase").text(message)
});
$.live(".widgetContent_comments .addCommentButton","click",function(event){event.preventDefault();
$(".actionInterstitial").jqmShow().find(".actionPhrase").text("leave a comment")
});
$(".widgetContent_embed .embedForm").embedForm();
$(".widgetContent_print form input[type=image]").replaceWith($.tag({tagName:"a",href:"#submit","class":["button","submit"],contents:[{tagName:"span","class":"left"},{tagName:"span","class":"icon"},"Print"]}).click(function(event){event.preventDefault();
$(this).closest("form").submit()
}));
$(".widgetContent_print .close").click(function(event){event.preventDefault();
widgetNS.closePane();
widgetNS.hideToolbar()
});
if(!$.isBlank(document.referrer)){$(".leavingInterstitial").find(".serverName").text(document.referrer.replace(/(ht|f)tps?:\/\/(www\.)?/,"").replace(/\/.*$/,""))
}$.live('a:not([href^=#]):not(.noInterstitial):not([rel$="modal"])',"click",function(event){if(widgetNS.interstitial===true){event.preventDefault();
var href=$(this).attr("href");
if($.isBlank(href)||(href.indexOf(location)==0)){return
}if(href.slice(0,1)=="/"){href=location.host+href
}if(!href.match(/^(f|ht)tps?:\/\//)){href="http://"+href
}var $modal=$(".leavingInterstitial");
$modal.find(".leavingLink").attr("href",href).text(href);
$modal.find(".accept.button").attr("href",href);
$modal.jqmShow()
}});
$(".needsInlineView").bind("submit",commonNS.formInliner);
$(".downloadsList .item .type a").downloadToFormCatcher();
widgetNS.ready=true;
if($.device.iphone||$.device.android){_.defer(function(){window.scrollTo(0,1)
});
$dataGrid.bind("full_load",function(){$(".mobileNotice").fadeIn();
setTimeout(function(){$(".mobileNotice").fadeOut()
},10000)
});
$(document).bind("touchmove",function(event){event.originalEvent.preventDefault()
})
}_.defer(function(){$.analytics.trackEvent("widget (v2)","page loaded",document.referrer)
})
});
blist.widget.ghettoMenuButtonImages={normal:"",hover:""};
blist.widget.ghettoHoverHookAdded=false;
blist.widget.addGhettoHoverHook=function(){if(widgetNS.ghettoHoverHookAdded){return
}$(".mainMenuButton").hover(function(){$(this).css("background-image",widgetNS.ghettoMenuButtonImages.hover)
},function(){$(this).css("background-image",widgetNS.ghettoMenuButtonImages.normal)
});
widgetNS.ghettoHoverHookAdded=true
};
blist.widget.setGhettoButtonImage=function(image,src){widgetNS.ghettoMenuButtonImages[image]=src;
if(image=="normal"){$(".mainMenuButton").css("background-image",widgetNS.ghettoMenuButtonImages.normal)
}};