var newwin = null;

function validateDocs(obj){
  var retVal = false;

  for(var i=0; i<obj.length; i++){
	  if(obj.elements[i].type=='checkbox' && obj.elements[i].checked){
		  retVal = true;
		  break;
	  }
  }
  if(!retVal){
	  alert('Please select at least one publication.');
  }
  return retVal;
}

function submitDocs(obj){
  if(validateDocs(obj)){
	  obj.submit();
  }	
}

function validateLogin(obj){
	var errmsg = ''
    var focusfield = null;
    var flag = true;

	if(obj.txtFirstName){
		if(isBlank(obj.txtFirstName.value)){
		  errmsg += '\n\t* First Name';
		  flag = false;
		  if(focusfield == null){
			focusfield = obj.txtFirstName;
		  }
		}
	}

	if(obj.txtLastName){
		if(isBlank(obj.txtLastName.value)){
		  errmsg += '\n\t* Last Name';
		  flag = false;
		  if(focusfield == null){
			focusfield = obj.txtLastName;
		  }
		}
	}

	if(obj.txtAddress){
		if(isBlank(obj.txtAddress.value)){
		  errmsg += '\n\t* Address';
		  flag = false;
		  if(focusfield == null){
			focusfield = obj.txtAddress;
		  }
		}
	}

	if(obj.txtCity){
		if(isBlank(obj.txtCity.value)){
		  errmsg += '\n\t* City';
		  flag = false;
		  if(focusfield == null){
			focusfield = obj.txtCity;
		  }
		}
	}

	if(obj.txtEmail){
		if(isBlank(obj.txtEmail.value)){
		  errmsg += '\n\t* Email';
		  flag = false;
		  if(focusfield == null){
			focusfield = obj.txtEmail;
		  }
		}
	}

	if(obj.txtEmail){
		if(!isBlank(obj.txtEmail.value) && !isEmail(obj.txtEmail.value)){
		  errmsg += '\n\t* Email is invalid';
		  flag = false;
		  if(focusfield == null){
			focusfield = obj.txtEmail;
		  }
		}
	}


	if(!flag){
		if(errmsg != ''){
		  alert('The following field(s) are required or not on their valid format:\n' + errmsg);
		  focusfield.focus();
		  if(focusfield.type=='text'){
		    focusfield.select();
		  }
		}
	}
	return flag;
}

function validateMessage(obj){
	var errmsg = ''
    var focusfield = null;
    var flag = true;

	if(obj.memMessage){
		if(isBlank(obj.memMessage.value)){
		  errmsg += '\n\t* Message';
		  flag = false;
		  if(focusfield == null){
			focusfield = obj.memMessage;
		  }
		}
	}

	if(!flag){
		if(errmsg != ''){
		  alert('The following field(s) are required:\n' + errmsg);
		  focusfield.focus();
		  if(focusfield.type=='text'){
		    focusfield.select();
		  }
		}
	}
	return flag;
}
  
  
  
 function isBlank(str){
   var blankCheck = /^ *$/;
   return blankCheck.test(str);
 }

 function isEmail(str){
   var reEmail = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
   return reEmail.test(str);
 }

 function isZip(str) {
  var re = /^\d{5}$/;
  return re.test(str)
 }

 function isPhone(str){
    var objRegExp = /^[1-9]\d{2}-\d{3}\-\d{4}$/;
    return objRegExp.test(str);
 }

 function formatPhoneEx(obj){
   var len = obj.value.length;
  
   if(len == 3){
     obj.value = "(" + obj.value + ") ";
     return false;
   }

   if(len >= 9 && len <= 10){
     obj.value += "-";
     return false;
   }
}

 function formatPhone(obj, e){
  var code;
  if (!e) var e = window.event;
  if (e.keyCode) code = e.keyCode;
  else if (e.which) code = e.which;

  if(code==8)return;

  var str = obj.value;

  str = str.split('  ').join(' ');
  str = str.split(' -').join(' ');
  str = str.split('- ').join('-');
  str = str.split('--').join('-');

  obj.value = str;

  str = obj.value;
  var len = str.length;

  if(len < 3){
    str = str.split('(').join('');
	str = str.split(')').join('');
	obj.value = str;
  }

  if(len == 3){
	str = str.split('(').join('');
	str = str.split(')').join('');
	str = "(" + str + ") ";
	obj.value = str;
    return false;
  }

  if(len >= 9 && len <= 10){
    str = str.split('-').join('');
	str = str + "-";
	obj.value = str
    return false;
  }

  if(len >= 14 && len <= 15){
	str = str + " ";
	obj.value = str
    return false;
  }
}


function validateRegister(obj){
  var reEmail = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;

  if(isBlank(obj.txtFirstName.value)){
    alert('First name is a required field!');
	obj.txtFirstName.focus();
	return false;
  }

  if(isBlank(obj.txtLastName.value)){
    alert('Last name is a required field!');
	obj.txtLastName.focus();
	return false;
  }

  if(isBlank(obj.txtUserName.value)){
    alert('Username is a required field!');
	obj.txtUserName.focus();
	return false;
  }

  if(isBlank(obj.txtPassword.value)){
    alert('Password is a required field!');
	obj.txtPassword.focus();
	return false;
  }

  if(obj.txtPassword.value!=obj.txtCPassword.value){
    alert('Cannot confirm password!');
	obj.txtPassword.value = '';
	obj.txtCPassword.value = '';
	obj.txtPassword.focus();
	return false;
  }

  if(isBlank(obj.txtEmail.value)){
    alert('Email is a required field!');
	obj.txtEmail.focus();
	return false;
  }

  if (!reEmail.test(obj.txtEmail.value)){
    alert("Invalid email address!");
	obj.txtEmail.focus();
	return false;
  }

  return true;
}

function popup(url){
  var w = 1;
  var h = 1;
  var top = (screen.width - w) / 2;
  var left = (screen.height - h) / 2;
//  var properties = 'width=' + w + ', height=' + h + ', top=' + top + ', left=' + left + ', screenX=' + top + ', screenY=' + left + ', scrollbars=yes,status=yes';
  var properties = 'width=' + w + ', height=' + h + ', top=' + top + ', left=' + left + ', screenX=' + top + ', screenY=' + left;
//  alert(properties);
  newwin = window.open(url, '', properties);
//  newwin.blur();
}

function clearFields(obj){
	for(var i=0; i<obj.length; i++){
	  if(obj.elements[i].type=='text' || obj.elements[i].type=='password'){
		  obj.elements[i].value = '';
	  }
	}
}

function checkTextArea(obj, id){
	var maxChars = 500;
	var curChars = obj.value.length;
	if(obj){
		if(curChars > maxChars){
			obj.value = obj.value.substr(0, maxChars);
			curChars = obj.value.length;
		}
	}
	document.getElementById(id).innerHTML = ', ' + (maxChars - curChars) + ' remaining';
}

var xmlHttp;

function downloadDoc(url)
{ 
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
url=url+"?sid="+Math.random();
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}


function stateChanged(){ 
  if (xmlHttp.readyState==4){ 
    //document.getElementById("mainBody").innerHTML = xmlHttp.responseText;
  }
}

function GetXmlHttpObject(){
  var xmlHttp=null;
  try{
	// Firefox, Opera 8.0+, Safari
	xmlHttp=new XMLHttpRequest();
	}
	catch (e)
	{
	// Internet Explorer
	try
	{
	xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch (e)
	{
	xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	}
	return xmlHttp;
}