﻿function validateEmpty(fld) {
    var error = "";

    if (fld.value.length == 0) {
        fld.style.background = 'Yellow';
        error = "The required field has not been filled in.<br />"
		return true;
    } else {
        fld.style.background = 'White';
		return false;
    }
    //return error;
}


function trim(s)
{
  return s.replace(/^\s+|\s+$/, '');
}

function validateEmail(fld) {
    var error="";
    var tfld = trim(fld.value);                        // value of field with whitespace trimmed off
    var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ;
    var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ;

    if (fld.value == "") {
        fld.style.background = 'Yellow';
        error = "You didn't enter an email address.<br />";
    } else if (!emailFilter.test(tfld)) {              //test email for illegal characters
        fld.style.background = 'Yellow';
        error = "Please enter a valid email address.<br />";
    } else if (fld.value.match(illegalChars)) {
        fld.style.background = 'Yellow';
        error = "The email address contains illegal characters.<br />";
    } else {
        fld.style.background = 'White';
    }
    return error;
}


// Get the HTTP Object
function getHTTPObject(){
   if (window.ActiveXObject)
       return new ActiveXObject("Microsoft.XMLHTTP");
   else if (window.XMLHttpRequest)
       return new XMLHttpRequest();
   else {
      alert("Your browser does not support AJAX.");
      return null;
   }
}

// Change the value of the outputText field
function setOutput(){
    if(httpObject.readyState == 4){
		document.getElementById('formDiv').style.display = "none";
		document.getElementById('resultDiv').style.display = "inline";
		document.getElementById('outputText').innerHTML = httpObject.responseText;
        //document.getElementById('outputText').value
        //    = httpObject.responseText;
    }

}

// Implement business logic
function doWork(){
    httpObject = getHTTPObject();
    if (httpObject != null) {
        httpObject.open("GET", "upperCase.php?inputText="
            +document.getElementById('inputText').value, true);
        httpObject.send(null);
		httpObject.onreadystatechange = setOutput;
    }
}

// Implement business logic
function sendSmbContact(){
    httpObject = getHTTPObject();
    if (httpObject != null) {
		var url = "/includes/smb_contact_form_handler.php";
		url = url + "?name=" + document.getElementById('name').value;
		url = url + "&email=" + document.getElementById('email').value;
		url = url + "&subject=" + document.getElementById('subject').value;
		url = url + "&message=" + document.getElementById('message').value;

        httpObject.open("GET", url, true);
        httpObject.send(null);
		httpObject.onreadystatechange = setOutput;
    }
}

// validate smb contact form
function validateSmbContact() {
	//alert("testing");
	var strError = "";

	if ( (validateEmpty(document.getElementById("name"))) |
	(validateEmpty(document.getElementById("subject"))) |
	(validateEmpty(document.getElementById("message"))) ) {
		strError += "Please complete all required fields.<br />";
	}

	//strError += validateEmpty(document.getElementById("name"));
	strError += validateEmail(document.getElementById("email"));
	//strError += validateEmpty(document.getElementById("message"));

	if (strError != "") {
		document.getElementById('errorMessage').style.display = "inline";
		//document.getElementById('errorMessage').innerHTML = strError;
		document.getElementById('errorMessage').innerHTML = strError; // "Some fields need correction:<br />" +
		//alert("Some fields need correction:\n" + strError);
	} else {
		sendSmbContact();
	}
}

// Implement business logic
function sendEntContact(){
    httpObject = getHTTPObject();
    if (httpObject != null) {
		var url = "/includes/ent_contact_form_handler.php";
		url = url + "?name=" + document.getElementById('name').value;
		url = url + "&email=" + document.getElementById('email').value;
		url = url + "&subject=" + document.getElementById('subject').value;
		url = url + "&message=" + document.getElementById('message').value;

        httpObject.open("GET", url, true);
        httpObject.send(null);
		httpObject.onreadystatechange = setOutput;
    }
}

// validate smb contact form
function validateEntContact() {
	//alert("testing");
	var strError = "";

	if ( (validateEmpty(document.getElementById("name"))) |
	(validateEmpty(document.getElementById("subject"))) |
	(validateEmpty(document.getElementById("message"))) ) {
		strError += "Please complete all required fields.<br />";
	}

	//strError += validateEmpty(document.getElementById("name"));
	strError += validateEmail(document.getElementById("email"));
	//strError += validateEmpty(document.getElementById("message"));

	if (strError != "") {
		document.getElementById('errorMessage').style.display = "inline";
		//document.getElementById('errorMessage').innerHTML = strError;
		document.getElementById('errorMessage').innerHTML = strError; // "Some fields need correction:<br />" +
		//alert("Some fields need correction:\n" + strError);
	} else {
		sendEntContact();
	}
}
