jQuery.fn.rating=function(url,options){if(url==null)return;var settings={url:url,maxvalue:5,curvalue:0};var currentStar=options.curvalue;var placeRatingId=options.id;if(options){jQuery.extend(settings,options);};jQuery.extend(settings,{cancel:(settings.maxvalue>1)?true:false});var container=jQuery(this);jQuery.extend(container,{averageRating:settings.curvalue,url:settings.url});for(var i=0;i<=settings.maxvalue;i++){var size=settings.maxvalue;if(i==0){if(settings.cancel==true){container.append('<div style="float:left; width:100px; font-weight:bold;">Rate this place</div>');var div='<div class="cancel"><a href="#0" title="Cancel Rating">Cancel Rating</a></div>';container.append(div);}}else{var div='<div class="star"><a href="#'+i+'" title="Give it '+i+'/'+size+'">'+i+'</a></div>';container.append(div);}}container.append('<div style="float:left; width:55px; vertical-align:middle; height:18px; line-height:18px; margin-left:5px; font-weight:bold;" id="star_hover_result">0/5 stars</div>');container.append('<div class="rating_button" style="float:left;">&nbsp;&nbsp;<input style="height:18px; line-height:15px; font-size:10px;border:1px solid #cccccc; width:40px;" type="button" value="Rate !" /></div>');var stars=jQuery(container).children('.star');var cancel=jQuery(container).children('.cancel');var rating_button=jQuery(container).children('.rating_button');rating_button.click(function(){if(parseInt(currentStar,10)>0){$.ajax({type:"GET",async:false,url:container.url+'&rating='+currentStar,dataType:"html"});myclick(placeRatingId);}else{}});stars.mouseover(function(){event.drain();event.fill(this);currentHoverStar=jQuery(this).children('a')[0].href.split('#')[1];$("#star_hover_result").html(currentHoverStar+'/'+settings.maxvalue+' stars');}).mouseout(function(){event.drain();event.reset();$("#star_hover_result").html(currentStar+'/'+settings.maxvalue+' stars');}).focus(function(){event.drain();event.fill(this)}).blur(function(){event.drain();event.reset();});stars.click(function(){if(settings.cancel==true){settings.curvalue=stars.index(this)+1;currentStar=jQuery(this).children('a')[0].href.split('#')[1];$("#star_hover_result").html(currentStar+'/'+settings.maxvalue+' stars');return false;}else if(settings.maxvalue==1){settings.curvalue=(settings.curvalue==0)?1:0;$(this).toggleClass('on');jQuery.post(container.url,{"rating":jQuery(this).children('a')[0].href.split('#')[1]});return false;}return true;});if(cancel){cancel.mouseover(function(){event.drain();jQuery(this).addClass('on');}).mouseout(function(){event.reset();jQuery(this).removeClass('on')}).focus(function(){event.drain();jQuery(this).addClass('on')}).blur(function(){event.reset();jQuery(this).removeClass('on')});cancel.click(function(){event.drain();settings.curvalue=0;currentStar=0;return false;});}var event={fill:function(el){var index=stars.index(el)+1;stars.children('a').css('width','100%').end().lt(index).addClass('hover').end();},drain:function(){stars.filter('.on').removeClass('on').end().filter('.hover').removeClass('hover').end();},reset:function(){stars.lt(settings.curvalue).addClass('on').end();}};event.reset();return(this);}
