function CastleRater(id,imageOnUrl,imageOffUrl,imageHoverUrl,maxValue,value,parentControl,objID,enabled){if(value==undefined||value==null)value=0;if(maxValue==undefined||maxValue==null)maxValue=5;this.ID=id;this.MaxValue=maxValue;this.Value=value;this.ImageOn=imageOnUrl;this.ImageOff=imageOffUrl;this.ImageHover=imageHoverUrl;this.AutoLock=false;this.IsEnabled=enabled;this.IsInitialized=false;this.Images=new Array(maxValue);this.Container=null;this.ValueControl=null;this.ValueControlID=this.ID+"_Value";new Image().src=this.ImageOn;new Image().src=this.ImageOff;new Image().src=this.ImageHover;this.parentControl=parentControl;this.objID=objID;}CastleRater.Items=Array();CastleRater.Create=function(id,imageOnUrl,imageOffUrl,imageHoverUrl,maxValue,value,parentControl,objID,enabled){var obj=new CastleRater(id,imageOnUrl,imageOffUrl,imageHoverUrl,maxValue,value,parentControl,objID,enabled);CastleRater.Items[obj.ID]=obj;return obj;};CastleRater.CreateJSControl=function(id,imageOnUrl,imageOffUrl,imageHoverUrl,maxValue,value,parentControl,objID,enabled){var rater=CastleRater.Create(id,imageOnUrl,imageOffUrl,imageHoverUrl,maxValue,value,parentControl,objID,enabled);rater.Render();return rater;};CastleRater.InitializeRater=function(rater){rater.ValueControl=document.getElementById(rater.ValueControlID);rater.ValueControl.value=rater.Value;rater.IsInitialized=true;};CastleRater.Refresh=function(source,raterID){var rater=CastleRater.Items[raterID];var value=rater.Value;for(var i=1;i<=rater.MaxValue;i++){if(value>=i)rater.Images[i].src=rater.ImageOn;else rater.Images[i].src=rater.ImageOff;}};CastleRater.Hover=function(source,raterID){var rater=CastleRater.Items[raterID];if(!rater.IsEnabled)return;var value=source.getAttribute("value");for(var i=1;i<=rater.MaxValue;i++){if(value>=i)rater.Images[i].src=rater.ImageHover;else rater.Images[i].src=rater.ImageOff;}};CastleRater.Click=function(source,raterID){var rater=CastleRater.Items[raterID];if(!rater.IsEnabled)return;rater.Initialize();rater.Value=source.getAttribute("value");rater.ValueControl.value=rater.Value;CastleRater.Refresh(source,raterID);if(rater.AutoLock)rater.Enable(false);};CastleRater.prototype.Initialize=function(){CastleRater.InitializeRater(this);};CastleRater.prototype.Enable=function(enable){this.Container.disabled=!enable;this.IsEnabled=enable;};CastleRater.prototype.Visible=function(visible){if(visible)this.Container.style.visibility="Visible";else this.Container.style.visibility="Hidden";};CastleRater.prototype.Render=function(){var input1=document.createElement("input");input1.id=this.ValueControlID;input1.type="hidden";this.parentControl.appendChild(input1);var span1=document.createElement("span");span1.id=this.ID;this.parentControl.appendChild(span1);for(var i=1;i<=this.MaxValue;i++){if(this.Value>=i)imageName=this.ImageOn;else imageName=this.ImageOff;var index=document.images.length;var imgID=this.ID+"_img"+i;var img=document.createElement("img");if(this.IsEnabled)img.style.cursor="pointer";img.id=imgID;img.pID=this.ID;img.onclick=function(){CastleRater.Click(this,this.pID);};img.onmouseover=function(){CastleRater.Hover(this,this.pID);};img.onmouseout=function(){CastleRater.Refresh(this,this.pID);};span1.appendChild(img);this.Images[i]=img;this.Images[i].src=imageName;this.Images[i].setAttribute("imageSrc",imageName);this.Images[i].setAttribute("imageHover",this.ImageHover);this.Images[i].setAttribute("value",i);this.Images[i].border=0;}};