function addOption(selObj, sText, sValue){
 	var opt = document.createElement('option');
	var txt = document.createTextNode(sText);

 	opt.setAttribute('value', sValue);
 
	opt.appendChild(txt);
	selObj.appendChild(opt);

	return false;
}

function removeAllOptions(obj){
	var l = obj.options.length;
	for (i=0;i<l;i++){
		obj.removeChild(obj.options[0]);
	}
 	return false;
}

function setbrowser(){
 	var useragent = navigator.userAgent; 
 	var bName = (useragent.indexOf('Opera') > -1) ? 'Opera' : navigator.appName; 
	var loader="";
	
	var useragent = navigator.userAgent; 
	var bName = "";
	bName = (useragent.indexOf('Mozilla') > -1) ? 'Mozilla' : navigator.appName;
	bName = (useragent.indexOf('Opera') > -1) ? 'Opera' : navigator.appName; 
	var pos = useragent.indexOf('MSIE'); 
	
	if ((pos > -1) && (bName != 'Mozilla') && (bName != 'Opera')) { 
		alert(bName);
		bVer = useragent.substring(pos + 5); 
		var pos = bVer.indexOf(';'); 
		var bVer = bVer.substring(0,pos); 
		} 
	var pos = useragent.indexOf('Opera'); 
	if (pos > -1) { 
		bVer = useragent.substring(pos + 6); 
		var pos = bVer.indexOf(' '); 
		var bVer = bVer.substring(0, pos); 
		} 
	if (bName == "Netscape") { 
		var bVer = useragent.substring(8); 
		var pos = bVer.indexOf(' '); 
		var bVer = bVer.substring(0, pos); 
		var pos = bVer.indexOf('-'); 
		if (pos > 0) {
			var bVer = bVer.substring(0, pos); 
			}
		} 
	if (bName == "Netscape" && parseInt(navigator.appVersion) >= 5) { 
		var pos = useragent.lastIndexOf('/'); 
		var bVer = useragent.substring(pos + 1); 
		} 

	var browser;
	if (bName == "Microsoft Internet Explorer" && bVer >= 4 && useragent.indexOf('Mac') == -1) {
		browser = "ie";
	} else {
		if (bName == "Microsoft Internet Explorer" && bVer >= 5.2 && useragent.indexOf('Mac') > -1) {
			browser = "iemac";
		} else {
			if ((bName == "Netscape" && (bVer >= 7 || parseInt(bVer) < 2)) || (bName == 'Mozilla')) {
				browser = "ns7";
			} else {
				if (bName == "Netscape" && bVer > 4 && bVer < 5) {
					browser = "ns4";
				} else {
					if (bName == 'Opera' && bVer > 7.02) {
						browser = "opera";
					} else {
						browser = "static";
						}
					}
				}
			}
		}

}

function getlayerall (id, document) {
  if (!document)
    document = window.document;
  if (document.layers) {
    for (var l = 0; l < document.layers.length; l++)
      if (document.layers[l].id == id)
        return document.layers[l];
    for (var l = 0; l < document.layers.length; l++) {
      var result = getlayer(id, document.layers[l].document);
      if (result)
        return result;
    }
    return null;
  }
  else if (document.all) {
    return document.all[id];
  }
  else if (document.getElementById) {
    return document.getElementById(id);
  }
}


var isNS = (navigator.appName.indexOf("Netscape") >= 0);
var isIE = (navigator.appName.indexOf("Microsoft") >= 0);

function getlayer(layername) {
	if (document.layers) {
		var theLayer=document.layers[layername]
	} else {
		if (document.getElementById) {
			var theLayer=document.getElementById(layername)
		} else {
			var theLayer=document.all[layername]
		}
	};

	return theLayer;
	
}

function toggleLayer(slayer, dispBlock){
	dispBlock = dispBlock || true;
	var layer = document.getElementById(slayer);
	if (layer.style.visibility == "visible"){
		layeroff(layer);
	}else{
		layeron(layer, dispBlock);
	}
}

function layeron(slayer, dispBlock) {
	  dispBlock = dispBlock || true;
      if(slayer){
            if (document.layers) {
				slayer.visibility="visible";
            } else {
				slayer.style.visibility="visible";
				if(dispBlock){
					slayer.style.display="block";
				}else{
					slayer.style.display="inline";
				}
            }
      }
} 

function layeroff(slayer) {
	slayer.style.visibility="hidden" ;
	slayer.style.display="none";
}

function layerdisplayon(slayer) {	
	slayer.style.display="inline";
	slayer.style.visibility="visible";
}

function layerdisplayoff(slayer) {
	slayer.style.visibility="hidden" ;
	slayer.style.display="none";
}

function elementdisplayon(elname){
	layerdisplayon(getlayer(elname));
}

function elementdisplayoff(elname){
	layerdisplayoff(getlayer(elname));
}


function UpdateInnerHTML(lname, html){
	try{
		document.getElementById(lname).innerHTML = html;
	}
	catch(err)
	{
	return false;
	}
}

/* flash clicker fix  */
if(document.getElementsByTagName){
	var objects = document.getElementsByTagName("object");
	for (var i = 0; i < objects.length; i++)
	{
	    objects[i].outerHTML = objects[i].outerHTML;
	}
}

/* endflash clicker fix  */

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function deleteCookie(name) {
	createCookie(name,"",-1);
}

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	var currentDomain = document.location.hostname.toString().toLowerCase();

	if (currentDomain.indexOf("localhost") == -1) {
	    var i = currentDomain.indexOf(".");
	    currentDomain = currentDomain.substring(i, currentDomain.length); 
	} else {
	    currentDomain = ""
	}
	document.cookie = name + "=" + value + expires + "; path=/; domain=" + currentDomain;
}

function checkinit(){
	if (typeof(pageinit)=='function') pageinit();
}

function checkMobile(){
	var x = readCookie('SendToMobile');
	if (x=='Go' ){
		top.location.href='payment.aspx?wci=mobilepayment';
	}
}

function request(var_name){
	var loc = document.location.href;
	var qPos = loc.indexOf('?');
	if (qPos > 0){
		loc = loc.substring(qPos, loc.length);
	}else{
		loc='';
	}
	
	if (loc.toLowerCase().indexOf(var_name) <= 0)
		{return '';}
	else{ 
		var pos1 = loc.toLowerCase().indexOf('&', loc.toLowerCase().indexOf(var_name));
		var pos2 = loc.toLowerCase().indexOf('#', loc.toLowerCase().indexOf(var_name));
		if (pos1<=0&&pos2<=0)
			{return loc.substring(loc.toLowerCase().indexOf(var_name) + var_name.length + 1)}
		else {
			if (pos1>0){
				return loc.substring(loc.toLowerCase().indexOf(var_name) + var_name.length + 1, loc.toLowerCase().indexOf('&', loc.toLowerCase().indexOf(var_name)))
			}else{
				return loc.substring(loc.toLowerCase().indexOf(var_name) + var_name.length + 1, loc.toLowerCase().indexOf('#', loc.toLowerCase().indexOf(var_name)))
			}
		}	
	}
}

function getElementsByClassName(strClassName, strTagName, oElm){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/-/g, "\-");
	var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
	var oElement;
	for(var i=0; i<arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}

function getInputValue(el){

//         function takes in reference to a form input and returns the current value
//         if a checkbox is unchecked, will return a zero length string
//         if a radio set is unselected, will return a zero length string

	var sRet = '';
	if(el.options){
		//selectbox
		sRet = el.options[el.selectedIndex].value;
	}else if(el.length){
		//multiple option radio
		for(var i = 0; i < el.length; i++){
			if(el[i].checked){
				sRet = el[i].value;
			}
		}
	}else if(el.type == 'radio'){
		//single option radio
		if(el.checked){
			sRet = el.value;
		}
	}else if(el.type == 'checkbox'){
		//checkbox
		if(el.checked){
			sRet = el.value;
		}
	}else{
		sRet = el.value;
	}
	return sRet;
}

function setInputValue(el, sValue){

//           function takes in reference to a form input and the new value
//           will set the value correctly for textboxes, radios, checkboxes and selectboxes

	if(el.options){
		//selectbox
		for(var i = 0; i<el.options.length; i++){
			if(el.options[i].value == sValue){
				el.selectedIndex = i;
				break;
			}
		}
	}else if(el.length){
		//multiple option radio
		for(var i = 0; i < el.length; i++){
			el[i].checked = false;
			if(el[i].value == sValue){
				el[i].checked = true;                                           
			}
		}
	}else if(el.type == 'radio'){
		//single option radio
		if(el.value == sValue){
			el.checked = true;
		}
	}else if(el.type == 'checkbox'){
		//checkbox
		el.checked = false;
		if(el.value == sValue){
			el.checked = true;
		}
	}else{
		el.value = sValue;
	}
}

function addLoadEvent(func){
	/* appends a function to the onload event */
	
	var oldonload = window.onload;
	if(typeof window.onload != 'function'){
		window.onload = func;
	}else{
		window.onload = function(){
			oldonload();
			func();
		}
	}
}

function left(str, n){
	if (n <= 0)
	    return "";
	else if (n > String(str).length)
	    return str;
	else
	    return String(str).substring(0,n);
}

function right(str, n){
	if (n <= 0)    
	   return "";
	else if (n > String(str).length)  
	   return str;                    
	else { 
	   var iLen = String(str).length;
	   return String(str).substring(iLen, iLen - n);
	}
}

function removeClass(element, oldClass){
  	var pattern = new RegExp("(^| )" + oldClass + "( |$)");
  	element.className = element.className.replace(pattern, "$1");
  	element.className = element.className.replace(/ $/, "");
}

function hasClass(element, findClass){
	var pattern = new RegExp("(^| )" + findClass + "( |$)");
	if (pattern.test(element.className)){
		return true;
	}
	return false;
}

function addClass(element, newClass){
  	if (!hasClass(element, newClass)){
    		if (element.className == ""){
      			element.className = newClass;
    		}else{
      			element.className += " " + newClass;
    		}
  	}
}