/*
Function : Request
Description : gets the value of a variable in querystring
Author : Decebal Te 
Creation date : 9/25/2002 12:09 PM
Version : 1.0
Parameters : sVanName = name of variable to get, sQueryString = querystring (location.search)
Result : string = variable value
Called by : 
Call : 
*/
function Request( sVarName, sQueryString )
{
	if( sVarName.indexOf( "?" ) >= 0 || sVarName.indexOf( "&" ) >= 0 )
	{
		alert("Corrupt request variable");
		return "";
	}
	var nPosQM, nPosVar, nPosAmp, sValue = "";
	nPosQM = sQueryString.indexOf( "?" );
	nPosVar = sQueryString.lastIndexOf( sVarName + "=" );
	if( nPosVar < 0 )
		return "";
	if( nPosQM >= nPosVar )
		return "";
	nPosAmp = sQueryString.indexOf( "&", nPosVar + 2 );
	if( nPosAmp < 0 )
		sValue = sQueryString.substr( nPosVar + sVarName.length + 1 );
	else
		sValue = sQueryString.substring( nPosVar + sVarName.length + 1, nPosAmp );
	return sValue;
}

/*
Function : SetQuery
Description : Adds a query variable
Author : Decebal Te 
Creation date : 11/22/2002 5:54 PM
Version : 1.0
Parameters : void
Result : void
Called by : 
Call : 
*/
function SetQuery( sVarName, sValue, sQueryString )
{
	if( sVarName.indexOf( "?" ) >= 0 || sVarName.indexOf( "&" ) >= 0 )
	{
		alert("Corrupt request variable");
		return "";
	}
	var nPosQM, nPosVar, nPosAmp;
	nPosQM = sQueryString.indexOf( "?" );
	nPosVar = sQueryString.lastIndexOf( sVarName + "=" );
	var hasQuery = true;
	if( nPosQM < 0 )
	{
		sQueryString += "?";
		hasQuery = false;
	}
	if( nPosVar < 0 )
	{
		if( hasQuery )
			return sQueryString + "&" + sVarName + "=" + sValue;
		else
			return sQueryString + sVarName + "=" + sValue;
	}
	var nPosEqual = 0;
	nPosEqual = sQueryString.indexOf( "=", nPosVar );
	if( nPosEqual > 0 )
	{
		nPosAmp = sQueryString.indexOf( "&", nPosEqual );
		if( nPosAmp > 0 )
		{
			//alert("incorect");
			var sOutput = "";
			sOutput = sQueryString.substring( 0, nPosEqual );
			sOutput += "=" + sValue + sQueryString.substr( nPosAmp );
			return sOutput;
		}
		else
		{
			var sOutput = "";
			sOutput = sQueryString.substring( 0, nPosEqual );
			sOutput += "=" + sValue;
			return sOutput;
		}
	}
	return sQueryString;			//in case of error, to return same string
}


