function getElementsByStyleClass (className) {
  var all = document.all ? document.all :
    document.getElementsByTagName('*');
  var elements = new Array();
  for (var e = 0; e < all.length; e++)
    if (all[e].className == className)
      elements[elements.length] = all[e];
  return elements;
}

function getElementsByTagAndStyleClass (tag,className) {
  var all = document.getElementsByTagName(tag);
  var elements = new Array();
  for (var e = 0; e < all.length; e++)
    if (all[e].className == className)
      elements[elements.length] = all[e];
  return elements;
}


function getThisURLParamValue(urlVarName) {
	var urlHalves = String(document.location).split('?');
	var urlVarValue = '';
	if(urlHalves[1]){
		var urlVars = urlHalves[1].split('&');
		for(i=0; i<=(urlVars.length); i++){
			if(urlVars[i]){
				var urlVarPair = urlVars[i].split('=');
				if (urlVarPair[0] && urlVarPair[0] == urlVarName) {
					urlVarValue = urlVarPair[1];
				}
			}
		}
	}

	return urlVarValue;   
}

function getURLParamPos(url,paramName){
	var checkIfContains1="&"+paramName+"=";
	var checkIfContains2="?"+paramName+"=";
	
	return Math.max(url.indexOf(checkIfContains1), url.indexOf(checkIfContains2))+1;
}

function applyParamToURL(paramName, paramValue,url){
	if (!url ) url=String(document.location);
	var value=escape(paramValue);
	var name=escape(paramName);
	var param=name+"="+value;
		
	var paramPos=getURLParamPos(url,name);
	
	if (paramPos>0){
		var result=url.substring(0,paramPos);
		result+=param;		
		var nextParamPos=url.indexOf("&", paramPos);
		if (nextParamPos>=0) result+=url.substring(nextParamPos);
		return result;
	}else{
		if (url.indexOf("?")>=0 && url.indexOf("?")!=(url.length-1)) return url.concat("&"+param);
		else if (url.indexOf("?")>=0 && url.indexOf("?")==(url.length-1)) return url.concat(param);
		else return url.concat("?"+param);
	}
	
}

function hideElement(id) {
	//safe function to hide an element with a specified id
	if (document.getElementById) { // DOM3 = IE5, NS6
		document.getElementById(id).style.display = 'none';
	}
	else {
		if (document.layers) { // Netscape 4
			document.id.display = 'none';
		}
		else { // IE 4
			document.all.id.style.display = 'none';
		}
	}
}

function showElement(id) {
	//safe function to show an element with a specified id
		  
	if (document.getElementById) { // DOM3 = IE5, NS6
		document.getElementById(id).style.display = 'block';
	}
	else {
		if (document.layers) { // Netscape 4
			document.id.display = 'block';
		}
		else { // IE 4
			document.all.id.style.display = 'block';
		}
	}
}

