
var currTimer = null;
var currEleID = null;
var defaultID = null;

function setDefault(eleID) {
	defaultID = eleID;
	showHide(defaultID, true, false);
	//alert(eleID);
}

function showHide(eleID, showEle, useDelay) {
	if(useDelay) {
		currTimer = setTimeout("showHide('"+eleID+"', "+showEle+", false)", 5000);
	} else {
		var ele = document.getElementById(eleID);
		if(ele) {
		if(showEle) {
			if(currTimer!=null) {
				clearTimeout(currTimer);
			}
			if(currEleID!=null) {
				var ele2 = document.getElementById(currEleID);
				ele2.style.display = 'none';
			}
			currEleID = eleID;
			//alert('showing: '+eleID);
			ele.style.display = 'block';
		} else {
			//alert('hiding: '+eleID);
			ele.style.display = 'none';
			if(currEleID==eleID) {
				currEleID = null;
				
				showHide(defaultID, true, false);
			}
		}
		}
	}
}

function hideRadios(formID) {
	var form = document.getElementById(formID);
	for(var i=0; i<form.elements.length; i++) {
		if(form.elements[i].type=='radio') {
			form.elements[i].className = 'color_hiddenRadio';
		}
	}
}

function setCSS_Class(id, class) {
	var obj = document.getElementById(id);
	var classes = obj.className.split(' ');
	
	var str = '';
	
	for(var i=0; i<classes.length; i++) {
		if(classes[i]!=class) {
			if(str.length>0 && str.charAt(str.length-1)!=' ') {
				str += ' ';
			}
			str += classes[i];
		}
	}
	str += ' '+class;
	obj.className = str;
	//alert(obj.className);
}

function removeCSS_Class(id, class) {
	var obj = document.getElementById(id);
	var classes = obj.className.split(' ');
	
	var str = '';
	
	for(var i=0; i<classes.length; i++) {
		if(classes[i]!=class) {
			if(str.length>0 && str.charAt(str.length-1)!=' ') {
				str += ' ';
			}
			str += classes[i];
		}
	}
	obj.className = str;
}

var colorGrps = new Array();

function toggleColorSelect(grp, id, class) {
	if(colorGrps[grp]!=undefined) {
		removeCSS_Class(colorGrps[grp], class);
	}
	
	setCSS_Class(id, class);
	
	colorGrps[grp] = id;
}

function MM_validateForm() { //v4.0
  if (document.getElementById){
    var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
    for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]);
      if (val) { nm=val.name; if ((val=val.value)!="") {
        if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
          if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
        } else if (test!='R') { num = parseFloat(val);
          if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
          if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
            min=test.substring(8,p); max=test.substring(p+1);
            if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
      } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
    } if (errors) alert('The following error(s) occurred:\n'+errors);
    document.MM_returnValue = (errors == '');
} }
