// JavaScript Document
var greyImg="/images/star_gray.gif";
var redImg="/images/star_red.gif";
var msg=new Array();
var savedRating=null;
var componentName;
var oldRating;
var rtimer;
var totalStar;
var cf=null;



msg[0]='很不喜欢';
msg[1]='不喜欢';
msg[2]='还行';
msg[3]='推荐';
msg[4]='力推';

function addRatingSupport(comName,num,infomsg,clickFunction)
{
    if(!num)
    {
        num=5;
    }
    if(infomsg)
    {
        msg=infomsg;
    }
    if(clickFunction)
    {
        cf=clickFunction;
    }
    totalStar=num;
    componentName=comName;
    var com=document.getElementById(comName);
    if(com)
    {
        var imgs="";
        for(var i=0;i<num;i++)
        {
            imgs+="<img id='"+componentName+"_star"+i+"' src='"+greyImg+"' onmouseover='starOver("+num+","+i+");' onmouseout='clearAll("+num+");' onclick='doRating("+(i+1)+");'/>";
        }	
        com.innerHTML=imgs+"  <span id='"+componentName+"_msg'>请评分</span>";	
    }		
    
}

function addRatingSupportinit(comName,num,infomsg,clickFunction,initStar)
{
	
    if(!num)
    {
        num=5;
    }
    if(infomsg)
    {
        msg=infomsg;
    }
    if(clickFunction)
    {
        cf=clickFunction;
    }
    totalStar=num;
    componentName=comName;
    var com=document.getElementById(comName);
    if(com)
    {
        var imgs="";
    	for(var i=0;i<initStar;i++)
        {
            imgs+="<img id='"+componentName+"_star"+i+"' src='"+redImg+"' onmouseover='starOver("+num+","+i+");' onmouseout='clearAll("+num+");' onclick='doRating("+(i+1)+");'/>";
        }
        for(var j=initStar;j<num;j++)
        {
            imgs+="<img id='"+componentName+"_star"+j+"' src='"+greyImg+"' onmouseover='starOver("+num+","+j+");' onmouseout='clearAll("+num+");' onclick='doRating("+(j+1)+");'/>";
        }
        com.innerHTML=imgs+"  <span id='"+componentName+"_msg'>请评分</span>";	
    }		
    
}
	
function starOver(total,current)
{
    if(rtimer)
    {
        clearTimeout(rtimer);
    }
    savedRating=null;
    for(var i=0;i<=current;i++)
    {
        var img=document.getElementById(componentName+'_star'+i);
        img.src=redImg;
        img.title=msg[i];
        document.getElementById(componentName+'_msg').innerHTML=msg[i];
    }
}
		
function clearAll(total)
{
    for(var i=0;i<total;i++)
    {
        var img=document.getElementById(componentName+'_star'+i);
        img.src=greyImg;				
    }
    document.getElementById(componentName+'_msg').innerHTML='请评分';
    if(savedRating!=null)
    {
        for(var j=0;j<savedRating;j++)
        {
            var imag=document.getElementById(componentName+'_star'+j);
            if(imag)
            {
                imag.src=redImg;                    
            }
        }
        for(var m=savedRating;m<total;m++)
        {
            var imag=document.getElementById(componentName+'_star'+m);
            if(imag)
            {
                imag.src=greyImg;                    
            }
        }
        var msgcom=document.getElementById(componentName+'_msg');
        msgcom.innerHTML=msg[savedRating-1];
        clearTimeout(rtimer);
    }else
    {
        rtimer=setTimeout('refreshOldRating()',500);
    }
}
		
function refreshOldRating()
{
    if(oldRating)
    {
        savedRating=oldRating;
        clearAll(totalStar);
    }
}
                
function doRating(star)
{
    savedRating=star;
    oldRating=star;
    if(cf!=null)
    {
        cf(star);
    }
}
function showRating(comName,rating,total)
{
    var component=document.getElementById(comName);
    if(component)
    {
        var imgs="";
        for(var i=0;i<rating;i++)
        {
            imgs+="<img id='"+comName+"_star"+i+"' src='"+redImg+"'/>";
        }	
        for(var j=rating;j<total;j++)
        {
            imgs+="<img id='"+comName+"_star"+j+"' src='"+greyImg+"'/>";
        }
        //        var message="";
        //        if(rating<1)
        //        {
        //            message="还没有人评分"
        //        }else
        //        {
        //            message=msg[rating-1];
        //        }
        component.innerHTML=imgs;//+"  <span id='"+comName+"_msg'>"+message+"</span>";	
    }
}

function RatingInfo(container,rating,totalStarCount,starCount)
{
    this.container=container;
    this.totalStarCount=totalStarCount;
    this.starCount=starCount;
    this.rating=rating;
}
RatingInfo.prototype.info=new Array(5);
RatingInfo.prototype.info[0]='讨厌';
RatingInfo.prototype.info[1]='不喜欢';
RatingInfo.prototype.info[2]='一般';
RatingInfo.prototype.info[3]='喜欢';
RatingInfo.prototype.info[4]='非常喜欢';
RatingInfo.prototype.drawRatingInfo=function(){
    //    alert(this.rating);
    var message='<ul class="gray">总体评分';
    for(var i=5;i>0;i--)
    {
        var m='<li><span title="'+this.info[i-1]+'">';
        for(var j=0;j<i;j++)
        {
            m+='<img src="/images/star_red.gif">';
        }
        for(var k=j;k<5;k++)
        {
            m+='<img src="/images/star_gray.gif">';
        }
        var w=0;
        if(this.totalStarCount!=0)
        {
            w=this.starCount[i-1]/this.totalStarCount*200;
        }
        m+=' <img src="/images/p_tiao.gif" class="p_tiao" width="'+w+'" height="12"> '+this.starCount[i-1]+'人';
        m+='</span></li>';
        message+=m;
    }

    message+='<strong>平均评分 </strong><span title="'+this.info[this.rating-1]+'" id="average">';
    for(var r=0;r<this.rating;r++)
    {
        message+='<img src="/images/star_red.gif"/>';
    }
    for(var g=r;g<5;g++)
    {
        message+='<img src="/images/star_gray.gif"/>';
    }
    message+='</span></li>';

    message+="</ul>";
    //    alert(message);
    var com=document.getElementById(this.container);
    if(com)
    {
        com.innerHTML=message;
    }else
    {
        document.write(message);
    }
}