function MM_validateForm() { //v3.0
  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=MM_findObj(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 be a valid e-mail address. (User@Something.com)\n';
     		} else if (test!='R') { 
				num = parseFloat(val);
 		        if (val!=''+num) 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';
    			}
				if (test.indexOf('isPhone') != -1) { 
					p=test.indexOf(':');
          			min=test.substring(8,p); max=test.substring(p+1);
          			if (num<min || max<num) errors+='- '+nm+' must be a valid 10-digit phone number.\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 == '');
}

function MM_findObj(n, d) { //v3.0
  var p,i,x;  
  if(!d) d=document; 
  if((p=n.indexOf("?"))>0&&parent.frames.length) {
    	d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; 
  for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}

/*//======================== custom browse button ======================================//
var W3CDOM = (document.createElement && document.getElementsByTagName);

function initFileUploads() {
	if (!W3CDOM) return;
	var fakeFileUpload = document.createElement('div');
	fakeFileUpload.className = 'fakefile';
	fakeFileUpload.appendChild(document.createElement('input'));
	var image = document.createElement('img');
	image.src='images/button_browse.png';
	fakeFileUpload.appendChild(image);
	var x = document.getElementsById('browse');
	for (var i=0;i<x.length;i++) {
		if (x[i].type != 'file') continue;
		if (x[i].parentNode.className != 'fileinputs') continue;
		x[i].className = 'file hidden';
		var clone = fakeFileUpload.cloneNode(true);
		x[i].parentNode.appendChild(clone);
		x[i].relatedElement = clone.getElementsById('browse')[0];
		x[i].onchange = x[i].onmouseout = function () {
			this.relatedElement.value = this.value;
		}
	}
}*/