﻿function emailSubmit(e)
{
    if (e.which != undefined && e.which == 13)
    {
        if (_currentBrowser.isSafari)
        {
            event.cancelBubble = true;
            event.returnValue = false;
        }
        submitEmailAddress();
    }
    else if (e.keyCode != undefined && e.keyCode == 13)
    {
        event.cancelBubble = true;
        event.returnValue = false;
        submitEmailAddress();
    }
}

// This routine will take the email address and pass it to the register email page.
// This is called from the quick registration controls
function submitEmailAddress()
{
    var emailAddress = document.getElementById("RegisterEmail").value;
    var zipCode = document.getElementById("ZipCode").value;

    if (emailAddress == undefined || emailAddress == "" || emailAddress.indexOf("@") == -1)
    {
        alert("Please enter an email address");
        return;
    }

    if (zipCode == undefined || zipCode == "")
    {
        alert("Please enter a zip code");
        return;
    }

    validateZipCode(zipCode);
}

function clearField(element, originalValue) {

    if (element.value == originalValue) {

        element.value = "";

    }

}

function validateZipCode(zipCode)
{
    GiantEagle.Applications.MarketDistrict.Internet.Web.Services.UserService.ValidateZipCode(zipCode, callbackValidateZipCode, callbackAjaxError);
}

function callbackValidateZipCode(result)
{
    var emailAddress = document.getElementById("RegisterEmail").value;
    var zipCode = document.getElementById("ZipCode").value;

    if (result.OperationSucceeded)
    {
        var q = _geApplicationRoot + "/Users/RegisterEmail.aspx?email=" + emailAddress + "&zipcode=" + zipCode;
        document.location = q;
    }
    else
    {
        alert("Please enter a valid zip code");
        return false;
    }

}

function callbackAjaxError(result)
{
    var message = "There was an error with the remote call : \n" +
        result._exceptionType +
        result._message +
        result._stackTrace +
        "\nTime Out: " + result._timedOut;
    alert(message);
} 