﻿//utility file

//Events to track
//Landing Page Viewed : id = 1
//Completed Form/ Loaded Flash : id = 2
//Clicked Jazz Festival URL : id = 3
//Clicked Refer a Friend : id = 4
//Completed Refer a Friend : id = 5
//Clicked on Logo : id = 6
//Clicked on "buy tickets" logo : id = 9

$(document).ready(function() {
    document.onkeypress = function(e) {
        if ($.browser.msie) {
            e = event;
        }
        if (e.keyCode == "13") {
            //x = e||window.event; 
            //t = x.target||x.srcElement;             
            $(".defaultbutton").click();
            return false;
        }
    }

    $("#master-modal").dialog({
        autoOpen: false,
        height: 110,
        width: 240,
        modal: true,
        resizable: false,
        overlay: {
            opacity: 0.7,
            background: "#eee"
        }
    }).show();

    //show dialog on ajax calls
    //if you dont want to show the dialog on an ajax call, set global: false
    $(document).ajaxStart(function(event) {
        $("#master-modal").dialog("open");
    }).ajaxStop(function() {
        $("#master-modal").dialog("close");
    }).ajaxError(function() {
        $("#master-modal").dialog("close");
    });

    $("#hySendAgain").click(function() {
        $("#reqfields").show();
        $("#form").show();
        $("#form input, #form textarea").val("");
        $("#msg").html("");
        $("#result").hide();
        $("#hySubmit").show();
        $("#hySendAgain").hide();
        return false;
    });
    
    $("#hyBuyTix").click(function() { LogEvent(9); });
    $("#logo").click(function() { LogEvent(6); });
    //addImgOver();   
});

function addImgOver() {
    $(".imgover").imageOver();
}

function submitdata() {
    var userid = $("#hiddenuserid").val();
    //if (userid != "0") {
        params = new Object;
        params.RecipientId = userid;
        params.FirstName = $("#txtFirstName").val();
        params.LastName = $("#txtLastName").val();
        params.StreetName = $("#txtStreetName").val();
        params.Address = $("#txtAddress").val();
        params.City = $("#txtCity").val();
        params.State = $("#txtState").val();
        params.Zip = $("#txtZip").val();
        params.CityOfBirth = $("#txtBirthCity").val();
        params.FavoriteBeverage = $("#txtFavoriteBeverage").val();
        params.Shopping = $("#txtShopping").val();
        params.Vehicle = $("#txtVehicle").val();
        params.Company = $("#txtCompany").val();
        params.Supervisor = $("#txtSupervisor").val();
        if ($("#chkNoPets").is(":checked")) {
            params.NameOfPet = "No pets here but I have a puppy calendar";
            params.HasPet = false;
        } else {
            params.NameOfPet = $("#txtPet").val();
            params.HasPet = true;
        }                      
        params.Email = $("#txtEmail").val();
        
        //alert("I logged your event!");
        var ajaxData = "{Params:" + $.toJSON(params) + "}";
        //alert(ajaxData);
        $.ajax({
            type: "POST",
            url: "Default.aspx/SaveData",
            data: ajaxData,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            timeout: 20000,
            beforeSend: function() {

            },
            error: function() {
                $("#plError h3").text("An error has occured!");
                $("#plError p").html("We were unable to save your data, please try again to continue.");
                $("#plError").slideDown("slow")
            },
            success: function(msg) {
                //alert(msg.d.EventId);
                if (msg.d.success) {
                    //load the flash here
                    $("#hiddenuserid").val(msg.d.RecipientId);
                    LoadFlash();
                } else {
                    $("#plError h3").text("An error has occured!");
                    $("#plError p").html("We were unable to save your data, please try again to continue. <br /><br />Error Message:<br />" + msg.d.message);
                    $("#plError").slideDown("slow")
                }
            },
            complete: function() {

            }
        });
    //}
}

function LogEvent(EventId) {
    var userid = $("#hiddenuserid").val();
    if (userid != "0") {
        params = new Object;
        params.RecipientId = userid;        
        params.EventTypeId = EventId;

        //alert("I logged your event!");
        var ajaxData = "{Params:" + $.toJSON(params) + "}";
        //alert(ajaxData);
        $.ajax({
            type: "POST",
            url: "Default.aspx/LogEvent",
            data: ajaxData,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            global: false,
            timeout: 20000,
            beforeSend: function() {
                
            },
            error: function() {
               
            },
            success: function(msg) {
                //alert(msg.d.EventId);
                if (msg.d.success) {
                   
                } else {
                   
                }
            },
            complete: function() {
                
            }
        });
    }
}

function SendReferAFriend() {
    var userid = $("#hiddenuserid").val();
    if (userid != "0") {
        params = new Object;
        params.RecipientId = userid;
        params.FriendFirstName = $("#txtFirstName").val(); ;
        params.FriendLastName = $("#txtLastName").val(); ;
        params.FriendEmail = $("#txtEmail").val(); ;
        params.FriendMessage = $("#txtMessage").val();

        //alert("I logged your event!");
        var ajaxData = "{Params:" + $.toJSON(params) + "}";
        //alert(ajaxData);
        $.ajax({
            type: "POST",
            url: "Refer.aspx/SendReferAFriend",
            data: ajaxData,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            timeout: 20000,
            beforeSend: function() {

            },
            error: function() {
                $("#plError h3").text("An error has occured!");
                $("#plError p").html("We were unable to save your data, please try again to continue.");
                $("#plError").slideDown("slow")
            },
            success: function(msg) {
                //alert(msg.d.success);
                if (msg.d.success) {
                    $("#plError").hide();
                    $("#reqfields").hide();
                    $("#form").hide();
                    $("#form input").val("");
                    $("#msg").html("Your Message was sent!");
                    $("#result").show();
                    $("#hySubmit").hide();
                    $("#hySendAgain").show();
                    LogEvent(5);
                } else {
                    $("#plError h3").text("An error has occured!");
                    $("#plError p").html("We were unable to save your data, please try again to continue. <br /><br />Error Message:<br />" + msg.d.message);
                    $("#plError").slideDown("slow")
                }
            },
            complete: function() {

            }
        });
    }
}

function LoadReferAFriend() {    
    window.location = "Refer.aspx?uid=" + $("#hiddenuserid").val();
}

function LoadFlash() {
    $("#currentmovie").val("Xerox_RIJF_working.swf");
    $("#moviezone").load("FlashPlayer.aspx?movie=Xerox_RIJF_working.swf&uid=" + $("#hiddenuserid").val() + " #divFlashPlayer",
        {},
        function(result, type) {
            $("#plPageData").hide();
            $(this).fadeIn("fast").show();

            LogEvent(2);
        }
    );
}

$.fn.imageOver = function() {
    return this.each(function() {
        var objSrc = $(this).attr("src");
        var ftype = objSrc.substring(objSrc.lastIndexOf("."), objSrc.length);
        var objSrcOver = objSrc.replace(ftype, "-ovr" + ftype);
       // var objSrcActive = objSrc.replace(ftype, "-active" + ftype);

        //        $(this).parent().append('<img src=\"'+objSrcOver+'\ class=' + 'hide' + ' />');
        //        $(this).parent().append('<img src=\"'+objSrcActive+'\ class=' + 'hide' + ' />');

        $(this).hover(function() {
            $(this).attr("src", objSrcOver);
        }, function() {
            $(this).attr("src", objSrc);
        });
    });
};

function emailcheck(str) {
    var emailReg = "^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+[\\w]$";
    var regex = new RegExp(emailReg);
    return regex.test(str);
}