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