function validate_form()
{
	var array_input=document.getElementsByTagName("INPUT");
	var array_select=document.getElementsByTagName("SELECT");
	var array_textarea=document.getElementsByTagName("TEXTAREA");
	var alert_obj;
	var current_tabindex=1000; // init
	var checkbox_flag=false; // validation failed on checkbox?
	var radio_flag=false;
	var radio_buffer=0;
	var radio_buffer_checked=false;
	var radio_allchecked=false;
	var radio_first_tab=null;
	

	for(i=0; i<array_select.length; i++) { // select
		var buff=array_select[i].title;
		if(buff.substring(0,1)=='*' && array_select[i].disabled==false && array_select[i].value.length < 1) {
			if(array_select[i].tabIndex<current_tabindex) {
				alert_obj=array_select[i];
				current_tabindex=alert_obj.tabIndex;
			}
		}
	}
	for(i=0; i<array_input.length; i++) { // input
		var buff=array_input[i].title;
		if(array_input[i].type =='text' || array_input[i].type =='password') {
			if(buff.substring(0,1)=='*' && array_input[i].disabled==false && array_input[i].value.length < 1) {
				if(array_input[i].tabIndex<current_tabindex) {
					alert_obj=array_input[i];
					current_tabindex=alert_obj.tabIndex;
				}
			}
		} else if(array_input[i].type == 'radio' && radio_flag==false) {	// radio input
			if(buff.substring(0,1)=='*') {
				var radio_group=document.getElementsByName(array_input[i].name);
				var btn = valButton(radio_group);
				if (btn == null) {
					radio_flag=true;
					alert_obj=array_input[i];
					current_tabindex=alert_obj.tabIndex;
				}
			}
		} else if(array_input[i].type == 'checkbox') {
			if(buff.substring(0,1)=='*' && array_input[i].disabled==false && array_input[i].checked==false) {
				if(array_input[i].tabIndex<current_tabindex) {
					checkbox_flag=true;
					alert_obj=array_input[i];
					current_tabindex=alert_obj.tabIndex;
				}
			}
		} 
	}
	
	for(i=0; i<array_textarea.length; i++) {		// textarea
		var buff=array_textarea[i].title;
		if(buff.substring(0,1)=='*' && array_textarea[i].disabled==false && array_textarea[i].value.length < 1) {
			if(array_textarea[i].tabIndex<current_tabindex) {
				alert_obj=array_textarea[i];
				current_tabindex=alert_obj.tabIndex;
			}
		}
	}
	
	if(current_tabindex!=1000) {
		if(checkbox_flag==true) {
			alert('Please make sure you check '+alert_obj.title.substring(2, alert_obj.title.length));
		} else if(radio_flag==true) {
			alert('Please make sure you select '+alert_obj.title.substring(2, alert_obj.title.length));
		} else {
			alert('Please make sure you enter '+alert_obj.title.substring(2, alert_obj.title.length));
		}
		alert_obj.focus();
		return false;
	} else {
		//alert('something up');
	}
	
	/*var obj_pass=document.getElementById('password');
	var obj_pass2=document.getElementById('password_again');
	
	if(obj_pass.value!=obj_pass2.value) {
		alert('Please make sure both password fields are the same!');
		return false;
	}*/
	
	var obj_email=document.getElementById('email');
	return echeck(obj_email.value);
}

function echeck(str) {

	var at="@";
	var dot=".";
	var lat=str.indexOf(at);
	var lstr=str.length;
	var ldot=str.indexOf(dot);
	if (str.indexOf(at)==-1){
	   alert("Invalid E-mail Address");
	   return false;
	}

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
	   alert("Invalid E-mail Address");
	   return false;
	}

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
	    alert("Invalid E-mail Address");
	    return false;
	}

	 if (str.indexOf(at,(lat+1))!=-1){
	    alert("Invalid E-mail Address");
	    return false;
	 }

	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
	    alert("Invalid E-mail Address");
	    return false;
	 }

	 if (str.indexOf(dot,(lat+2))==-1){
	    alert("Invalid E-mail Address");
	    return false;
	 }
	
	 if (str.indexOf(" ")!=-1){
	    alert("Invalid E-mail Address");
	    return false;
	 }
 	 return true;				
}

function showDiv(size,n,elementName)
{
	anch=document.getElementById(elementName)
	if (size == 'large' )
	{
		document.getElementById('imgopen'+n).className = "inactive";
		document.getElementById('small'+n).className = "inactive";
		document.getElementById('imgclose'+n).className = "active";
		document.getElementById('large'+n).className = "active";
	}
	else
	{
		document.getElementById('imgopen'+n).className = "active";
		document.getElementById('small'+n).className = "active";
		document.getElementById('imgclose'+n).className = "inactive";
		document.getElementById('large'+n).className = "inactive";
	}
}

function showlist() {
	document.getElementById("hiddenlist").style.display = 'block';
}




function centerDiv(divId, innerHTML, w, h)
{ 
	var theDiv = document.getElementById(divId);
	var lt=(document.documentElement.clientWidth-w)/2;
	var bt = (document.documentElement.clientHeight-h)/2 + (document.body.parentNode.scrollTop);
		theDiv.innerHTML = innerHTML;
		theDiv.style.top=bt+"px";
		theDiv.style.left=lt+"px";
		theDiv.style.display = 'block';
}

function hideDiv(divId)
{
	var theDiv = document.getElementById(divId);
	theDiv.style.display = 'none';
}