function addParameter(url, parametername, parametervalue)
{
	var result;
	result = url;
	if (url.indexOf("?") > 0) {
		result += "&";
	} else {
		result += "?";
	}
	result += parametername + "=" + parametervalue;
	return result;
}

function setParameter(url, parametername, parametervalue)
{
	var paramIndex;
	var result = url;
	paramIndex = url.indexOf(parametername + "=");
	if (paramIndex > 0) {
		// change existing parameter
		var paramValueIndex = url.indexOf("=", paramIndex);
		var nextParamIndex = url.indexOf("&", paramIndex);
		if (nextParamIndex == -1) {
			nextParamIndex = url.length;
		}
		result = url.substr(0, paramValueIndex) + "=" + parametervalue + url.substr(nextParamIndex);			
	} else {
		// add new parameter
		result = addParameter(url, parametername, parametervalue);
	}	
	return result;		
}

function removeParameter(url, parametername)
{
	var paramIndex;
	var result = url;
	paramIndex = url.indexOf(parametername + "=");
	if (paramIndex > 0) {
		// remove existing parameter
		var nextParamIndex = url.indexOf("&", paramIndex);
		result = url.substr(0, paramIndex-1) + URL.substr(nextParamIndex);			
	} else {
		result = url;
	}	
	return result;				
}

