
function rr_ur(obj)
{
    var pDiv = obj.parentNode;
    var fselFound = false;
    for (var i=pDiv.childNodes.length-1; i >= 0; i--)
    {
        if ( 'IMG' == pDiv.childNodes[i].nodeName)
        {
			var pcImg = pDiv.childNodes[i];
			fselFound |= obj == pcImg;
			pcImg.src = fselFound ? "images/si/rs_f.gif" : "images/si/rs_e.gif";
		}
    }
}

function rr_rst(obj)
{
    rtgStart = obj.title.indexOf(':');
    rsrRtg = obj.title.substring(rtgStart+2);
    // alert(rsrRtg);
    if ( 0 == rsrRtg )
    {
        for (var i=0; i<obj.childNodes.length; i++)
        {
            if ( 'IMG' == obj.childNodes[i].nodeName)
            {
		        var pcImg = obj.childNodes[i];
		        pcImg.src = "images/si/rs_0.gif";
	        }
        }
    }
    else
    {
        var ndx = 1;
        for (var i=0; i<obj.childNodes.length; i++)
        {
            
            if ( 'IMG' == obj.childNodes[i].nodeName)
            {
		        var pcImg = obj.childNodes[i];
		        if ( ndx <= rsrRtg )
		        {
		            pcImg.src = "images/si/rs_f.gif";
		        }
		        else if ( ndx - 0.5 == rsrRtg )
		        {
		            pcImg.src = "images/si/rs_h.gif";
		        }
		        else
		        {
		            pcImg.src = "images/si/rs_e.gif";
		        }
		        ndx++;
	        }
        }
    }
}

function rr_sr(imgObj, RwvID, RwvGrID,  stars)
{
    var reqXML = "<?xml version=\"1.0\" encoding=\"utf-8\"?> \
    <soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" \
                   xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" \
                   xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\"> \
		<soap:Body> \
			<RatingSave xmlns=\"http://tempuri.org/\"> \
              <RatingID>" + RwvID + "</RatingID> \
              <RatingGroupID>" + RwvGrID + "</RatingGroupID> \
              <Rating>" + stars + "</Rating> \
			</RatingSave> \
		</soap:Body> \
    </soap:Envelope>";
    //alert(reqXML);
    
    var oHTTPRequest = XMLHttpRequestGet();

    if (oHTTPRequest) {
        oHTTPRequest.onreadystatechange = function() 
            {
                // only if req shows "complete"
                if (oHTTPRequest.readyState == 4)
                {
                    // alert(oHTTPRequest.status + "\n" + oHTTPRequest.getAllResponseHeaders()+oHTTPRequest.responseText);
                    // only if "OK"
                    if (oHTTPRequest.status == 200) 
                    {
                        // ...processing statements go here...
                        var response = oHTTPRequest.responseXML;
                        // alert(response.xml);
                        
                        var rRating = getElementData(response.getElementsByTagName("Rating")[0]);
                        //alert(rRating);
                        var rVotes = response.getElementsByTagName("Votes")[0];
                        imgObj.parentNode.title = "Current rating: " + rRating;
                        rr_rst(imgObj.parentNode);
                        getSpan(imgObj.parentNode).innerHTML = "Saved";
                        g_clObj = imgObj.parentNode;
                        setTimeout("clearNote();", 1000);
                    }
                }
            };
            
            
        oHTTPRequest.open("POST", g_urlRT, true);
        oHTTPRequest.setRequestHeader("Host", g_hostSC);
        oHTTPRequest.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
        oHTTPRequest.setRequestHeader("Content-Length", reqXML.length);
        oHTTPRequest.setRequestHeader("SOAPAction", "\"http://tempuri.org/RatingSave\"");

        oHTTPRequest.send(reqXML);
        getSpan(imgObj.parentNode).innerHTML = "Saving";
    }
}

function getSpan(obj)
{
    for (var i=0; i<obj.childNodes.length; i++)
    {
        if ( 'SPAN' == obj.childNodes[i].nodeName)
        {
            return obj.childNodes[i];
        }
    }
}

var g_clObj;
function clearNote()
{
    getSpan(g_clObj).innerHTML = "";
}
