(function(e){e.facebox=function(l,k){e.facebox.loading();if(l.ajax){f(l.ajax,k)}else{if(l.image){c(l.image,k)}else{if(l.div){i(l.div,k)}else{if(e.isFunction(l)){l.call(e)}else{e.facebox.reveal(l,k)}}}}};e.extend(e.facebox,{settings:{opacity:0,overlay:true,loadingText:"请稍后...",imageTypes:["png","jpg","jpeg","gif"],faceboxHtml:'    <div id="facebox" style="display:none;">       <div class="popup">         <table>           <tbody id="facebox-tbody">             <tr>               <td class="tl"/><td class="b"/><td class="tr"/>             </tr>             <tr>               <td class="b"/>               <td class="body">                 <a class="img_btn close" href="#"><img class="btn_close" src="/static/img/close_pop.png" /></a>                 <div class="content">                 </div>                 <div class="footer">                 </div>               </td>               <td class="b"/>             </tr>             <tr>               <td class="bl"/><td class="b"/><td class="br"/>             </tr>           </tbody>         </table>       </div>     </div>'},loading:function(){j();if(e("#facebox .loading").length==1){return true}d();e("#facebox .content").empty();e("#facebox .body").children().hide().end().append('<div class="loading">'+e.facebox.settings.loadingText+"</div>");e("#facebox").css({top:g()[1]+(h()/10),left:e(window).width()/2-205}).show();e(document).bind("keydown.facebox",function(k){if(k.keyCode==27){e.facebox.close()}return true});e(document).trigger("loading.facebox")},reveal:function(l,k){e(document).trigger("beforeReveal.facebox");if(k){e("#facebox .content").addClass(k)}e("#facebox .content").append(l);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")},close:function(){e(document).trigger("close.facebox");return false}});e.fn.facebox=function(k){if(e(this).length==0){return}j(k);function l(){e.facebox.loading(true);var m=this.rel.match(/facebox\[?\.(\w+)\]?/);if(m){m=m[1]}i(this.href,m);return false}return this.bind("click.facebox",l)};function j(l){if(e.facebox.settings.inited){return true}else{e.facebox.settings.inited=true}e(document).trigger("init.facebox");var k=e.facebox.settings.imageTypes.join("|");e.facebox.settings.imageTypesRegexp=new RegExp(".("+k+")$","i");if(l){e.extend(e.facebox.settings,l)}e("body").append(e.facebox.settings.faceboxHtml);e("#facebox .close").click(e.facebox.close)}function g(){var l,k;if(self.pageYOffset){k=self.pageYOffset;l=self.pageXOffset}else{if(document.documentElement&&document.documentElement.scrollTop){k=document.documentElement.scrollTop;l=document.documentElement.scrollLeft}else{if(document.body){k=document.body.scrollTop;l=document.body.scrollLeft}}}return new Array(l,k)}function h(){var k;if(self.innerHeight){k=self.innerHeight}else{if(document.documentElement&&document.documentElement.clientHeight){k=document.documentElement.clientHeight}else{if(document.body){k=document.body.clientHeight}}}return k}function i(l,k){if(l.match(/#/)){var m=window.location.href.split("#")[0];var n=l.replace(m,"");if(n=="#"){return}e.facebox.reveal(e(n).html(),k)}else{if(l.match(e.facebox.settings.imageTypesRegexp)){c(l,k)}else{f(l,k)}}}function c(l,k){var m=new Image();m.onload=function(){e.facebox.reveal('<div class="image"><img src="'+m.src+'" /></div>',k)};m.src=l}function f(l,k){e.get(l,function(m){e.facebox.reveal(m,k)})}function b(){return e.facebox.settings.overlay==false||e.facebox.settings.opacity===null}function d(){if(b()){return}if(e("#facebox_overlay").length==0){e("body").append('<div id="facebox_overlay" class="facebox_hide"></div>')}e("#facebox_overlay").hide().addClass("facebox_overlayBG").css("opacity",e.facebox.settings.opacity).click(function(){e(document).trigger("close.facebox")}).fadeIn(200);return false}function a(){if(b()){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}e(document).bind("close.facebox",function(){e(document).unbind("keydown.facebox");e("#facebox").fadeOut(function(){e("#facebox .content").removeClass().addClass("content");a();e("#facebox .loading").remove();e(document).trigger("afterClose.facebox")})})})(jQuery);(function(a){a.fn.rater=function(b){var c={url:"",method:"post",min:1,max:5,step:1,value:0,tips:{0:"点击上边的星星",1:"很差",2:"勉强接受",3:"还可以",4:"不错",5:"强烈推荐"},after_click:null,before_ajax:null,after_ajax:null,image:"/static/img/star2.gif",width:16,height:16};if(b){a.extend(c,b)}var e=a('<ul class="rater-star"></ul>');e.css("background-image","url("+c.image+")");e.css("height",c.height);e.css("width",c.width*((c.max-c.min)/c.step+1));e.current_value=c.value;var d=a('<li class="rater-star-item-current"></li>');d.css("background-image","url("+c.image+")");d.css("height",c.height);d.css("width",0);d.css("z-index",c.max/c.step+1);if(e.current_value){d.css("width",((e.current_value-c.min)/c.step+1)*c.width)}e.append(d);for(var f=c.min;f<=c.max;f+=c.step){d=a('<li class="rater-star-item"></li>');d.css("height",c.height);d.css("width",c.width*((f-c.min)/c.step+1));d.css("z-index",(c.max-f)/c.step+1);d.css("background-image","url("+c.image+")");e.append(d)}e.mouseover(function(){a(this).find(".rater-star-item-current").hide()}).mouseout(function(){a(this).find(".rater-star-item-current").show()});e.find(".rater-star-item").mouseover(function(){a(this).attr("class","rater-star-item-hover");var g=a(this).width()/c.width;var h=c.min+(g-1)*c.step;a(this).parent().next().html(c.tips[h])}).mouseout(function(){a(this).attr("class","rater-star-item");a(this).parent().next().html(c.tips[e.current_value])}).click(function(){a(this).prevAll(".rater-star-item-current").css("width",jQuery(this).width());var g=a(this).width()/c.width;e.current_value=c.min+(g-1)*c.step;var h={rate:e.current_value,object_id:c.object_id};if(typeof c.after_click=="function"){c.after_click(h)}if(c.url){a.ajax({data:h,type:c.method,url:c.url,beforeSend:function(){if(typeof c.before_ajax=="function"){c.before_ajax(h)}},success:function(i){if(typeof c.after_ajax=="function"){c.after_ajax(i)}}})}});a(this).html(e);a(this).append(a('<div class="rater_tip"></div>').html(c.tips[e.current_value]))}})(jQuery);(function(c){function a(d){if(d.attr("title")||typeof(d.attr("original-title"))!="string"){d.attr("original-title",d.attr("title")||"").removeAttr("title")}}function b(e,d){this.$element=c(e);this.options=d;this.enabled=true;a(this.$element)}b.prototype={show:function(){var g=this.getTitle();if(g&&this.enabled){var f=this.tip();f.find(".tipsy-inner")[this.options.html?"html":"text"](g);f[0].className=this.options.wrap_class;f.remove().css({top:0,left:0,visibility:"hidden",display:"block"}).appendTo(document.body);var j=c.extend({},this.$element.offset(),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight});var d=f[0].offsetWidth,i=f[0].offsetHeight;var h=(typeof this.options.gravity=="function")?this.options.gravity.call(this.$element[0]):this.options.gravity;var e;switch(h.charAt(0)){case"n":e={top:j.top+j.height+this.options.offset,left:j.left+j.width/2-d/2};break;case"s":e={top:j.top-i-this.options.offset,left:j.left+j.width/2-d/2};break;case"e":e={top:j.top+j.height/2-i/2,left:j.left-d-this.options.offset};break;case"w":e={top:j.top+j.height/2-i/2,left:j.left+j.width+this.options.offset};break}if(h.length==2){if(h.charAt(1)=="w"){e.left=j.left+j.width/2-15}else{e.left=j.left+j.width/2-d+15}}f.css(e).addClass("tipsy-"+h);if(this.options.fade){f.stop().css({opacity:0,display:"block",visibility:"visible"}).animate({opacity:this.options.opacity})}else{f.css({visibility:"visible",opacity:this.options.opacity})}}},hide:function(){if(this.options.fade){this.tip().stop().fadeOut(function(){c(this).remove()})}else{this.tip().remove()}},getTitle:function(){var f,d=this.$element,e=this.options;a(d);var f,e=this.options;if(typeof e.title=="string"){f=d.attr(e.title=="title"?"original-title":e.title)}else{if(typeof e.title=="function"){f=e.title.call(d[0])}}f=(""+f).replace(/(^\s*|\s*$)/,"");return f||e.fallback},tip:function(){if(!this.$tip){this.$tip=c('<div class="'+this.options.wrap_class+'"></div>').html('<div class="tipsy-arrow"></div><div class="tipsy-inner"></div>')}return this.$tip},validate:function(){if(!this.$element[0].parentNode){this.hide();this.$element=null;this.options=null}},enable:function(){this.enabled=true},disable:function(){this.enabled=false},toggleEnabled:function(){this.enabled=!this.enabled}};c.fn.tipsy=function(p){if(p===true){return this.data("tipsy")}else{if(typeof p=="string"){var j=this.data("tipsy");if(j){j[p]()}return this}}p=c.extend({},c.fn.tipsy.defaults,p);function m(q){if(q.data("timeoutId")){clearTimeout(q.data("timeoutId"))}q.data("timeoutId",null)}function e(q){m(q);var r=setTimeout(function(){q.tipsy("hide")},p.hideDelay);q.data("timeoutId",r)}function f(q){var r=c.data(q,"tipsy");if(!r){r=new b(q,c.fn.tipsy.elementOptions(q,p));c.data(q,"tipsy",r)}return r}function l(r){var s=f(r);var q=s.tip();m(c(r));s.show();q.data("tipsyAnchor",c(r));q.hover(d,g)}function k(){var s=this;var q=c(s);var r=q.attr("data-url");if(r&&!q.data("ajax-success")){q.attr("title",p.loading);c.ajax({url:r,dataType:"json",success:function(t){q.data("ajax-success",true);q.attr("title",t.html);l(s)},error:function(){q.attr("title","Error loading "+r);l(s)},failure:function(){q.attr("title","Failed to load "+r);l(s)}})}l(s)}function o(){var q=this;var r=f(q);e(c(q))}function d(){var q=c(this).data("tipsyAnchor");m(q)}function g(){var q=c(this).data("tipsyAnchor");e(q)}if(!p.live){this.each(function(){f(this)})}if(p.trigger!="manual"){var n=p.live?"live":"bind",i=p.trigger=="hover"?"mouseenter":"focus",h=p.trigger=="hover"?"mouseleave":"blur";this[n](i,k)[n](h,o)}return this};c.fn.tipsy.defaults={hideDelay:0,loading:'<img src="/static/img/xhr_loader.gif"/>',fade:false,fallback:"",gravity:"n",html:false,live:false,offset:0,opacity:0.8,wrap_class:"tipsy",title:"title",trigger:"hover"};c.fn.tipsy.elementOptions=function(e,d){return c.metadata?c.extend({},d,c(e).metadata()):d};c.fn.tipsy.autoNS=function(){return c(this).offset().top>(c(document).scrollTop()+c(window).height()/2)?"s":"n"};c.fn.tipsy.autoWE=function(){return c(this).offset().left>(c(document).scrollLeft()+c(window).width()/2)?"e":"w"}})(jQuery);(function(c){var h,i;var d=0;var a=32;var e;c.fn.TextAreaResizer=function(){return this.each(function(){h=c(this).addClass("processed"),i=null;c(this).wrap('<div class="resizable-textarea"><span></span></div>').parent().append(c('<div class="grippie"></div>').bind("mousedown",{el:this},b));var k=c("div.grippie",c(this).parent())[0];k.style.marginRight=(k.offsetWidth-c(this)[0].offsetWidth)+"px"})};function b(k){h=c(k.data.el);h.blur();d=j(k).y;i=h.height()-d;h.css("opacity",0.25);c(document).mousemove(g).mouseup(f);return false}function g(m){var k=j(m).y;var l=i+k;if(d>=(k)){l-=5}d=k;l=Math.max(a,l);h.height(l+"px");if(l<a){f(m)}return false}function f(k){c(document).unbind("mousemove",g).unbind("mouseup",f);h.css("opacity",1);h.focus();h=null;i=null;d=0}function j(k){return{x:k.clientX+document.documentElement.scrollLeft,y:k.clientY+document.documentElement.scrollTop}}})(jQuery);(function(a){a.fn.simplyCountable=function(d){d=a.extend({counter:"#counter",countType:"characters",wordSeparator:" ",maxCount:140,strictMax:false,countDirection:"down",safeClass:"safe",overClass:"over",thousandSeparator:",",onOverCount:function(){},onSafeCount:function(){},onMaxCount:function(){}},d);var e=this;var c=a(d.counter);if(!c.length){return false}regex=new RegExp("["+d.wordSeparator+"]+");var b=function(){var j;var i;var g=function(l){return l-(l*2)+d.maxCount};var k=function(){return(d.countDirection==="up")?i:j};var f=function(m){if(d.thousandSeparator){m=m.toString();for(var l=m.length-3;l>0;l-=3){m=m.substr(0,l)+d.thousandSeparator+m.substr(l)}}return m};if(d.countType==="words"){j=d.maxCount-a.trim(e.val()).split(regex).length;if(e.val()===""){j+=1}}else{j=d.maxCount-e.val().length}i=g(j);if(d.strictMax&&j<=0){var h=e.val();if(j<0||h.match(new RegExp("["+d.wordSeparator+"]$"))){d.onMaxCount(k(),e,c)}if(d.countType==="words"){e.val(h.split(regex).slice(0,d.maxCount).join(d.wordSeparator))}else{e.val(h.substring(0,d.maxCount))}j=0,i=d.maxCount}c.text(f(k()));if(!c.hasClass(d.safeClass)&&!c.hasClass(d.overClass)){if(j<0){c.addClass(d.overClass)}else{c.addClass(d.safeClass)}}else{if(j<0&&c.hasClass(d.safeClass)){c.removeClass(d.safeClass).addClass(d.overClass);d.onOverCount(k(),e,c)}else{if(j>=0&&c.hasClass(d.overClass)){c.removeClass(d.overClass).addClass(d.safeClass);d.onSafeCount(k(),e,c)}}}};b();e.keypress(b);e.keyup(b)}})(jQuery);(function(a){a.login=function(){if(dabanba.logged){return true}var b=arguments[0];a.facebox({ajax:"/account/login/popup/"});a(document).bind("reveal.facebox",function(){a(".focusit").focus()});if(b){b.preventDefault()}return false};a.fn.show_popup_register=function(){a(".popup_login").hide();a(".popup_register").show();a(".popup_register input:first").focus();a(".submit_btn").click(function(){a(this).after('<div class="msg_btn">请稍后...</div>');a(this).hide()})};a.fn.show_popup_login=function(){a(".popup_login").show();a(".popup_register").hide();a(".popup_login input:first").focus()};a.fn.confirm_link=function(){a.each(this,function(b,c){a(c).click(function(){var d=a(c).attr("title");if(d){return confirm(d)}else{return true}})})};a.fn.vote=function(d,c,b){if(!dabanba.logged){a.login();return}var e=a(this).parent();if(e.hasClass("like")&&a(this).hasClass("up")){c=0}if(e.hasClass("dislike")&&a(this).hasClass("down")){c=0}e.removeClass("like dislike unvote");if(c==1){e.addClass("like")}else{if(c==-1){e.addClass("dislike")}else{if(c==0){e.addClass("unvote")}}}a.ajax({url:"/group/vote/"+b+".json",data:{id:d,vote:c},dateType:"json",type:"POST"})};a.fn.star_shout=function(){if(!dabanba.logged){a.login();return}var b=a(this).attr("class").match(/id[0-9]*/)[0].replace("id","");var d=a("div.shout_star.id"+b);var c=a("div.star_btn.shout_star.id"+b);if(a(this).hasClass("star_off")){if(c.text()){c.text("去掉关注")}d.removeClass("star_off");d.addClass("star_on");action="on"}else{if(c.text()){c.text("关注")}d.removeClass("star_on");d.addClass("star_off");action="off"}a.ajax({url:"/shout/star.json",data:{id:b,action:action},dateType:"json",type:"POST"})};a.fn.new_shopping_comment=function(d){if(!dabanba.logged){a.login();return}var f=a(this).prevAll().filter(".comment");if(f.val()=="写下你想说的吧..."){return}var c=a(this).prevAll().filter(".link_add");var e=c.children("input[type='text']");var b=c.children("div.link_info");a.ajax({url:"/api/shopping_comment/new.json",data:{parent_type:d,message:f.val(),link:e.val()},dateType:"json",type:"POST",beforeSend:function(){e.val("");c.hide()},success:function(g){f.val("");e.val("");b.html("");f.closest("table").before(g.html)}})};a.fn.delete_shopping_comment=function(b){if(!dabanba.logged){a.login();return}var c=a(this);a.ajax({url:"/api/shopping_comment/delete.json",data:{comment_id:b},dateType:"json",type:"POST",success:function(d){if(d.html){c.closest("table").html(d.html)}}})};a.fn.input_tip=function(){a.each(this,function(c,b){hint_text=a(b).attr("hint");if(!hint_text){return}if(!a(b).val()||a(b).val()==hint_text){a(b).addClass("dimmed").val(hint_text)}a(b).focus(function(){a(b).removeClass("dimmed");if(a(b).val()==hint_text){a(b).val("")}}).blur(function(){if(a(b).val()==""){a(b).addClass("dimmed").val(hint_text)}else{a(b).removeClass("dimmed")}})})};a.fn.get_link=function(){var b=a(this).prev("input").val();var c=a(this).next("div.link_info");a.ajax({url:"/shout/get_link.json",data:{link:b},type:"POST",beforeSend:function(){c.html('<img src="/static/img/xhr_loader.gif"/> 正在获取网页...')},success:function(d){c.html(d.html)}})};a.fn.feedback=function(){a.facebox({ajax:"/feedback/popup/"});a(document).bind("reveal.facebox",function(){a(".focusit").focus()})}})(jQuery);function yesno(b,d,e,c){var a=b.parentNode;a.innerHTML='<img src="/static/img/xhr_loader.gif" />';$.getJSON("/"+e+"/"+c+"/choice/"+d+".json",function(f){$(a).html(f.html)});return false}function show_review(a){$("#btn_show_"+a).hide();$("#btn_hide_"+a).show();$("#review_entry_"+a).removeClass("review_entry_hiden")}function hide_review(a){$("#btn_show_"+a).show();$("#btn_hide_"+a).hide();$("#review_entry_"+a).addClass("review_entry_hiden")}function review_show_button(){$(".review_entry").each(function(a){$(this).mouseover(function(){$(".review_box",this).stop().fadeTo("fast",1)});$(this).mouseout(function(){$(".review_box",this).stop().fadeTo("show",0)})})}$(review_show_button);function login(){$.facebox({ajax:"/account/login/popup/"});$(document).bind("reveal.facebox",function(){$(".focusit").focus()})}$(function(){$("a[rel=tipsy]").tipsy({fade:true,gravity:"n"});$(".w_panel_swich").each(function(a){var b=$(this).html();$(this).toggle(function(){$(this).next().slideDown();$(".w_focus",$(this).next()).focus();$(this).html("[ 收起 ]")},function(){$(this).next().slideUp();$(this).html(b)})});$(".item_panel").hover(function(){$(".item_tip",this).stop().fadeTo("show",0.7)},function(){$(".item_tip",this).stop().fadeTo("show",0)});$(".submit_btn").click(function(){$(this).after('<div class="msg_btn">请稍后...</div>');$(this).hide()});$(".focusit:first").focus();$("textarea[hint]").input_tip();$("input[hint]").input_tip();$("textarea.resizable:not(.processed)").TextAreaResizer();$("div.star").click(function(){if(!dabanba.logged){$.login();return}var b=$(this).attr("class").match(/id[0-9]*/)[0].replace("id","");var c="";var a=$("div.star.id"+b);var d=$("div.star_btn.star.id"+b);if($(this).hasClass("star_off")){if(d.text()){d.text("去掉星标")}a.removeClass("star_off");a.addClass("star_on");c="on"}else{if(d.text()){d.text("加星标")}a.removeClass("star_on");a.addClass("star_off");c="off"}$.getJSON("/group/star/"+b+"/"+c+".json",function(e){})});$(".topic_tip").tipsy({gravity:"nw",hideDelay:300,html:true,opacity:1,wrap_class:"topic_brief"});$(".show_login").click(function(a){return $.login(a)});$(".confirm_link").confirm_link()});function post_point(a,c,f,b){var e=$("#"+c)[0];var d=e.value;$.post(f,{point:d},function(g){$("#"+a+"_point_error").html(g.errors);if(!g.errors){e.value=""}$.getJSON(b,function(h){$("#show_"+a+"_point").html(h.html)})},"json")};