(function(e){e.fn.raty=function(k){options=e.extend({},e.fn.raty.defaults,k);if(this.attr("id")===undefined){c("Invalid selector!");return;}if(options.number>20){options.number=20;}else{if(options.number<0){options.number=0;}}if(options.path.substring(options.path.length-1,options.path.length)!="/"){options.path+="/";}$global=e(this);var o=$global,g=o.attr("id"),h=0,p=options.starOn,l="";if(!isNaN(options.start)&&options.start>0){h=(options.start>options.number)?options.number:options.start;}for(var m=1;m<=options.number;m++){p=(h>=m)?options.starOn:options.starOff;l=(options.number<=options.hintList.length&&options.hintList[m-1]!==null)?options.hintList[m-1]:m;o.append('<img id="'+g+"-"+m+'" src="'+options.path+p+'" alt="'+m+'" title="'+l+'" class="'+g+'"/>').append((m<options.number)?"&nbsp;":"");}e('<input id="'+g+'-score" type="hidden" name="'+options.scoreName+'"/>').appendTo(o).val(h);if(options.showHalf){var j=e("input#"+g+"-score").val();b(o,j,options);}if(!options.readOnly){if(options.showCancel){var n=e("img."+g),q='<img src="'+options.path+options.cancelOff+'" alt="x" title="'+options.cancelHint+'" class="button-cancel"/>';if(options.cancelPlace=="left"){o.prepend(q+"&nbsp;");}else{o.append("&nbsp;").append(q);}e("#"+g+" img.button-cancel").live("mouseenter",function(){e(this).attr("src",options.path+options.cancelOn);n.attr("src",options.path+options.starOff);}).live("mouseleave",function(){e(this).attr("src",options.path+options.cancelOff);n.trigger("mouseout");}).live("click",function(){e("input#"+g+"-score").val(0);if(options.onClick){options.onClick.apply(o,[0]);}});o.css("width",options.number*20+20);}else{o.css("width",options.number*20);}o.css("cursor","pointer");d(o,options);}else{o.css("cursor","default");f(o,h,options);}return o;};e.fn.raty.defaults={cancelHint:"cancel this rating!",cancelOff:"cancel-off.png",cancelOn:"cancel-on.png",cancelPlace:"left",hintList:["bad","poor","regular","good","gorgeous"],noRatedMsg:"not rated yet",number:5,path:"img/",readOnly:false,scoreName:"score",showCancel:false,showHalf:false,starHalf:"star-half.png",start:0,starOff:"star-off.png",starOn:"star-on.png"};e.fn.raty.readOnly=function(g){if(g){e("img."+$global.attr("id")).die();$global.css("cursor","default").die();}else{d($global,options);$global.css("cursor","pointer");}return e.fn.raty;};e.fn.raty.start=function(g){a($global,g,options);return e.fn.raty;};e.fn.raty.click=function(g){a($global,g,options);if(options.onClick){options.onClick.apply($global,[g]);}else{c('You should add the "onClick: function(score) { }" option.');}return e.fn.raty;};function d(i,h){var k=i.attr("id"),j=e("input#"+k+"-score"),g=e("img."+k).length;i.live("mouseleave",function(){a(i,j.val(),h);});e("img."+k).live("mouseenter",function(){for(var l=1;l<=g;l++){if(l<=this.alt){e("img#"+k+"-"+l).attr("src",h.path+h.starOn);}else{e("img#"+k+"-"+l).attr("src",h.path+h.starOff);}}}).live("click",function(){j.val(this.alt);if(h.onClick){h.onClick.apply(i,[this.alt]);}});}function a(k,l,h){var m=k.attr("id"),g=e("img."+m).length;if(l<0||isNaN(l)){l=0;}else{if(l>h.number){l=h.number;}}e("input#"+m+"-score").val(l);for(var j=1;j<=g;j++){if(j<=l){e("img#"+m+"-"+j).attr("src",h.path+h.starOn);}else{e("img#"+m+"-"+j).attr("src",h.path+h.starOff);}}if(h.showHalf){b(k,l,h);}if(h.readOnly||k.css("cursor")=="default"){f(k,l,h);}}function b(i,k,h){var l=i.attr("id"),g=Math.ceil(k),j=(g-k).toFixed(1);if(j>=0.3&&j<=0.7){g=g-0.5;e("img#"+l+"-"+Math.ceil(g)).attr("src",h.path+h.starHalf);}else{if(j>=0.8){g--;}else{e("img#"+l+"-"+g).attr("src",h.path+h.starOn);}}}function f(h,i,g){if(i!=0){i=parseInt(i);hint=(i>0&&g.number<=g.hintList.length&&g.hintList[i-1]!==null)?g.hintList[i-1]:i;}else{hint=g.noRatedMsg;}h.attr("title",hint).children("img").attr("title",hint);}function c(g){if(window.console&&window.console.log){window.console.log(g);}}})(jQuery);
