﻿
var sendingFriendEmail = false;

$(document).ready(function() {
   pageInit();      
});

var pageInit = function() {
    sendingFriendEmail = false;
    //hide all elements that should be hidden
    $("#emailBox").css("display", "none");
    $("#emailLink").click(function() { openEmailModal("emailBox", function() { sendFriendEmail(); }); return false; });
    $("#backToSearch").click(function() {
        if (history.length > 1) {
            history.back();
            return false;
        }
    });
}

/* email a friend functions */
var sendFriendEmail = function() {
    /* to stop double clicks */
    if (sendingFriendEmail == true) return;
    sendingFriendEmail = true;
    sendEmail($("#emailFriendForm"), "eafFriendName=" + $("#eafFriendName").val() + "&eafFriendEmail=" + $("#eafFriendEmail").val() + "&eafMyName=" + $("#eafMyName").val() + "&eafMyEmail=" + $("#eafMyEmail").val() + "&eafComments=" + $("#eafComments").val(), friendEmailSuccess, friendEmailError);
}
var friendEmailSuccess = function() {
    showModalMessage("emailBox", "Email Sent!", "Your email has been sent.", "sent");
    sendingFriendEmail = false;
}
var friendEmailError = function() {
    showModalMessage("emailBox", "Error!", "Your email could not be sent. Please try again.", "error");
    sendingFriendEmail = false;    
}

/* Email popup form common code */
var openEmailModal = function(id, submitEvent) {
    $('#' + id + ' form').validate({
        errorContainer: "#" + id + " .validation",
        errorLabelContainer: "#" + id + " .validation ul",
        wrapper: "li",
        submitHandler: submitEvent
    });
    $("#" + id + " .cancel").unbind().click(function() { closeModal(); return false; });
    $.nyroModalManual({
        modal: true,
        type: '#' + id,
        from: document
    });
}

var closeModal = function(empty) {
    $("#eafFriendName").val(''); $("#eafFriendEmail").val(''); $("#eafMyName").val(''); $("#eafMyEmail").val(''); $("#eafComments").val('');
    $("#emailValidation").hide();
    if (empty) $("#nyroModalContent").empty();
    $.nyroModalRemove();
}

var showModalMessage = function(id, title, message, titleClass) {
    var modal = $("#nyroModalContent");
    var box = $('#' + id).append($(modal.find("form")));
    box.find(":text").val("");
    box.find(":input:not(select):not(:button):not(:reset):not(:submit)").val("");
    var feedback = $("<div id=\"modalFeedback\"></div>").append($("<h4></h4>").text(title).addClass(titleClass)).append($("<p></p>").text(message));
    feedback.append($("<a href=\"#\" title=\"Close This Window\"></a>").text("Close This Window.").addClass("close").click(function() { closeModal(true); return false; }));
    modal.empty().append(feedback);
}

var sendEmail = function(form, post, successEvent, errorEvent) {
    $.ajax({
        data: post,
        url: form.attr("action"),
        type: "post",
        success: successEvent,
        error: errorEvent
    });
}

