(function(c){var b=function(e,d){return(e?e.split(d||"-")[0]:"")},a=function(e,d){return(e?e.split(d||"-").pop():"")};c.idPrefix=function(d,e){return b(d.id,e)};c.idSuffix=function(d,e){return a(d.id,e)};c.fn.extend({idPrefix:function(d){return b(this.attr("id"),d)},idSuffix:function(d){return a(this.attr("id"),d)}})})(jQuery);(function(e){var b={},k,m,o,j=e.browser.msie&&/MSIE\s(5\.5|6\.)/.test(navigator.userAgent),a=false;e.tooltip={blocked:false,defaults:{delay:200,fade:false,showURL:true,extraClass:"text-tooltip",top:15,left:15,id:"tooltip"},block:function(){e.tooltip.blocked=!e.tooltip.blocked},mouseoverEvent:function(p){var q=e.Event("mouseover");q.pageX=p.pageX;q.pageY=p.pageY;q.FAKE_MOUSEOVER=true;return q}};e.fn.extend({tooltip:function(p){p=e.extend({},e.tooltip.defaults,p);h(p);return this.each(function(){e.data(this,"tooltip",p);this.tOpacity=b.parent.css("opacity");this.tooltipText=this.title;e(this).removeAttr("title");this.alt=""}).bind("mouseover",l).bind("mouseout",f).bind("click",f)},darkTooltip:function(p){return this.tooltip(e.extend({delay:0,showURL:false,id:"black-tooltip",top:-36,left:0,useTarget:true,bodyHandler:function(){return e.htmlEscape(this.tooltipText).split(" ").join("&nbsp;")}},p))},tooltipDisable:function(p){e(document.body).unbind("mousemove.tooltip");e(p||"#"+e.tooltip.defaults.id).hide();return e(this).unbind()},fixPNG:j?function(){return this.each(function(){var p=e(this).css("backgroundImage");if(p.match(/^url\(["']?(.*\.png)["']?\)$/i)){p=RegExp.$1;e(this).css({backgroundImage:"none",filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod=crop, src='"+p+"')"}).each(function(){var q=e(this).css("position");if(q!="absolute"&&q!="relative"){e(this).css("position","relative")}})}})}:function(){return this},unfixPNG:j?function(){return this.each(function(){e(this).css({filter:"",backgroundImage:""})})}:function(){return this},hideWhenEmpty:function(){return this.each(function(){e(this)[e(this).html()?"show":"hide"]()})},url:function(){return this.attr("href")||this.attr("src")}});function h(p){if(b.parent){return}b.parent=e('<div id="'+p.id+'"><h3></h3><div class="body"></div><div class="url"></div></div>').appendTo(document.body).hide();if(e.fn.bgiframe){b.parent.bgiframe()}b.title=e("h3",b.parent);b.body=e("div.body",b.parent);b.url=e("div.url",b.parent)}function c(p){return e.data(p,"tooltip")}function g(p){if(c(this).delay){o=setTimeout(n,c(this).delay)}else{n()}a=!!c(this).track;e(document.body).bind("mousemove.tooltip",d);d(p)}function l(){if(e.tooltip.blocked||this==k||(!this.tooltipText&&!c(this).bodyHandler)){return}k=this;m=this.tooltipText;if(c(this).bodyHandler){b.title.hide();var s=c(this).bodyHandler.call(this);if(s.nodeType||s.jquery){b.body.empty().append(s)}else{b.body.html(s)}b.body.show()}else{if(c(this).showBody){var r=m.split(c(this).showBody);b.title.html(r.shift()).show();b.body.empty();for(var q=0,p;(p=r[q]);q++){if(q>0){b.body.append("<br/>")}b.body.append(p)}b.body.hideWhenEmpty()}else{b.title.html(m).show();b.body.hide()}}if(c(this).showURL&&e(this).url()){b.url.html(e(this).url().replace("http://","")).show()}else{b.url.hide()}b.parent.addClass(c(this).extraClass);if(c(this).fixPNG){b.parent.fixPNG()}g.apply(this,arguments)}function n(){o=null;if((!j||!e.fn.bgiframe)&&c(k).fade){if(b.parent.is(":animated")){b.parent.stop().show().fadeTo(c(k).fade,k.tOpacity)}else{b.parent.is(":visible")?b.parent.fadeTo(c(k).fade,k.tOpacity):b.parent.fadeIn(c(k).fade)}}else{b.parent.show()}d()}function d(p){if(e.tooltip.blocked){return}if(p&&p.target.tagName=="OPTION"){return}if(!a&&b.parent.is(":visible")){e(document.body).unbind("mousemove.tooltip",d)}if(k==null){e(document.body).unbind("mousemove.tooltip",d);return}var q,s,u=false;if(p&&p.target&&(u=c(k).useTarget)){q=e(p.target);s=q.offset()}if(b.parent[0].id!=c(k).id){b.parent[0].id=c(k).id}b.parent.removeClass("viewport-right").removeClass("viewport-bottom");var r=b.parent[0].offsetLeft;var w=b.parent[0].offsetTop;if(p){r=(u?s.left:p.pageX)+c(k).left;w=(u?s.top:p.pageY)+c(k).top;var x="auto";if(c(k).positionLeft){x=e(window).width()-r;r="auto"}b.parent.css({left:r,right:x,top:w})}var y=i(),t=b.parent[0];if(y.x+y.cx<t.offsetLeft+t.offsetWidth){if(u){r=(y.cx<s.left+q.outerWidth()?y.cx-3:s.left+q.outerWidth()-3)-t.offsetWidth}else{r-=t.offsetWidth+20+c(k).left}b.parent.css({left:r+"px"}).addClass("viewport-right")}if(y.y+y.cy<t.offsetTop+t.offsetHeight){w-=t.offsetHeight+20+c(k).top;b.parent.css({top:w+"px"}).addClass("viewport-bottom")}}function i(){return{x:e(window).scrollLeft(),y:e(window).scrollTop(),cx:e(window).width(),cy:e(window).height()}}function f(r){if(e.tooltip.blocked){return}if(o){clearTimeout(o)}k=null;var q=c(this);function p(){b.parent.removeClass(q.extraClass).hide().css("opacity","")}if((!j||!e.fn.bgiframe)&&q.fade){if(b.parent.is(":animated")){b.parent.stop().fadeTo(q.fade,0,p)}else{b.parent.stop().fadeOut(q.fade,p)}}else{p()}if(c(this).fixPNG){b.parent.unfixPNG()}}})(jQuery);(function(g){var b="_acTypingTimeout",d="_acXhr",c="_acIgnoreKeypress",h="_acOn",f="_acOriginalObject",a="_acSawMouseMove",e=0;g.hunchac={defaults:{timeout:200,url:"/ws/ws_search/",queryKey:"query",render:function(l,i,j){var k=g("<ul/>");g.each(l,function(){var m=g('<li class="ac-element">'+this.name+"</li>");g.data(m[0],f,this);k.append(m)});i.html(k)},dropDownOnly:true,jsonListAttr:"docs",xhrFunc:null,containerClass:"yui-skin-sam",wrapClass:"ac-wrap yui-skin-sam",innerClass:"yui-ac-content",data:{},ajaxType:"get"},curInput:null,TYPING_TIMEOUT:b,XHR:d,IGNORE_KEYPRESS:c,AC_ON:h,ORIGINAL_OBJECT:f};g.fn.extend({hunchac:function(i){i=g.extend({},g.hunchac.defaults,i);var j=function(n,l,p){g("body").trigger("off.hunchac");var k=g(i.container),o=(i.jsonListAttr?n[i.jsonListAttr]:n),m=i.render(o,k,p,l);k.show();if(i.loadingClass){p.removeClass("loading")}g("body").hunchacMode(k,p,m||o.length,i)};if(!i.container){i.container=g("<div>",{"class":i.wrapClass,css:i.containerCSS,html:'<div class="ac-container'+(i.containerClass?" "+i.containerClass:"")+'"></div>'}).insertAfter(this).find("div.ac-container")}else{if(i.containerCSS){container.css(i.containerCSS)}}return this.each(function(){var l;function k(m){g.hunchac.curInput=this;l=m.which;var n=g.data(this,d),o=g.data(document.body,h);window.clearTimeout(g.data(this,b));if(n){try{n.abort()}catch(m){}g.data(this,d,null);if(i.loadingClass){g(this).removeClass("loading")}}if(g.data(document.body,c)){return g.data(document.body,c,false)}else{if(m.keyCode==9){return true}else{if(o&&!m.charCode&&(m.keyCode==38||m.keyCode==40)){if(m.timeStamp&&m.timeStamp-e>100){g(this).trigger("keydown.hunchac",[m.keyCode])}return false}else{if(o&&m.charCode<32&&m.keyCode!=8&&m.keyCode!=46){if(m.keyCode==37||m.keyCode==39){return true}if(m.keyCode==13&&!i.dropDownOnly){return true}return false}else{if(o&&m.keyCode==8&&(g.browser.safari||g.browser.msie)){return true}window.clearTimeout(g.data(this,b));g.data(this,b,window.setTimeout(function(){g(m.target).trigger("hunchac")},i.timeout))}}}}return true}g(this).attr("autocomplete","off").keypress(k).keyup(function(m){if(l!=m.keyCode&&m.keyCode>=48&&m.keyCode<=57){k.call(this,m)}}).bind("hunchac",function(){var m=this,o=g(this).val(),n={url:i.url,data:g.extend(i.data||{},i.getData?i.getData():null),type:i.ajaxType,dataType:(i.jsonp?"jsonp":"json"),cache:false,success:function(q,p){if(!q){return null}g.data(m,d,null);return j(q,p,g(m))}};n.data[i.queryKey]=o;if(o){if(i.loadingClass){g(this).addClass("loading")}g.data(this,d,(i.xhrFunc?i.xhrFunc(o,n.success):g.ajax(n)))}else{g(this).hunchacCancel()}}).click(function(){if(g.hunchac.curInput!==null&&this!=g.hunchac.curInput){g("body").trigger("cancel.hunchac")}return false});if(i.autostart&&g(this).valNoPlaceholder()){g(this).trigger("hunchac")}if(i.activate){g(this).bind("activateacInput.hunchac",i.activate)}})},hunchacCancel:function(){return this.each(function(){var j=g.data(this,d);window.clearTimeout(g.data(this,b));if(j){try{j.abort()}catch(i){}}g.data(this,d,null);g("body").trigger("off.hunchac").trigger("cancel.hunchac");g(this).removeClass("loading")})},hunchacMode:function(i,m,q,k){var l=(k.dropDownOnly?0:-1),p=this,j;g.data(document.body,h,true);g("body").one("cancel.hunchac",function(){g("body").trigger("off.hunchac",[true])});g("body").bind("activateac.hunchac",function(){if(j){m.trigger("activateacInput.hunchac",[j,g.data(j,f)]);g("body").unbind("activateac.hunchac")}});g("body").one("off.hunchac",function(r){i.children().hide();g.data(document.body,h,false);g.data(document.body,a,false);m.unbind("keydown.hunchac");g("body").add(window).unbind("click.hunchac").unbind("cancel.hunchac").unbind("activateac.hunchac")});g("body").add(window).bind("click.hunchac",function(){g("body").trigger("cancel.hunchac")});var n=function(){var r=g("li.ac-element",i).removeClass("active").removeClass("yui-ac-highlight");if(l==-1){j=null}else{r=r.slice(l,l+1).addClass("active").addClass("yui-ac-highlight");if(r.size()){j=r[0]}}};n();var o=function(s){var r=g(s.target).closest("li.ac-element");return r.size()?r[0]:null};i.mousemove(function(r){g.data(document.body,a,true)});i.mouseover(function(s){if(s.target==i[0]||!g.data(document.body,a)){return}var r=o(s);if(r){l=g("li.ac-element",i).index(r);n()}}).bind("click.hunchac",function(s){var r=o(s);if(r){g("body").trigger("activateac.hunchac");g.data(document.body,c,false)}return false});m.bind("keydown.hunchac",function(t,s){var r=s||t.which;if(r==40||r==38){if(r==40){l=l>=q-1?(k.dropDownOnly?0:-1):l+1}else{l=l<=0?(!k.dropDownOnly&&l==0?-1:q-1):l-1}if(!s){e=t.timeStamp}n();return false}else{if(r==27){g("body").trigger("cancel.hunchac")}else{if(r==13){if(!k.dropDownOnly&&l==-1){return true}g("body").trigger("activateac.hunchac")}else{if(r==8&&(g.browser.safari||g.browser.msie)){g.data(this,b,window.setTimeout(function(){g(t.target).trigger("hunchac")},k.timeout))}return true}}}g.data(document.body,c,true)})}})})(jQuery);(function(e){e.facebox=function(x,v,w){push=!w&&i();e.facebox.settings.staticOverlay=(!x.clearable&&!~(" "+v+" ").indexOf(" clearable "))?true:false;e.facebox.loading(push);if(x.ajax){a(x.ajax)}else{if(x.post){b(x.post,x.data)}else{if(x.image){p(x.image,null,push)}else{if(x.div){f(x.div,null,push)}else{if(e.isFunction(x)){x.call(e)}else{e.facebox.reveal(x,v,push)}}}}}};e.clearableFacebox=function(x,v,w){return e.facebox(x,(v?v+" ":"")+"clearable",w)};e.extend(e.facebox,{settings:{opacity:0.4,overlay:true,staticOverlay:false,loadingImage:"/media/img/loading-32px.gif",closeImage:"/media/js/facebox/closelabel.gif",imageTypes:["png","jpg","jpeg","gif"],pushHtml:'<div class="popup-frame"></div>',faceboxHtml:'    <div id="facebox" style="display:none;">       <div class="popup">         <table>           <tbody>             <tr>               <td class="b tl"/><td class="b"/><td class="b tr"/>             </tr>             <tr>               <td class="b"/>               <td class="body">                 <div class="content">                 </div>               </td>               <td class="b"/>             </tr>             <tr>               <td class="b bl"/><td class="b"/><td class="b br"/>             </tr>           </tbody>         </table>       </div>     </div>'},loading:function(w){q();if(e("#facebox .body>.loading").length==1){return true}else{if(e("#facebox .popup-frame>.loading").length==1){return true}}r();var z='<div class="loading"><img src="'+e.facebox.settings.loadingImage+'"/></div>',y;if(w){if(d()){e("#facebox .content #slide-frame-inner").append(e(e.facebox.settings.pushHtml));g().append(z);l();s()}else{e("#facebox .content").append(e(e.facebox.settings.pushHtml));g().append(z)}}else{e("#facebox .content").empty();e("#facebox .body").children().hide().end().append(z);var v=e("#content"),x=e("#facebox");x.css({top:c()[1]+(o()/10),left:v.offset().left+~~((v.width()-(x.width()||410))/2)}).show()}e(document).bind("keydown.facebox",function(A){if(e.facebox.settings.noEscape){return true}if(A.keyCode==27){e.facebox.close()}return true});e(document).trigger("loading.facebox")},reveal:function(x,v,w){e(document).trigger("beforeReveal.facebox");if(w){e("#facebox .loading").remove();g().append(x).fadeIn("normal");s()}else{if(v){e("#facebox .content").addClass(v)}e("#facebox .content").append(x);e("#facebox .loading").remove();e("#facebox .body").children().fadeIn("normal")}e("#facebox").css("left",e(window).width()/2-(e("#facebox table").width()/2));e(document).trigger("reveal.facebox").trigger("afterReveal.facebox")},reAlign:function(v){var w={left:e(window).width()/2-(e("#facebox table").width()/2)};if(!v){w.top=c()[1]+(o()/10)}e("#facebox").css(w)},html:function(w,v){e("#facebox .content").html(w)},close:function(){e(document).trigger("close.facebox");return false},recursive_close:j,isPush:i});e.fn.facebox=function(w){q(w);var v=i();function x(){e.facebox.loading(v);var y=this.rel.match(/facebox\[?\.(\w+)\]?/);if(y){y=y[1]}f(this.href,y,v);return false}return this.click(x)};function k(){return e("#facebox .popup-frame")}function g(){return e("#facebox .content .popup-frame:last")}function i(){return e("#facebox .popup-frame").size()>0}function d(){return true}function u(v){e("#slide-frame-inner").animate({left:"+=630px"},"normal",v)}function l(v){e("#slide-frame-inner").animate({left:"-=630px"},"normal",v)}function s(){var v=e("#slide-crumbs");if(v.length){var x=[],w=k();if(w.length<=1){v.html("&nbsp;")}else{w.each(function(y){var A=e(this),z=A.data("title");if(!z){z=A.find("h1:first");if(z.length){z=z.text()}else{z=A.find("h2:first");if(z.length){z=z.text()}else{z=A.find("h3:first");if(z.length){z=z.text()}else{z=null}}}if(z){if(z.lastIndexOf(":")==z.length-1){z=z.slice(0,z.length-1)}if(z.length>30){z=z.slice(0,30)+"…"}A.data("title",z)}}x.push(z||"…")});v.html(e.map(x,function(y,z){if(z<x.length-1){return'<a href="#" onclick="$.facebox.recursive_close('+(x.length-1-z)+');return false">'+y+"</a>"}else{return"<strong>"+y+"</strong>"}}).join(" &gt; "))}}}function j(v){var w=function(){if(v-->0){e(document).trigger("close.facebox",w)}return false};return w()}function q(w){if(e.facebox.settings.inited){return true}else{e.facebox.settings.inited=true}e(document).trigger("init.facebox");n();var v=e.facebox.settings.imageTypes.join("|");e.facebox.settings.imageTypesRegexp=new RegExp("."+v+"$","i");if(w){e.extend(e.facebox.settings,w)}e("body").append(e.facebox.settings.faceboxHtml);e("#facebox .close, #facebox .cancel").live("click",e.facebox.close);e("#facebox .close_image").attr("src",e.facebox.settings.closeImage)}function c(){var w,v;if(self.pageYOffset){v=self.pageYOffset;w=self.pageXOffset}else{if(document.documentElement&&document.documentElement.scrollTop){v=document.documentElement.scrollTop;w=document.documentElement.scrollLeft}else{if(document.body){v=document.body.scrollTop;w=document.body.scrollLeft}}}return new Array(w,v)}function o(){var v;if(self.innerHeight){v=self.innerHeight}else{if(document.documentElement&&document.documentElement.clientHeight){v=document.documentElement.clientHeight}else{if(document.body){v=document.body.clientHeight}}}return v}function n(){var v=e.facebox.settings;v.loadingImage=v.loading_image||v.loadingImage;v.closeImage=v.close_image||v.closeImage;v.imageTypes=v.image_types||v.imageTypes;v.faceboxHtml=v.facebox_html||v.faceboxHtml}function f(w,v,y){if(w.match(/#/)){var x=window.location.href.split("#")[0];var z=w.replace(x,"");e.facebox.reveal(e(z).clone().show(),v,y)}else{if(w.match(e.facebox.settings.imageTypesRegexp)){p(w,v,y)}else{a(w,v)}}}function p(w,v,x){e.facebox.settings.staticOverlay=false;var y=new Image();y.onload=function(){e.facebox.reveal((x?'<h1 class="br">View Image:</h1>':"")+'<div class="image"><img src="'+y.src+'" /></div><div class="footer"><a class="cancel" href="#">'+(x?"Go back":"Close")+"</a></div>",v,x)};y.src=w}function b(w,x,v){e.post(w,x,function(y){e.facebox.reveal(y,v)})}function a(w,v){e.get(w,function(x){e.facebox.reveal(x,v)})}function m(){return e.facebox.settings.overlay==false||e.facebox.settings.opacity===null}function r(){if(m()){return}if(e("#facebox_overlay").length==0){e("body").append('<div id="facebox_overlay" class="facebox_hide"></div>')}if(!e("#facebox_overlay").hasClass("facebox_overlayBG")){e("#facebox_overlay").hide().addClass("facebox_overlayBG").css("opacity",e.facebox.settings.opacity).click(function(){if(!e.facebox.settings.staticOverlay){e(document).trigger("close.facebox")}}).fadeIn(200)}return false}function t(){if(m()){return}e("#facebox_overlay").fadeOut(200,function(){e("#facebox_overlay").removeClass("facebox_overlayBG");e("#facebox_overlay").addClass("facebox_hide");e("#facebox_overlay").remove()});return false}var h=false;e(document).bind("close.facebox",function(x,w,y){if(typeof(y)=="undefined"&&e.isFunction(w)){y=w,w=false}if(h&&!y&&!w){return}h=true;if(!w&&k().size()>1){var v=function(){g().remove();s();if(y){y()}h=false};if(d()){u(v)}else{v()}}else{e(document).unbind("keydown.facebox");e("#facebox").fadeOut(function(){e("#facebox .content").removeClass().addClass("content").empty();t();e("#facebox .loading").remove();if(y){y()}h=false})}})})(jQuery);(function(b,c){var a=function(f,d,e){return function(g){if(d){b(this).parents("div.buttons:first").addClass("loading")}return f.call(this,g,e)}};b.confirm=function(g){g=b.extend({},b.confirm.settings,g);var l=(g.text_fn?(g.text_fn.call(g.self||this)):g.text),j=(g.title_fn?(g.title_fn.call(g.self||this)):g.title),h=(g.html_fn?(g.html_fn.call(g.self||this)):g.html),f=a(g.left,g.animate,g),k=a(g.right,g.animate,g),e=b("<div>"),m=g.center_buttons?"clr text-center":"buttons",d;if(g.can_confirm&&!g.can_confirm()){return}if(j){e.append(b("<div>",{"class":"header"}).append(b("<p>",{"class":"strong",text:j})))}if(l||h){e.append(b("<div>",{text:l,html:h}))}d=b("<div>",{"class":m+" br-top footer",html:'<span class="indicator">loading...</span>'});var i=false;if(g.right){d.append(b("<button />").addClass(g.right_class||"").append(b("<span />").text(g.right_text)).click(function(n){if(i){return false}i=true;return k.call(g.self||this,n)}))}if(g.center_buttons){d.prepend("&nbsp;&nbsp;")}d[g.center_buttons?"prepend":"append"](b("<button />").addClass(g.left_class||"").append(b("<span />").text(g.left_text)).click(function(n){if(i){return false}i=true;return f.call(g.self||this,n)}));if(g.animate){d.append(b('<span class="indicator">loading...</span>'))}e.append(d);if(g.can_close){e.append('<a href="#" class="close'+(j?" has-header":"")+'">close</a>')}b.facebox(e)};b.confirm.settings={text:"Are you sure you want to continue?",sub_text:"",left_text:"Yes",right_text:"No",can_close:true};b.extend(b.confirm,{close:function(){b(document).trigger("close.facebox");return false},loading:function(){b("#facebox").find("div.footer").addClass("loading")}});b.fleck=function(d,e,f){b.facebox({post:d,data:{rel_type:e,rel_id:f}});return false};b.fn.extend({confirm:function(e,f){if(f===c){f=e;e=c}function d(){f.self=this;b.confirm(f);return false}return e?this.delegate(e,"click",d):f.live?this.live("click",d):this.click(d)},fleck:function(d,g,h,f){var e=function(){return b.fleck(d,g,b.isFunction(h)?h.call(this):h)};if(f===true){return b(this).live("click",e)}else{return b.each(this,function(){b(this).click(e)})}}})})(jQuery);(function(c){c.getQueryParams=function(f){f=f||document.location.href;f=f.split("#")[0].split("?")[1]||"";if(f.substring(0,1)=="?"){f=f.substring(1,f.length)}function k(i){return decodeURIComponent(i.split("+").join(" "))}var m={},l,h,j;if(f){f=f.split("#")[0].split("&");for(var g=0,e=f.length;g<e;g++){l=f[g].split("=");h=k(l[0]);j=l[1]?k(l[1]):"";m[h]=j}}return m};c.cleanParam=function(e,g){var f=/(^|&)([^=]*)=(&|$)/g;e=c.param(e).replace(f,"$1$2$3").replace(f,"$1$2$3");return(g&&e?"?":"")+e};c.addError={defaults:{msg:"This field is required",error_class:"errorlist",where:"before"},clearAll:function(e){c("."+(e?e:"errorlist")).remove()},addAll:function(f,e){c.each(f,function(h,g){c("#id_"+h).addError(c.extend({},e,{msg:g}))})}};c._hunchError={defaults:{msg:"Hunch encountered an error.<br/>Please Refresh the page to retry.",timeoutMsg:"Hunch encountered a timeout error.<br/>Please Refresh the page to retry."}};c.fn.extend({addError:function(e){e=c.extend({},c.addError.defaults,e);return this.each(function(){var h=c(this),g,f=0;h.parent().children("."+e.error_class).remove();g=c("<ul/>").addClass(e.error_class);if(!c.isArray(e.msg)){e.msg=[e.msg]}for(;f<e.msg.length;f++){g.append(c("<li/>").html(e.msg[f]))}if(h.hasClass("error-in-parent")||e.where_parent){h.parent()[e.where_parent||"prepend"](g)}else{h[e.where](g)}})},remError:function(e){e=c.extend({},c.addError.defaults,e);return this.each(function(){c(this).parent().children("."+e.error_class).remove()})},hunchError:function(h,i){if(h===true){h=null;i=true}if(!i){return false}if(h&&h.textStatus=="abort"){return false}var e=(h.msg==null&&h.textStatus=="timeout");h=c.extend({},c._hunchError.defaults,h);if(e){h.msg=c._hunchError.defaults.timeoutMsg}var g=c(this),j=h.scrollTop||g.offset().top,f=c('<div class="hunch-error"/>').html(h.msg);g.prepend(f);window.scrollTo(0,j);if(h.fade){window.setTimeout(function(){f.fadeOut();f=null},h.fade)}else{f=null}}});c.hunchError=function(e,f){if(e===true){e=null;f=true}e=c.extend({scrollTop:0},e);c("body").hunchError(e,f)};c.ajaxError=function(e,f){if(e&&e.status===0&&f===""){return}c.hunchError({textStatus:f},true)};var d={};c.shortenUrl=function(f,g,e){if(e){setTimeout(function(){g(f)},1)}else{if(d[f]){setTimeout(function(){g(d[f])},1)}else{c.ajax({url:"/ws/shorten-url/",data:{url:f},type:"post",dataType:"json",error:function(h,i){c.hunchError({textStatus:i},true);g(f,true)},success:function(h){g(d[f]=h.url)}})}}return false};var b="http://hunch.com/media/img/loading-32px.gif";c.clickSharePreload=function(){(new Image).src=b};var a=function(g,e){var f=window.open("","_blank",(e&&g?"height="+e+",width="+g:""));f.document.write('<html><head><title>loading...</title></head><body><img src="'+b+'" /></body></html>');f.document.close();return f};c.clickFacebook=function(g,h,f){g=g||window.location.href;h=typeof(h)=="undefined"?document.title:h;var e=a(625,350);c.shortenUrl(g,function(i){e.location="http://www.facebook.com/sharer.php?u="+encodeURIComponent(i)+(h?"&t="+encodeURIComponent(h):"")},f);return false};c.clickTwitter=function(f,h,i,g){h=h||window.location.href;i=i||"";var e=a(550,370);c.shortenUrl(h,function(j){f=f+(f?" ":"")+j+(i?" ":"")+i;e.location="http://twitter.com/share?text="+encodeURIComponent(f)+"&url="},g);return false};c.clickEmail=function(i,e,h,g,f){h=h||window.location.href;g=g||"";c.shortenUrl(h,function(j){e=e+(e?" ":"")+j+(g?" ":"")+g;window.location="mailto:?subject="+encodeURIComponent(i)+"&body="+encodeURIComponent(e).replace("%0A","%0D%0A")},f);return false};
/*! From mustache.js - See http://mustache.github.com/ for more info. */
c.htmlEscape=function(e){e=String(e===null?"":e);return e.replace(/&(?!\w+;)|["'<>\\]/g,function(f){switch(f){case"&":return"&amp;";case"\\":return"\\\\";case'"':return"&quot;";case"'":return"&#39;";case"<":return"&lt;";case">":return"&gt;";default:return f}})}})(jQuery);(function(b){b._hunchloader={defaults:{},ajax:{type:"post",timeout:10000,dataType:"json"}};b.postLoader=function(d,e,c){return a(null,d,e,c,"post")};b.getLoader=function(d,c){return a(null,d,null,c,"get")};b.fn.extend({postLoader:function(d,e,c){return a(this,d,e,c,"post")},getLoader:function(d,c){return a(this,d,null,c,"get")}});var a=function(f,e,h,c,g){c=b.extend({},b._hunchloader.defaults,c);var d=b.extend({},b._hunchloader.ajax,c.ajax);if(c.cache===false){d.cache=false}else{if(!c.cache&&g.toLowerCase()=="get"){d.cache=false}}if(c.timeout){d.timeout=c.timeout}if(c.thisLoader){c.thisLoader.addClass("loading")}var i;if(f&&!c.allowConcurrent){i=f.get(0);if(i){if(i.loading){return false}i.loading=true}f.addClass("loading")}if(e){d.url=e}if(h){d.data=h}if(g){d.type=g}d.error=function(j,k){if(c.error){c.error(j,k)}b.hunchError()};d.success=function(l,m){if(c.success){var j=c.success(l,m);if(j===false){return}}if(l.error){return b.options.error()}else{if(c.thisLoader){c.thisLoader.removeClass("loading")}if(f){f.removeClass("loading");if((l.html=b.trim(l.html))){if(c.replaceWith){var k=b(l.html);f.replaceWith(k);k.addClass("loading").removeClass("loading")}else{f.html(l.html)}}}if(l.replace){b.each(l.replace,function(){if(this.html!==null){b(this.slct).html(this.html)}})}}};d.complete=function(j,k){if(c.complete){c.complete(j,k)}if(i){i.loading=false}};b.ajax(d);return false}})(jQuery);(function(c){c.ajaxFileUpload=function(f){f=c.extend({error:c.noop},c.ajaxSettings,f,{dataType:"json"});var i=new Date().getTime(),g=b(i,f.fileElementId),h=d(i,f.secureuri);try{g.attr("action",f.url).attr("method","POST").attr("target",h.attr("id")).submit()}catch(e){f.error(null,e)}h.load(function(){try{var l=h.get(0);var o=l.contentWindow?l.contentWindow.document:l.contentDocument.document;var n=o.body?o.body.innerHTML:null;var k="success";var m=a(n);if(f.success){f.success(m,"success")}}catch(j){if(f.error){f.error(null,j)}return}});return{abort:function(){h.remove()}}};function a(e){if(e.substr(1,33)=="<h1>Request Entity Too Large</h1>"){e={valid:false,error:"Uploaded file is too large, please select a smaller file."}}else{e=e.replace(/^<pre[^>]*>/gi,"").replace(/<\/pre>$/gi,"");e=c.parseJSON(e)}return e}function d(h,e){var g;var f="jUploadFrame"+h;if(window.ActiveXObject){g=document.createElement('<iframe id="'+f+'" name="'+f+'" />');if(typeof e=="boolean"){g.src="javascript:false"}else{if(typeof e=="string"){g.src=e}}}else{g=document.createElement("iframe");g.id=f;g.name=f}g.style.position="absolute";g.style.top="-1000px";g.style.left="-1000px";document.body.appendChild(g);return c(g)}function b(k,g){var j="jUploadForm"+k;var f="jUploadFile"+k;var h=c("<form>",{action:"",method:"POST",name:j,id:j,enctype:"multipart/form-data",encoding:"multipart/form-data"});var e=c("#"+g);var i=e.clone();e.attr("id",f);e.before(i);e.appendTo(h);return h.css("position","absolute").css("top","-1200px").css("left","-1200px").appendTo("body")}})(jQuery);(function(f){f.fileupload={defaults:{auto_id:"id_",url:"/teach/ajax-image-upload/",bg:null},uploads_count:0,getUploadsCount:function(){return f.fileupload.uploads_count},incUploadsCount:function(){f.fileupload.uploads_count+=1},decUploadsCount:function(){f.fileupload.uploads_count-=1},isUploading:function(){return f.fileupload.getUploadsCount()>0}};f.fn.extend({fileupload:function(i){i=f.extend({},f.fileupload.defaults,i);return this.each(function(m,n){var l=f(n);if(l.attr("type")=="file"){var k=l.attr("name").split("-"),j,p;if(k.length==1){j="",k=k[0]}else{if(k.length==2){j=k[0]+"-",k=k[1]}else{return}}p=i.auto_id+j+k;l.change(function(){return a(i.url,j,k,p,i.container,i.bg,i.callback,i.error_selector)}).bind("showFileInput",function(){c(p)}).bind("hideFileInput",function(){b(p)}).bind("presetFileInput",function(q,o){b(p,o)}).bind("determineFileInput",function(){e(p)});l.trigger("determineFileInput")}})}});function a(i,r,j,l,k,o,q,n){var p;if(n){p=f(n)}else{$error_li=f("<li>");$error_ul=f('<ul class="errorlist">');$error_ul.append($error_li);f("#"+l).before($error_ul);p=$error_li}f.fileupload.incUploadsCount();f("#"+l+"+.ajax-loader",k).remove();f("#"+l,k).after(f('<img class="ajax-loader" style="padding-left:8px;"/>').attr("src","/media/img/ajax-loader-form"+({white:"-w"}[o]||"")+".gif"));h(p);var m=i;if(r){m+="?prefix="+r.substr(0,r.length-1)}f.ajaxFileUpload({url:m,secureuri:false,fileElementId:l,dataType:"json",success:function(t,s){f("#"+l+"+.ajax-loader",k).remove();if(typeof(t.error)!="undefined"){if(t.error!=""||!t.valid){d(t.error,p)}else{f("#"+l+"_url",k).attr("value",t.image_url);f("#"+l+"_id",k).attr("value",t.image_id);f("#"+l+"_image_id",k).attr("value",t.image_image_id);f("#"+l+"_name",k).attr("value",t.image_name);b(l);if(q){q(t,s)}}}f("#"+l).change(function(){return a(i,r,j,l,k,o,q,n)});f.fileupload.decUploadsCount()},error:function(t,s,u){f("#"+l+"+.ajax-loader",k).remove();if(window.console&&window.console.log){window.console.log("File upload javascript error");window.console.log(s);window.console.log(u)}f("#"+l).change(function(){return a(i,r,j,l,k,o,q,n)});f("body").append(t.repsonseText);f.fileupload.decUploadsCount()}});return false}function g(i){if(i){return i.replace(/</i,"&lt;").replace(/>/i,"&gt;").replace(/\\n/i,"<br />")}else{return i}}function e(i){if(f("#"+i+"_name").val()){b(i)}}function b(k,i){f("#"+k).hide();var j="uploaded-text-"+k;if(!f("#"+j).size()){f("#"+k).after(f("<span/>").attr("id",j))}f("#"+j).html("").append("using <em>"+(i?g(i):g(f("#"+k+"_name").val()))+"</em> ").append(f('<a href="javascript:void(0)"/>').html("change").click(function(){c(k)})).show()}function c(i){f("#uploaded-text-"+i).hide();f("#"+i).show()}function h(i){i.empty()}function d(j,i){h(i);i.html(j)}})(jQuery);(function(a,b){a.flag={defaults:{url:"/ws/flag/",max_msg:400},open:false};a.fn.flag=function(c,d){if(typeof(c)!="string"&&d){d=c;c=null}d=a.extend({},a.flag.defaults,d);function e(j){j.preventDefault();var i=a(this),f=i.data("type"),h=i.data("object_id");if(f&&h){var g={type:f,object_id:h};a.flag.open=true;a.facebox(function(){function k(m,n){if(m.error){a.ajaxError()}else{m.html&&a.facebox(m.html);if(m.success){window.setTimeout(function(){a(document).trigger("close.facebox")},4000)}else{var l=a("#facebox");l.find("textarea").remainingMulti(null,d.max_msg);l.find("form").submit(function(o){o.preventDefault();if(this.active){return}this.active=true;a.ajax({url:d.url,data:a(this).addClass("loading").serialize(),type:"post",dataType:"json",error:a.ajaxError,success:k})})}}}a.ajax({url:d.url,data:g,dataType:"json",error:a.ajaxError,success:k})})}}return c?this.delegate(c,"click",e):d.live?this.live("click",e):this.click(e)};a(document).bind("clear.flag",function(){if(a.flag.open){a.flag.open=false;a(document).trigger("close.facebox")}});a(document).bind("close.facebox",function(){a.flag.open=false})})(jQuery);(function(b){b.placeholder={defaults:{ignore:(navigator.userAgent.toLowerCase().indexOf("safari")>=0)}};b.fn.extend({placeholder:function(d){var e=b(window);d=b.extend({},b.placeholder.defaults,d);if(d.ignore){return this}return this.each(function(){var f=b(this),g=function(){if(f.val()==f.attr("placeholder")){a(f)}return true};if(f.attr("placeholder")!=null){if(f.val()==""||f.val()==f.attr("placeholder")){c(f)}if(!d.ignoreSubmits){f.parents("form").submit(g)}f.blur(function(){if(f.val()==""){c(f)}}).focus(function(){if(f.val()==f.attr("placeholder")){a(f)}}).keydown(function(){if(/(^|\s)placeholder(\s|$)/.test(this.className)){a(b(this))}});f.bind("clearPlaceholder",function(){if(f.val()==f.attr("placeholder")){return a(b(this))}else{return b(this)}});f.bind("setPlaceholder",function(){if(f.val()==""){return c(b(this))}else{return b(this)}});f.bind("resetPlaceholder",function(){if(f.hasClass("placeholder")||f.val()==""){return c(b(this))}else{return b(this)}});e.unload(g)}})},valNoPlaceholder:function(){var d=b(this);if(d.val()==d.attr("placeholder")){return""}else{return d.val()}}});function c(d){return d.addClass("placeholder").val(d.attr("placeholder"))}function a(d){return d.val("").removeClass("placeholder")}})(jQuery);(function(d){var h=".input-wrapper",f=[h+">input.text",h+">textarea"],g=f.length,e;function c(i){var l=d(this),k=l.parent(h);return k[i===true||l.val()?"addClass":"removeClass"]("filled")}function j(){c.call(this).addClass("focus")}function a(){c.call(this).removeClass("focus")}function b(i){var k=i.keyCode;((47<k&&k<91)||(95<k&&k<112)||(185<k&&k<223))&&c.call(this,true)}d.fn.prepareInput=function(){return this.each(c)};for(e=0;e<g;e++){d(f[e]).live("focus",j).live("blur",a).live("keyup",c).live("click",c).live("keydown",b).live("update.placeholder",c)}d(function(){for(e=0;e<g;e++){d(f[e]).prepareInput()}})})(jQuery);(function(a){a.hunchtoggle={defaults:{live:false,setClass:"is-set",setTrue:{url:"",text:""},setFalse:{url:"",text:""},animate:false,is_button:false}};a.savetoggle={setClass:"saved",setTrue:{url:"/feed/ws/rate/",html:'<em>saved for later</em><em class="unsave">remove save</em>',clickedClass:"clicked-save"},setFalse:{url:"/feed/ws/rate/",html:"save for later",clickedClass:"clicked-saved"},getData:function(){return{type:"save",result_id:a(this).data("result_id")}}};a.fn.extend({hunchtoggle:function(d){d=a.extend({},a.hunchtoggle.defaults,d);if(d.setTrueCallback){d.setTrue.callback=d.setTrueCallback;delete d.setTrueCallback}if(d.setFalseCallback){d.setFalse.callback=d.setFalseCallback;delete d.setFalseCallback}function c(f,g,e){if(d.is_button){e?f.children("span").html(e):f.children("span").text(g)}else{e?f.html(e):f.text(g)}return f}var b=function(p,o){if(!this.clicked){this.clicked=true;var r=this,k=a(this),g,q,l;var i=k.hasClass(d.setClass);var f=(i?d.setFalse:d.setTrue);g=f.url;q=f.text;if(d.data){l=d.data}else{if(d.getData){l=d.getData(r,!i)}else{if(f.data){l=f.data}else{if(f.getData){l=f.getData(r)}else{var n="Did not specify data or getData on the toggle call for this elt!";throw new Error(n,n)}}}}var m=k.hasClass("action");var s=k.hasClass("action-favorite");if(d.animate){if(!m){k.addClass("action")}if(!s){k.addClass("action-favorite")}c(k.addClass("action-loading"),"loading...")}if(f.clickedClass){k.addClass(f.clickedClass)}var j={url:g,data:l,type:"post",dataType:"json",timeout:10000,success:function(v,w){if(f.clickedClass){k.removeClass(f.clickedClass)}if(v.status=="success"){if(i){c(k.removeClass(d.setClass),f.text,f.html)}else{c(k.addClass(d.setClass),f.text,f.html)}}else{if(v.status=="limit"){if(d.animate){c(k,d.setFalse.text,d.setFalse.html)}a.hunchError({msg:"You have reached the limit for this action.<br />Sorry for the inconvenience.",fade:4000},true)}else{a.hunchError(true)}}var t=[f.callback,d.callback];for(var u=0,e=t.length;u<e;u++){t[u]&&t[u].call(r,v.status=="success",!i)}},error:function(e,t){a.hunchError()},complete:function(e,t){r.clicked=false;if(d.animate){if(!m){k.removeClass("action")}if(!s){k.removeClass("action-favorite")}k.removeClass("action-loading")}}};if(o){var h={status:"success"};j.success(h);j.complete(h);this.clicked=false;return false}if(d.confirmTrue&&!i){d.confirmTrue.toggleRequest=j;d.confirmTrue.self=this;a.confirm(d.confirmTrue)}else{if(d.confirmFalse&&i){d.confirmFalse.toggleRequest=j;d.confirmFalse.self=this;a.confirm(d.confirmFalse)}else{a.ajax(j)}}}return false};if(d.live){this.live("click",b);this.live("hunchtoggle",b)}else{this.click(b);this.bind("hunchtoggle",b)}},followtoggle:function(d){var c={setClass:"following",setTrue:{url:"/people/ws/follow/",html:'<s></s><em>Following</em><em class="unfollow">Unfollow</em>',clickedClass:"clicked-follow"},setFalse:{url:"/people/ws/unfollow/",html:"Follow",clickedClass:"clicked-following"},getData:function(g){var f=a(g);return{user_id:f.data("user_id")}}};d=a.extend(c,d);if(d.followClickTrackPage){function e(){mpq.push(["track","follow_click",{page:d.followClickTrackPage}])}if(d.setTrueCallback){var b=d.setTrueCallback;d.setTrueCallback=function(g,f,h){e();b.call(this,g,f,h)}}else{d.setTrueCallback=e}}return this.hunchtoggle(d)},savetoggle:function(b){b=a.extend({},a.savetoggle,b);return this.hunchtoggle(b)}})})(jQuery);(function(a){a.remainingCount=function(b){return b?(b+"").replace(/\r\n/g,"\n").length:0};a.fn.extend({remaining:function(d,b,c,e){return this.remainingMulti(d,b,c,e)},remainingMulti:function(e,b,c,d){return this.each(function(){var i=a(this),g;if(!e){var h=i.closest(".input-wrapper");g=a("<p>",{"class":"remaining"}).insertAfter(h.length?h:i)}else{g=a.isFunction(e)?e.call(this,this):e}function f(){var j=a(this).remainingCount(),k=j>b?'<span class="warn-text"><strong>'+(j-b)+"</strong> "+(d||"characters too many")+"</span>":"<strong>"+(b-j)+"</strong> "+(c||"characters remaining");g.html(k)}i.change(f).keyup(f);f.call(this)})},remainingCount:function(){return a.remainingCount(this.valNoPlaceholder())}})})(jQuery);(function(a){a.hoverHelper={defaults:{className:"hover-helper",htmlWrapper:"#container",content:null,lineHeight:18},starDefaults:{content:"<p><strong>Are we right?</strong><br />If not, hover and click the stars to correct us.</p>",leftExtra:-34,onClose:function(){a.post("/ws/saw-stars-help/")}}};a.fn.extend({hoverHelper:function(b){b=a.extend(a.hoverHelper.defaults,b);var c=a(b.htmlWrapper);return a(this).each(function(){var g=a(this),f=a("<div />",{"class":b.className}).appendTo(b.htmlWrapper);function h(i){return function(j){if(i){j.preventDefault()}if(f){f.remove();f=null;g=null;if(b.onClose){b.onClose()}}}}g.find("a").click(h(1));f.append(a("<div />",{"class":"content"}).html(b.content)).append(a("<a />",{"class":"close",href:"#",text:"X"}).click(h(0))).append('<b class="arrow"></b>');function d(){if(f===null||g===null){return}if(g.filter(":visible").length){f.show()}else{f.hide();return}var k=g.offset(),j=c.offset(),i=f.outerHeight();k.top=k.top-j.top;k.left=k.left-j.left;f.css({top:(k.top-i-b.lineHeight+2)+"px",left:(k.left+(b.leftExtra||0))+"px"})}(function e(){if(f&&g){d();window.setTimeout(e,800)}})();f.bind("position.hoverHelper",d);g.bind("position.hoverHelper",d)})},starHelper:function(b){return a(this).hoverHelper(a.extend({},a.hoverHelper.starDefaults,b))}})})(jQuery);
/*! Copyright (C) 2011, Hunch.com */
(function(f){var e={"0":"Not interested&nbsp;","5":"I <b>love</b> this&nbsp;","4":"I <b>like</b> this&nbsp;","3":"It’s <b>okay</b>&nbsp;","2":"I <b>dislike</b> this&nbsp;","1":"I <b>hate</b> this&nbsp;"};function g(h){return e[""+h]||""}function c(h){return function(t,i,m){t.preventDefault();var k=f(this),j=k.closest(".stars"),n=j.find(".si-cur"),s=n.attr("class"),v=n.attr("style"),p=j.data("id"),l=j.siblings(".stars-text"),q=n.hasClass("si-u"),r,u;n.attr("style","").attr("class","si-cur si-u si"+h);if(h==0){n.parent().removeClass("si-percent-wrap")}if(l.length){r=l.html();u=g(h);l.data("orig_text",u);l.html(u)}function o(w,x){n.attr("class",s).attr("style",v);if(l.length){l.data("orig_text",r).html(r)}f.hunchError({textStatus:x},true);if(h==0){n.parent().addClass("si-percent-wrap")}}if(i!==true&&!j.data("no_ajax")){f.ajax({url:"/ws/ws_train_item/",type:"post",dataType:"json",data:{result_id:p,num_stars:h,source:"refiner"},success:function(w,x){if(!w.ok){o(w,x)}else{f(document).trigger("starsuccess.hunch",[j,p,h,q])}},error:o})}else{if(!m){f(document).trigger("starsuccess.hunch",[j,p,h,q])}}!m&&window.mpq&&window.mpq.push(["track","rate_item",{rating:h}])}}function d(h){return function(i){var k=f(this).closest(".stars").siblings(".stars-text"),j=k.data("orig_text");if(!j){k.data("orig_text",(j=k.html()))}if(i.type=="mouseover"){k.html(g(h))}else{k.html(j)}}}var b=0,a=/(iPad|iPhone)/i.test(navigator.userAgent)?"touchstart":"click";for(;b<6;b++){f("a.si"+b).live(a+" starrate.hunch",c(b)).live("mouseover mouseout",d(b))}})(jQuery);(function(a){a.fn.imageScaleLoader=function(d,c,b){if(a.isPlainObject(d)&&!c&&!b){b=d;d=null}b=a.extend({width:d||120,height:c||100,placeholder_url:"/media/img/t.png",attr:"src"},b);return this.each(function(){var f=new Image(),e=a(this),g=e.attr(b.attr);if(g&&!a.data(this,"_imageScaleLoader")){a.data(this,"_imageScaleLoader",true);if(e.attr("src")!=b.placeholder_url){e.attr("src",b.placeholder_url)}f.onload=function(){var k=this.height,i=this.width,j,l,m;if(parseInt(i)>b.width||parseInt(k)>b.height){j=i/b.width;l=k/b.height;m=(j<l?l:j);i=i/m;k=k/m}i=parseInt(i);k=parseInt(k);e.attr("src",this.src).attr("width",i).attr("height",k).css({width:i+"px",height:k+"px"});if(b.onload){b.onload.call(e.get(0),i,k)}};f.src=g}})}})(jQuery);$.cookies={create:function(c,d,f,e){var a,b;e=e||"/";if(f){b=new Date();b.setTime(b.getTime()+(f*1000));a="; expires="+b.toGMTString()}else{a=""}document.cookie=c+"="+d+a+"; path="+e},read:function(d){var f=d+"=",b=document.cookie.split(";"),g;for(var e=0,a=b.length;e<a;e++){g=b[e];while(g.charAt(0)==" "){g=g.substring(1,g.length)}if(g.indexOf(f)===0){return g.substring(f.length,g.length)}}return null},erase:function(a,b){this.create(a,"",-1,b)}};(function(b){b.fn.extend({elastic:function(d){var a=["paddingTop","paddingRight","paddingBottom","paddingLeft","fontSize","lineHeight","fontFamily","width","fontWeight"];return this.each(function(){if(this.type!="textarea"){return false}var p=b(this),t=b("<div />").css({position:"absolute",display:"none","word-wrap":"break-word"}),o=parseInt(p.css("line-height"),10)||parseInt(p.css("font-size"),"10"),i=parseInt(p.css("height"),10)||o*3,n=parseInt(p.css("max-height"),10)||Number.MAX_VALUE,s=0,q=0;if(n<0){n=Number.MAX_VALUE}t.appendTo(p.parent());var q=a.length;while(q--){t.css(a[q].toString(),p.css(a[q].toString()))}function c(e,f){curratedHeight=Math.floor(parseInt(e,10));if(p.height()!=curratedHeight){p.css({height:curratedHeight+"px",overflow:f})}}function r(){var f=p.val().replace(/&/g,"&amp;").replace(/  /g,"&nbsp;").replace(/<|>/g,"&gt;").replace(/\n/g,"<br />");var e=t.html().replace(/<br>/ig,"<br />");if(f+"&nbsp;"!=e){t.html(f+"&nbsp;");if(Math.abs(t.height()+o-p.height())>3){var g=t.height()+o;if(g>=n){c(n,"auto")}else{if(g<=i){c(i,"hidden")}else{c(g,"hidden")}}}}}p.css({overflow:"hidden"});p.bind("keyup change cut paste",function(){r()});if(!d){p.bind("blur",function(){if(t.height()<n){if(t.height()>i){p.height(t.height())}else{p.height(i)}}})}p.live("input paste",function(e){setTimeout(r,250)});r()})}})})(jQuery);$.hovercard={card:null,cardID:"hunch-hovercard",cardClass:"hunch-hovercard",cardInner:null,showTimeout:null,hideTimeout:null,emptyCfg:{},currentCfg:this.emptyCfg,currentElt:null,defaults:{ajaxCache:true,gravity:"top",offsetY:11,showDelay:120,hideDelay:120,borderColor:"#ddd",borderWidth:"4px",borderRadius:"2px",arrow:{size:9},arrowInner:{size:9,color:"#fff",offset:6},loadingCardWidth:100,loader:{src:"http://hunch.com/media/img/loading-333-fff-16px.gif",width:16,height:16}},setup:function(){},init:function(a){if(this._did_init){return}this._did_init=true;var b=this;this.card=$("<div />",{"class":this.cardClass,id:this.cardID}).appendTo("body").html('<div class="hc-bubble"><div class="hc-content"></div></div><b class="arrow"></b><b class="arrow arrow-inner"></b>').hover(function(){b._cardHoverIn()},function(){b._cardHoverOut()});this.cardInner=this.card.find(".hc-content").first();this.cardBubble=this.card.find(".hc-bubble").first()},showCard:function(c,a,d){this._clearHideTimeout();if(!this._did_init){this.init(a)}if(this.currentElt===c){return}this._clearShowTimeout();var b=this;this.showTimeout=window.setTimeout(function(){b.clearCard();b.currentElt=c;b.currentCfg=a;if(a.url&&!h&&a.loader){h=$("<img/>",a.loader)}b.cardInner.html(h);if(a.loadingCardWidth){b.card.css("width",a.loadingCardWidth)}if(a.borderColor){b.cardBubble.css("borderColor",a.borderColor)}if(a.borderWidth){b.cardBubble.css("borderWidth",a.borderWidth)}if(a.borderRadius){b.cardBubble.css("borderRadius",a.borderRadius)}b.card.show();b._positionCard();if(a.content){var h=$.isFunction(a.content)?a.content(c):a.content;b.updateCard(h,c,null,a)}else{if(a.url){var f=$.isFunction(a.url)?a.url(c):a.url,i=$.isFunction(a.data)?a.data(c):a.data,e=i?f+(f.split("?").length>1?"&":"?")+$.param(i):f,j;if(!f){b.card.hide()}else{if(a.ajaxCache&&(j=b._cache.get(e,a.namespace))){b.updateCard(j,c,e,a);if(a.postAjaxProcess){a.postAjaxProcess.call(b.card,b,a,e)}}else{var g=$.extend({dataType:"html",type:"get"},a.ajaxSettings,{url:f,success:function(k){if(a.ajaxProcess){k=a.ajaxProcess(k,c,f,a)}if(k!==null){b.updateCard(k,c,e,a)}if(a.postAjaxProcess){a.postAjaxProcess.call(b.card,b,a,e)}},error:function(l,m){try{console.log("Hovercard AJAX error:",l,m)}catch(k){}if(a.ajaxError){a.ajaxError.call(this,l,m)}}});if(i||a.data){g.data=i||a.data}$.ajax(g)}}}}this.positionInterval=window.setInterval(function(){b._positionCard()},100);if(a.mp_track){mpq.push(["track",a.mp_track])}},a.showDelay)},updateCard:function(c,e,b,a,d){this.updateCache(c,b,a);if(this.currentElt===e){var f=c;if(this.responseIsJson(a)&&typeof(c)=="object"){f=c.html;if(c.width){this.card.css("width",c.width+"px")}}this.cardInner.html(f);this._positionCard()}},responseIsJson:function(a){return(a.ajaxSettings.dataType=="json"||a.ajaxSettings.dataType=="jsonp")},updateCache:function(c,b,a){if(a.ajaxCache&&b){this._cache.add(c,b,a.namespace)}},_addPx:function(b){for(var a in b){if(typeof(b[a])=="number"){b[a]+="px"}else{b[a]="auto"}}return b},_positionCard:function(){if(!this.currentElt||this.currentCfg==this.emtpyCfg){return}var e=this.currentCfg,o=$(this.currentElt),c=o.offset(),j=o.outerHeight(),l=o.outerWidth(),h=$(window),p=$(document),a=h.width(),g=window.innerHeight?window.innerHeight:h.height(),r=h.scrollTop(),f=h.scrollLeft(),q=this.card.outerHeight(),m=this.card.outerWidth(),i,n,b,k,d;if(e.gravity=="top"){k="down";d="left";i=c.top-q-e.offsetY;if(i<r){k="up";i=c.top+j+e.offsetY}b=c.left;if(b+m>f+a){d="right";b=null;n=a-(c.left+l)}}else{throw new Error("invalid gravity "+e.gravity)}this._arrow(this.card.children("b.arrow").first(),this.currentCfg,this.currentCfg.arrow,k,d);this._arrow(this.card.children("b.arrow-inner").first(),this.currentCfg,this.currentCfg.arrowInner,k,d);this.card.css(this._addPx({top:i,right:n,left:b}))},_arrow:function(d,h,j,n,g){var m=j.size,f=m-(j.offset||0),s=m+"px",r="transparent",t=[s,s,s,s],c=[r,r,r,r],o={up:0,left:1,down:2,right:3}[n],p=(o+2)%4,l,q,i,e;t[o]=0;c[p]=j.color||h.borderColor;switch(n){case"up":l=-f;break;case"right":q=-f;break;case"left":e=-f;break;case"down":i=-f;break}switch(g){case"top":l=m;break;case"right":q=m;break;case"bottom":i=m;break;case"left":e=m;break}var k=$.extend({borderWidth:t.join(" "),borderColor:c.join(" ")},this._addPx({top:l,right:q,bottom:i,left:e}));d.css(k)},hideCard:function(c,a){if(!this._did_init){this.init(a)}this._clearShowTimeout();var b=this;this.hideTimeout=window.setTimeout(function(){b.clearCard()},this.currentCfg.hideDelay)},clearCard:function(){this.card.hide();window.clearInterval(this.positionInterval);this.positionInterval=null;this.currentElt=null},_cardHoverIn:function(a){this._clearHideTimeout()},_cardHoverOut:function(a){this.hideCard(a)},_clearShowTimeout:function(){if(this.showTimeout){try{window.clearTimeout(this.showTimeout)}catch(a){}this.showTimeout=null}},_clearHideTimeout:function(){if(this.hideTimeout){try{window.clearTimeout(this.hideTimeout)}catch(a){}this.hideTimeout=null}},_cache:{_asKey:function(a,b){return(b?b+"-":"")+a},_data:{},add:function(d,a,c){var b=this._asKey(a,c);this._data[b]=d},get:function(a,b){return this._data[this._asKey(a,b)]}}};$.fn.extend({hovercard:function(a){var b=$.hovercard;a=$.extend({},b.defaults,a);if(!a.didSetup&&a.loader&&a.loader.src){a.didSetup=true;(new Image).src=a.loader.src}return $(this).each(function(){function d(e){b.showCard(this,a)}function c(e){b.hideCard(this,a)}$(this).hover(d,c)})},personhover:function(a){return this.hovercard($.extend({url:"/feed/ws/hovercard/",data:function(b){return{user_id:$(b).data("user_id")}},showDelay:200,mp_track:"show_personhover",ajaxSettings:{dataType:"json"},loadingCardWidth:375,postAjaxProcess:function(d,c,b){$(this).find("button.follow").followtoggle({followClickTrackPage:"personhover",callback:function(f,e){d.updateCache(d.cardInner.html(),b,c)}});$(this).find("img[title]").darkTooltip()}},a))},similarityhover:function(a){return this.hovercard($.extend({url:"/people/ws/similaritycard/",data:function(b){var c={user_id:$(b).data("user_id"),category:$(b).data("category")};if($(b).data("login_next")){c.login_next=$(b).data("login_next")}return c},showDelay:150,mp_track:"show_similarityhover",ajaxSettings:{dataType:"json"},loadingCardWidth:208,postAjaxProcess:function(d,c,b){$(this).find("img[title]").darkTooltip()}},a))}});(function(){var b=function(){var d=this;clearTimeout(d.out_id);d.over_id=setTimeout(function(){$(d).addClass("hover").siblings(".hover").removeClass("hover");d=null},20)};var a=function(){var d=this;clearTimeout(d.over_id);d.out_id=setTimeout(function(){$(d).removeClass("hover");d=null},400)};function c(e){var g=e+"=";var d=document.cookie.split(";");for(var f=0;f<d.length;f++){var h=d[f];while(h.charAt(0)==" "){h=h.substring(1,h.length)}if(h.indexOf(g)==0){return h.substring(g.length,h.length)}}return null}$.tts=function(d,e){return $(d).darkTooltip()};$(function(){$("ul#nav>li").hover(b,a);$(".dropdown>.elt").live("mouseover",b);$(".dropdown>.elt").live("mouseout",a);$("form#site-search").submit(function(){var e=$("input#search-box"),f=e.val();return(f!=""&&f!=e.attr("placeholder"))});$("input#search-box").placeholder({ignoreSubmits:1}).hunchac({container:"#site-search div#ac-container",loadingClass:false,dropDownOnly:false,render:function(m,g,h){var k=$("<ul/>"),f=false,e=[["Users",$.grep(m,function(n){if(n.type=="u"){var q="";if(n.is_you){q=" is-you"}else{if(n.is_following){q=" is-following"}else{if(n.is_official){q=" is-official"}}}var o='<div class="img'+q+'">'+(n.image_url?'<img src="'+n.image_url+'.c36_c36">':"&nbsp;")+"</div>";n.name=(o+'<p class="strong">'+n.name+"</p>");if(n.fullname){n.name+='<p class="xsmall">'+n.fullname+"</p>"}if(n.metadata){for(var p=0;p<n.metadata.length;p++){n.name+='<p class="dim xsmall">'+n.metadata[p]+"</p>"}}return true}return false}),"ac-um-"],["Topics",$.grep(m,function(i){if(i.type=="t"||i.type=="st"){i.name='<p class="strong no-image">'+i.name+"</p>";if(i.parent_names){i.name+='<p class="dim xsmall no-image">'+i.parent_names+"</p>"}return true}return false}),"ac-tm-"],["Items",$.grep(m,function(n){if(n.type=="i"){var o='<div class="img">'+(n.image_url?'<img src="'+n.image_url+'.c36_c36">':"&nbsp;")+"</div>";var q=('<div class="right" style="margin: 0 0 9px 9px;"><button type="button">recommend</button></div>');n.name=(o+q+'<p class="strong">'+n.name+"</p>");if(n.metadata){for(var p=0;p<n.metadata.length;p++){n.name+='<p class="xsmall">'+n.metadata[p]+"</p>"}}if(n.topic_names){n.name+='<p class="dim xsmall">'+n.topic_names+"</p>"}return true}return false}),"ac-rm-"]];for(var j=0;j<e.length;j++){if(e[j][1].length){k.append('<li class="ac-header'+(f?"":" ac-first-header")+'">'+e[j][0]+"</li>");f=true;$.each(e[j][1],function(o,i){var n=$('<li id="'+e[j][2]+(o+1)+'" class="ac-element">'+i.name+"</li>");$.data(n[0],$.hunchac.ORIGINAL_OBJECT,i);k.append(n);if(i.type=="i"){n.find("button").click(function(){document.cookie="dorec=1;path="+i.url+";"})}})}}if(!f){k.append('<li class="ac-none">No matches</li>')}g.html('<div class="yui-ac-content" />');var l=$(".yui-ac-content",g);l.append(k)},activate:function(i,h,g){if(g.type=="dym"){var f=this;setTimeout(function(){$(f).val(g.name.substring(21)).trigger("hunchac");f=null},5)}else{location.href=g.url}},autostart:1});$.tts(".tt");$("body .notify-msg a.close").click(function(){$("body .notify-msg").hide();$(".is-notify-msg").removeClass("is-notify-msg");document.cookie="notify=0;path=/;";return false});if(/\((iPhone|iPod|Android|webOS);/.test(navigator.userAgent)||c("hunch.mobile")=="0"){$("#mobile-switch",this).click(function(e){e.preventDefault();document.cookie="hunch.mobile=1; path=/";window.location.href="/m/";return false});$("#mobile-footer").removeClass("hide")}var d=$("#stars-helper");if(d.length){d.parent().starHelper()}$(".async-load").each(function(){var f=$(this),e=f.data("url");e&&f.getLoader(e,{replaceWith:true})});if($("#nav").find("a.user").length){$("#nav").find('li>a[href="/"]').click(function(){document.cookie="fs=1; path=/;"})}})})();
