// #####################################################################################
// Functions here are intended to be CLIENT side JavaScript only. They are utility
// functions shared by many HTML files.
// #####################################################################################
var gMonthNames = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];

// --------------------------------------------------------------------------------------
// is it a IE browser
// --------------------------------------------------------------------------------------
function isIE() {
	if (navigator.appName=="Netscape") return false;
	else return true;
}

function preLoadImages() {
	if (document.images) {
		ImageDir = preLoadImages.arguments[0];
		ImageExt = preLoadImages.arguments[1];
		
		var cI;
		for (var loadProg = 2; loadProg < preLoadImages.arguments.length; loadProg++) {
			cI = preLoadImages.arguments[loadProg];
			eval (cI + '_on= new Image()');
			eval (cI + '_on.src = "' + ImageDir + cI + '_on.' + ImageExt + '"');

			eval (cI + '_off=new Image()');
			eval (cI + '_off.src = "' + ImageDir + cI + '_off.' + ImageExt + '"');

			eval (cI + '_sel=new Image()');
			eval (cI + '_sel.src = "' + ImageDir + cI + '_sel.' + ImageExt + '"');
		}
	}
}

function showToday() {
	var today = new Date();
	document.write(gMonthNames[today.getMonth()] + " " + today.getDate() + ", " + today.getFullYear());
}

function swapImage(oriImage, nextImage) {
	if (document.images) {
		document.images[oriImage].src=eval(nextImage + ".src");
		return true;
	}
}

function noneChecked( thisFormElmt ) {
	var noneAtAll = 1;
	var numOfRadio;

	if (!thisFormElmt) return 1;
	else {
		numOfRadio = thisFormElmt.length;
		if (!numOfRadio) {
			if (thisFormElmt.checked) return 0;
			else return 1;
		}
		else {
			for (var i=0; i<numOfRadio; i++) {
				if (thisFormElmt[i].checked) { noneAtAll=0; break; }
			}
			return noneAtAll;
		}
	}
}

function allNumbers( str ) {
	if ( isNaN( parseInt(str) ) ) return false;
	else if ( str.length == parseInt(str).toString().length ) return true;
	else return false;
}


function isFloat( str ) {
	var aFloat = true;
	for (var i=0; i<str.length; i++) {
		if ( "0123456789.".indexOf(str.charAt(i))<0 ) {
			aFloat = false;
			break;
		}
	}
	
	return aFloat;
}

function isEmpty(str) {
	var tmpStr = "";
	var notThese = " \n\r";
	
	for (var i=0; i<str.length; i++) if ( notThese.indexOf( str.charAt(i) )==-1 ) tmpStr += str.charAt(i);
	
	if (tmpStr=="") return(true);
	else return(false);
}

function buildArray() {
	var a = buildArray.arguments;
	for (i=0; i<a.length; i++) this[i] = a[i];
	this.length = a.length;
}

function displayDoc(whichGroup, whichDoc, whichGroupID, whichDocID, engOrFre){
	var winopts = "toolbar=0,menubar=0,location=0,resizable=1,status=1,directories=0,scrollbars=1,scrolling='auto'";
	var winname = "RecoChemDoc";
	var filename = "../includes/toTrack.asp?gptype=" + whichGroup + "&doctype=" + whichDoc + "&gpid=" + whichGroupID + "&docid=" + whichDocID + "&lang=" + engOrFre;
	popupWindow = window.open(filename,winname,winopts);
}
