var RabidRatings=new Class({Implements:Options,options:{url:null,leftMargin:0,starWidth:17,starMargin:4,scale:5,snap:1},initialize:function(a){this.setOptions(a);var b=this.options.activeColor;var c=this.options.votedColor;var d=this.options.fillColor;$$(".rabidRating").each(function(a){if(!Browser.Engine.trident4){a.id=a.getAttribute("id");a.wrapper=a.getElement(".wrapper");a.textEl=a.getElement(".ratingText");a.offset=a.getPosition().x;a.fill=a.getElement(".ratingFill");a.starPercent=this.getStarPercent(a.id);a.ratableId=this.getRatableId(a.id);this.fillVote(a.starPercent,a);a.currentFill=this.getFillPercent(a.starPercent);a.morphFx=new Fx.Morph(a.fill,{link:"chain"});a.widthFx=new Fx.Tween(a.fill,{property:"width",link:"chain"});if(ratingsVersion==1){a.mouseCrap=function(b){var c=b.client.x-a.offset;var d=this.getVotePercent(c);var e;if(this.options.snap===0){e=1}else{e=100/this.options.scale*this.options.snap}var g=Math.floor(d/e)+1;this.fillVote(g*e,a)}.bind(this);a.wrapper.addEvent("mouseenter",function(b){a.morphFx.start(".rabidRating .ratingActive");a.wrapper.addEvent("mousemove",a.mouseCrap)});a.wrapper.addEvent("mouseleave",function(b){a.removeEvent(a.mouseCrap);a.morphFx.start(".rabidRating .ratingFill");a.widthFx.start(a.currentFill)});a.wrapper.addEvent("click",function(b){a.currentFill=a.newFill;a.morphFx.start(".rabidRating .ratingVoted");a.wrapper.removeEvents();a.addClass("ratingVoted");a.textEl.addClass("loading");var c=this.getVotePercent(a.newFill);if(this.options.url!=null){var d=(new Request({url:this.options.url,onComplete:a.updateText})).post({vote:c,id:a.ratableId})}}.bind(this));a.updateText=function(b){error=b.split("ERROR:")[1];a.textEl.removeClass("loading");if(error){a.showError(error);return false}a.textEl.set("text",b)};a.showError=function(b){a.textEl.addClass("ratingError");oldTxt=a.textEl.get("text");a.textEl.set("text",b);(function(){a.textEl.set("text",oldTxt);a.textEl.removeClass("ratingError")}).delay(1e3)}}}else{var b=a.getElement(".ratingText").inject(a,"before");a.remove()}}.bind(this))},fillVote:function(a,b){b.newFill=this.getFillPercent(a);if(this.getVotePercent(b.newFill)>100){b.newFill=this.getFillPercent(100)}b.fill.setStyle("width",b.newFill)},getStarPercent:function(a){var b=a.match(/(\d*)-(\d*\.?\d+)_(\d*\.?\d+)$/);var c=b[1].toFloat();var d=b[2].toFloat();var e=b[3].toFloat();var f=d/e*100;return f},getFillPercent:function(a){return a/100*(this.options.starWidth+this.options.starMargin)*this.options.scale+this.options.leftMargin},getVotePercent:function(a){var b=(this.options.starWidth+this.options.starMargin)*this.options.scale;var c=this.options.leftMargin;var d=a-this.options.leftMargin;var e=(d/b*100).round(2);return e},getRatableId:function(a){var b=a.match(/(\d*)-(\d*\.?\d+)_(\d*\.?\d+)$/);return b[1]}});window.addEvent("domready",function(a){var b=new RabidRatings({url:"./ratings.php"})})
