﻿var errorTextFirstname = "<p>Please enter your first name.</p>";
var errorTextLastName = "<p>Please enter your last name.</p>";
var errorTextEmail = "<p>Please enter a valid email address.</p>";
var errorTextComment = "<p>Please enter a message.</p>";
var errorTextGeneral = "<p>Sorry, there was an error sumbmitting form.</p>";

function ContactUs() {

    var name = ValidateLastName();
    var email = ValidateEmail();
    var comment = ValidateComment();
    var id = ValidateId();
    
    if (name == false || email == false || comment == false || id == false ) {
        return false;
    }

    var sendNews;
    if (document.getElementById('newsletter-check').status == true || document.getElementById('newsletter-check').checked == true) {
        sendNews = "1"; //"Yes";
    }
    else {
        sendNews = "0"; //"No";
    }

    xmlhttpPost("/PageTemplates/FormProcessing.aspx?" +
                "FormType=contactus" +
                "&FormGuid=" + escape(document.getElementById("ctl00_ContentPlaceHolder1_pageGuid").value) +
                "&Message=" + escape(document.getElementById('usercomment').value) +
                "&Title=" + escape(document.getElementById('ddTitle').value) +
                "&FirstName=" + escape(document.getElementById('firstname').value) +
                "&LastName=" + escape(document.getElementById('secondname').value) +
                "&TelephoneNo=" + escape(document.getElementById('telephone').value) +
                "&Email=" + escape(document.getElementById('email').value) +
                "&SendNewsletter=" + escape(sendNews));

    return false;
}

function xmlhttpPost(strURL) {
    var xmlHttpReq = false;
    var self = this;
    // Mozilla/Safari
    if (window.XMLHttpRequest) {
        self.xmlHttpReq = new XMLHttpRequest();
    }
    // IE
    else if (window.ActiveXObject) {
        self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }
    self.xmlHttpReq.open('GET', strURL, true);
    self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    self.xmlHttpReq.onreadystatechange = function() {
        if (self.xmlHttpReq.readyState == 4) {
            updatepage(self.xmlHttpReq.responseText);
        }
    }
    self.xmlHttpReq.send(null);
}


function updatepage(str) {
    window.location = str;
}

function ValidateId() {
    if (document.getElementById('ctl00_ContentPlaceHolder1_pageGuid').value != "") {
        document.getElementById('Err').style.display = "none";
        document.getElementById('Err').innerHTML = "";
        return true;
    }
    else {
        document.getElementById('Err').style.display = "";
        document.getElementById('Err').innerHTML = errorTextGeneral;
        return false;
    }
}

function ValidateFirstName() {
    if (document.getElementById('firstname').value != "") {
        document.getElementById('ErrFirstName').style.display = "none";
        document.getElementById('ErrFirstName').innerHTML = "";
        return true;
    }
    else {
        document.getElementById('ErrFirstName').style.display = "";
        document.getElementById('ErrFirstName').innerHTML = errorTextFirstname;
        return false;
    }
}

function ValidateLastName() {
    if (document.getElementById('secondname').value != "") {
        document.getElementById('ErrLastName').style.display = "none";
        document.getElementById('ErrLastName').innerHTML = "";
        return true;
    }
    else {
        document.getElementById('ErrLastName').style.display = "";
        document.getElementById('ErrLastName').innerHTML = errorTextLastName;
        return false;
    }
}

function ValidateComment() {
    if (document.getElementById('usercomment').value != "") {
        document.getElementById('ErrMessage').style.display = "none";
        document.getElementById('ErrMessage').innerHTML = "";
        return true;
    }
    else {
        document.getElementById('ErrMessage').style.display = "";
        document.getElementById('ErrMessage').innerHTML = errorTextComment;
        return false;
    }
}

function ValidateEmail() {
    var email = document.getElementById('email').value;
    if ((email.indexOf("@") > 1) && //  must contain @, and it must not be the first character
          (email.lastIndexOf(".") > email.indexOf("@")) &&  // last dot must be after the @
          (email.indexOf("@") != email.length) &&  // @ must not be the last character
          (email.indexOf("..") < 0) && // two periods in a row is not valid
          (email.indexOf(".") != email.length) &&  // . must not be the last character
          (AllValidEmailChars(email))) // all characters must be valid
    {
        document.getElementById('ErrEmail').style.display = "none";
        document.getElementById('ErrEmail').innerHTML = "";
        return true;
    }
    else {
        //if (email == "") {
        //    document.getElementById('ErrEmail').style.display = "none";
        //    document.getElementById('ErrEmail').innerHTML = "";
        //    return true;
        //}
        //else {
            document.getElementById('ErrEmail').style.display = "";
            document.getElementById('ErrEmail').innerHTML = errorTextEmail;
            return false;
       // }
    }
}

function AllValidEmailChars(email) {
    var isValid = true;
    var validchars = "abcdefghijklmnopqrstuvwxyz0123456789@.-_";
    for (var i = 0; i < email.length; i++) {
        var letter = email.charAt(i).toLowerCase();
        if (validchars.indexOf(letter) != -1) {
            continue;
        }
        else {
            isValid = false;
            break;
        }
    }
    return isValid;
}


