// JavaScript Document
// Created Gene Kilchenko


function dateValidate(obj) {
    var alrt ="Please input date in valid format - mm/dd/yyyy!";
    var testresult=false;
    var n = obj.value;
	if (n != '') {
        var filter=/(^\d{2}\/{1}\d{2}\/{1}\d{4})/;
        if (filter.test(n))
        testresult=true;
        else {
          alert(alrt);
        }
	} else { alert(alrt); } 	
    return (testresult);
}

//----------------- Text Max Lemngth check ------------------------------//
function textCounter( field, countfield, maxlimit ) {
  if ( field.value.length > maxlimit )
  {
    field.value = field.value.substring( 0, maxlimit );
    alert( 'Textarea value can only be ' + maxlimit + ' characters in length.' );
    return false;
  }
  else
  {
    countfield.value = maxlimit - field.value.length;
  }
}

function textCount(textobj, textlenobj, n) {
   textCounter(textobj, textlenobj, n);	
}
//--------------------------------------------------------------------//

function checkContactUsForm(formobj) {
    var arrFields = new Array();
	var arrAlerts = new Array();
 
    arrFields.push('fromName', 'fromEmail', 'Subj', 'sMessage');
	arrAlerts.push('Please fill out Name field!', 'Please fill out E-Mail field!', 'Please fill out Subject field!', 'Please input message!');

	var alertMsg = "";	
	var l_Msg = alertMsg.length;

	for (var i = 0; i < arrFields.length; i++){
		var obj = formobj.elements[arrFields[i]];
		if (obj){
			switch(obj.type){
			case "select-one":
				if (obj.selectedIndex == -1){
					alertMsg += arrAlerts[i] + "\n";
				}
				break;
			case "select-multiple":
				if (obj.selectedIndex == -1){
					alertMsg += arrAlerts[i] + "\n";
				}
				break;
			case "text":
			case "password":
			case "textarea":
				if (obj.value == ""){
					alertMsg += arrAlerts[i] + "\n";
				}
				break;
			default:
			}
			if (obj.type == undefined){
				var blnchecked = false;
				for (var j = 0; j < obj.length; j++){
					if (obj[j].checked){
						blnchecked = true;
					}
				}
				if (!blnchecked){
					alertMsg += arrAlerts[i] + "\n";
				}
			}
		}
	}

	if (alertMsg.length != l_Msg){
		alert(alertMsg);
		return false;
	}
	
	
// validate e-mail
       var n = formobj.fromEmail.value;
	   if (n != "") {
          var filter=/^([\w-]+\.?)*\w+@([\da-zA-z-]+\.)+[a-zA-z]{2,6}$/;		
          if (!filter.test(n)) {
              alert("Please input a valid email address!");
		  return false;
	    } else return true;
	} else return true;
	
}

function validateRegistrationForm(formobj) {
		
    var arrFields = new Array();
	var arrAlerts = new Array();
 
    arrFields.push('sLastName', 'sFirstName', 'sEmail', 'sPhone', 'sAddrNum', 'sStreet', 'sCity', 'sZip', "sPwd", "sPwdConf");
	arrAlerts.push('Please fill out Last Name field!', 'Please fill out First Name field!', 'Please fill out E-Mail field!', 'Please fill out Telephone field!', 'Please fill Addres # field!', 'Please fill Addres Street field!', 'Please fill Addres City field!', 'Please fill Addres Zip Code field!', 'Please input Password!', 'Please confirm Password!');

	var alertMsg = "";	
	var l_Msg = alertMsg.length;

	for (var i = 0; i < arrFields.length; i++){
		var obj = formobj.elements[arrFields[i]];
		if (obj){
			switch(obj.type){
			case "select-one":
				if (obj.selectedIndex == -1){
					alertMsg += arrAlerts[i] + "\n";
				}
				break;
			case "select-multiple":
				if (obj.selectedIndex == -1){
					alertMsg += arrAlerts[i] + "\n";
				}
				break;
			case "text":
			case "password":
			case "textarea":
				if (obj.value == ""){
					alertMsg += arrAlerts[i] + "\n";
				}
				break;
			default:
			}
			if (obj.type == undefined){
				var blnchecked = false;
				for (var j = 0; j < obj.length; j++){
					if (obj[j].checked){
						blnchecked = true;
					}
				}
				if (!blnchecked){
					alertMsg += arrAlerts[i] + "\n";
				}
			}
		}
	}

	if (alertMsg.length != l_Msg){
		alert(alertMsg);
		return false;
	}
	
	
// validate e-mail
       var n = formobj.sEmail.value;
	   if (n != "") {
          var filter=/^([\w-]+\.?)*\w+@([\da-zA-z-]+\.)+[a-zA-z]{2,6}$/;		
          if (!filter.test(n)) {
              alert("Please input a valid email address!");
		      return false;
	      }
       } 
	   
// validete Telephone
    var n = formobj.sPhone.value;
	if (n != "") {
	   var anum=/\(\d{3}\)\d{3}-\d{4}/;
	   if (!anum.test(n)) {
	      alert("Please re-enter home phone number to valid format! E.g. (702)111-1111");
		  return false;  
	   }
	}
	
// validete Address number 
    var n = formobj.sNum.value;
	if (n != "") {
	   var anum=/\d/;
	   if (!anum.test(n)) {
	      alert('Please input correct value to Addres Number"');
		  return false;
	   } 
	}

// validete Address Zip
    var n = formobj.sZip.value;
	if (n != "") {
	   var anum=/(^\d{5}$)|(^\d{5}-\d{4}$)/;
	   if (!anum.test(n)) {
	      alert('Please input correct value to Zip Code"');
		  return false;
	   } 
	}

// validete Password
    var n = formobj.sPwd.value;
	if (n != "") {
	   var anum=/^.{4,}$/;
	   if (!anum.test(n)) {
	      alert('Password must be no less 4 characters!"');
		  return false;
	   } 
	}
	
	
// validete password conirmation
    var p = formobj.sPwd.value;
    var cp = formobj.sPwdConf.value;
	if (p != "") { 
	    if (p != cp) {
	      alert('Password did not confirmed! Pleae try conirm password again.!');
		  return false;
	    } else return true;
	} else return true;
	
}
