﻿function Search() {
    document.location.href = $("#ResultPage").val();
    return false;
}



function SubscribeNewsletter() {
    Errors = "";
    $("form input,form select,form textarea").each(function () {
        $(this).removeClass("error").rules("remove");
    });
    $("#NewsletterEmail").rules("add", { required: true, email: true, messages: { required: "Please enter your Email Address", email: "Invalid email!! Please try user@domain.com"} });
    if (FormValidator.form()) {
        ShowMessageOnOverlay("Please wait..");
        $.post(BasePath + "Controller.ashx", {
            Action: "SubscribeNewsletter",
            Email: $("#NewsletterEmail").val()
        }, function (data) {
            DisableOverlay();
            ShowResult(data);
            $("#NewsletterEmail").val("Enter your Email Address");
        });
    } else { alert(Errors); }
    return false;
}

function ContactUs() {
    Errors = "";
    $("form input,form select").each(function () {
        $(this).removeClass("error").rules("remove");
    });
    $("#Email").rules("add", { required: true, email: true, messages: { required: "Please enter your Email", email: "Invalid email!! Please try user@domain.com"} });
    $("#FirstName").rules("add", { required: true, messages: { required: "Please enter your Name"} });
    $("#Message").rules("add", { required: true, messages: { required: "Please enter your Message"} });
    $("#Phone").rules("add", { required: true, messages: { required: "Please enter your Telephone"} });
    var Cats = new Array();
    $("#tdcats input[type='checkbox']").filter(":checked").each(function () {
        Cats.push($(this).val());
    });
    var hear = new Array();
    $("#tdHear input[type='checkbox']").filter(":checked").each(function () {
        hear.push($(this).val());
    });
    if (FormValidator.form()) {
        ShowMessageOnOverlay("Please wait...");
        $("form input,form select").attr("disabled", "disabled").css({ opacity: "0.3" });
        $.post(BasePath + "Controller.ashx", {
            Action: "ContactUs",
            Email: $("#Email").val(),
            FirstName: $("#FirstName").val(),
            Message: $("#Message").val(),
            Phone: $("#Phone").val(),
            Categories: Cats.join(","),
            Hear: hear.join(",")
        }, function (data) {
            DisableOverlayMessage();
            $("form input,form select").removeAttr("disabled").css({ opacity: "1" });
            ShowResult(data, function () {
                DisableOverlay();
            }, function () {
                $("#FirstName").focus();
                $("#FirstName").select();
            });
        });
    } else { alert(Errors); }
    return false;
}

function RecommendAFriend() {
    Errors = "";
    $("form input,form select").each(function () {
        $(this).removeClass("error").rules("remove");
    });
    $("#Email").rules("add", { required: true, email: true, messages: { required: "Please enter Your Email", email: "Invalid Email!! Please try user@domain.com"} });
    $("#Name").rules("add", { required: true, messages: { required: "Please enter Your Name"} });
    $("#Phone").rules("add", { required: true, messages: { required: "Please enter Your Telephone"} });
    $("#REmail").rules("add", { required: true, email: true, messages: { required: "Please enter Recommendee Email", email: "Invalid Recommendee Email!! Please try user@domain.com"} });
    $("#RName").rules("add", { required: true, messages: { required: "Please enter Recommendee Name"} });
    $("#RPhone").rules("add", { required: true, messages: { required: "Please enter Recommendee Telephone"} });
    if (FormValidator.form()) {
        ShowMessageOnOverlay("Please wait...");
        $("form input,form select").attr("disabled", "disabled").css({ opacity: "0.3" });
        $.post(BasePath + "Controller.ashx", {
            Action: "RecommendAFriend",
            Email: $("#Email").val(),
            Name: $("#Name").val(),
            Phone: $("#Phone").val(),
            REmail: $("#REmail").val(),
            RName: $("#RName").val(),
            RPhone: $("#RPhone").val()
        }, function (data) {
            DisableOverlayMessage();
            $("form input,form select").removeAttr("disabled").css({ opacity: "1" });
            ShowResult(data, function () {
                DisableOverlay();
            }, function () {
                $("#Name").focus();
                $("#Name").select();
            });
        });
    } else { alert(Errors); }
    return false;
}

function parseXML(xml) {
    var results = [];
    $(xml).find('item').each(function () {
        var ResultTitle = $.trim($(this).find('ResultTitle').text());
        var FormattedHtml = $.trim($(this).find('FormattedHtml').text());
        var FileURL = $.trim($(this).find('FileURL').text());
        results[results.length] = { 'data': { "ResultTitle": ResultTitle, "FormattedHtml": FormattedHtml, "FileURL": FileURL },
            'result': ResultTitle, 'value': FileURL
        };
    });
    return results;
};

function formatItem(data, i, j) {
    return data.FormattedHtml;
};

function formatResult(data) {
    return data.ResultTitle;
};


$(function () {
    if (jQuery.browser.msie) {
        $(".AllFiveRounded").corner("round 5px");
        $(".AllTenRounded").corner("round 10px");
        $(".AllTenRounded h2").corner("round 10px tl tr");
        $(".AllTenRounded .Body").corner("round 10px bl br");
    }
    FormValidator = $("#form1").validate({
        errorPlacement: function (error, element) {
            Errors += error.html() + "\n";
        }
    });

    /***************************** Quick Search **************************/
    $("#SearchKeyword").focus(function () {
        if ($(this).val() == "Enter keyword to search") $(this).val("");
    }).blur(function () {
        if ($(this).val() == "") $(this).val("Enter keyword to search");
    }).autocomplete("Controller.ashx", {
        extraParams: { Action: "Search" },
        width: 250,
        minChars: 1,
        max: 20,
        autoFill: false,
        mustMatch: 1,
        scrollHeight: 400,
        selectFirst: false,
        parse: parseXML,
        formatItem: formatItem,
        formatResult: formatResult,
        cacheLength: 0
    }).result(function (event, item) {
        if (item && item.FileURL.length > 0) window.location.href = item.FileURL;
        return false;
    });
    /**************************************************************/
});
