//	DynaStars.js
//
//	Thomas E. George
//	April 07, 2010
//
var debugModeFlag = false; // Debug mode on/off (for error alerts)

var _puwin    = null;
var _counter  = 0;
var _timerObj = null;

var _fn_omo   = null;

function process_error(msg)
{
	if((msg != null) && (msg.length > 0))
	{
		if(debugModeFlag)
		{
			alert(msg);
		}
	}
}

function SetOverImageDS(element)
{
	try
	{
		//alert("in SetOverImageDS()");
		
		var srcText = "";
		
		var rStar = document.getElementById("rstar1");
		//var rStar2 = document.getElementById("rstar2");
		//var rStar3 = document.getElementById("rstar3");
		//var rStar4 = document.getElementById("rstar4");
		//var rStar5 = document.getElementById("rstar5");
		
		if(element != null && rStar != null)
		{
			var i;
			
			// clear out the ones above
			for(var i = 4; i >= 0; i--)
			{
				rStar = document.getElementById("rstar" + (i+1));
				if(rStar != null && element != rStar)
				{
					srcText = rStar.src; //unescape()
					if(srcText.indexOf("null") == -1)
					{
						rStar.src = srcText.replace(/full/gi, "null");
					}
				}
				else
				{
					break;
				}
			}
			
			// light up the ones below
			for(i = 0; i < 5; i++)
			{
				rStar = document.getElementById("rstar" + (i+1));
				if(rStar != null && element != rStar)
				{
					srcText = rStar.src; //unescape()
					if(srcText.indexOf("full") == -1)
					{
						rStar.src = srcText.replace(/null/gi, "full");
					}
				}
				else
				{
					break;
				}
			}
			//alert("action1=" + action1);
			
			// light up this one and turn-off onmouseout
			srcText = element.src; //unescape()
			if(srcText.indexOf("full") == -1)
			{
				element.src = srcText.replace(/null/gi, "full");
				if(element.onmouseout != null)
				{
					//alert(_fn_omo);
					
					_fn_omo = element.onmouseout;
					element.onmouseout = null;
					
					//alert(_fn_omo);
				}
			}
			else if(element.onmouseout == null)
			{
				//alert(_fn_omo);
					
				element.onmouseout = _fn_omo;
			}
			
			// set label
			var rStarsR = document.getElementById("rstarsr");
			if(rStarsR != null)
			{
				//alert(element.title);
				
				rStarsR.innerHTML = element.title; //'hello'
			}
		}
	}
	catch(e)
	{
	    if(e.description.length != 0)
	    {
	        process_error("DynaStars.js:SetOverImageDS() : Exception caught [" + e.description + "]");
	    }
	    else
	    {
	        process_error("DynaStars.js:SetOverImageDS() : ERROR - Exception occurred --- Cannot process.");
	    }
	}
	finally
	{
	}
}

function SetOutImageDS(element)
{
	try
	{
		//alert("in SetOutImageDS()");

		var srcText = "";
		
		var rStar = document.getElementById("rstar1");
		//var rStar2 = document.getElementById("rstar2");
		//var rStar3 = document.getElementById("rstar3");
		//var rStar4 = document.getElementById("rstar4");
		//var rStar5 = document.getElementById("rstar5");
		
		if(element != null && rStar != null)
		{
			// clear out this one
			srcText = element.src; //unescape()
			if(srcText.indexOf("null") == -1)
			{
				element.src = srcText.replace(/full/gi, "null");
			}
			
			// clear out the ones above
			for(var i = 4; i >= 0; i--)
			{
				rStar = document.getElementById("rstar" + (i+1));
				if(rStar != null && element != rStar)
				{
					srcText = rStar.src; //unescape()
					if(srcText.indexOf("null") == -1)
					{
						rStar.src = srcText.replace(/full/gi, "null");
					}
				}
				else
				{
					break;
				}
			}
			//alert("action1=" + action1);
			
			// set label
			var rStarsR = document.getElementById("rstarsr");
			if(rStarsR != null)
			{
				//alert(element.title);
				var et = element.title;
				
				var etn = et.substring(0, 1);
				//alert(element.title);
				etn = etn - 1;
				if(etn > 0)
				{
					et = etn + et.substring(1);
				}
				else
				{
					et = "pick star rating";
				}
			
				rStarsR.innerHTML = et;
				rStarsR.title = "5 is best"
			}
		}
	}
	catch(e)
	{
	    if(e.description.length != 0)
	    {
	        process_error("DynaStars.js:SetOutImageDS() : Exception caught [" + e.description + "]");
	    }
	    else
	    {
	        process_error("DynaStars.js:SetOutImageDS() : ERROR - Exception occurred --- Cannot process.");
	    }
	}
	finally
	{
	}
}

function ClickStar(element)
{
    var rc = false;
    
	try
	{
		if(element)
		{
			var iID = element.id; //unescape()
			//alert(iID);
			
			element.onmouseout = null;

			var rStarsR = document.getElementById("rstarsr");
			if(rStarsR != null)
			{
				//alert(element.title);
				
				rStarsR.innerHTML = element.title; // + " selected";
			}
		}
	}
	catch(e)
	{
	    if(e.description.length != 0)
	    {
	        process_error("DynaStars.js:ClickStar() : Exception caught [" + e.description + "]");
	    }
	    else
	    {
	        process_error("DynaStars.js:ClickStar() : ERROR - Exception occurred --- Cannot process.");
	    }
	}
	finally
	{
	}
	
	return(rc);
}

function ClickStarA(element, doSubmit)
{
    var rc = false;
    
	try
	{
		if(element)
		{
			var iID = element.id; //unescape()
			//alert(iID);

			if(doSubmit)
			{
				rc = true;
			}
		}
	}
	catch(e)
	{
	    if(e.description.length != 0)
	    {
	        process_error("DynaStars.js:ClickStarA() : Exception caught [" + e.description + "]");
	    }
	    else
	    {
	        process_error("DynaStars.js:ClickStarA() : ERROR - Exception occurred --- Cannot process.");
	    }
	}
	finally
	{
	}
	
	return(rc);
}

function _timedFocus(msvar)
{
	var t1 = setTimeout("_puwin.focus()", msvar);
}

function _timedClose(msvar)
{
	var t1 = setTimeout("_puwin.close()", msvar);
}

function _startTimedCount(msvar)
{
	document.getElementById('counter').value = _counter;
	
	_counter = _counter + 1;
	
	// recursive call to self
	_timerObj = setTimeout("_startTimedCount()", msvar);
}

function _stopTimedCount()
{
	clearTimeout(_timerObj);
	_counter = 0;
}

