﻿var vMoveCount = 0;
var vListMenuBackgroundColor = null;
/******************** Login Event ***************************/
$(window).load(function() {

    UpdateLoginStatus();
    $('a.Login_Menu').click(function() {
        CallLoginDialog(isLoginStatus());
    });

    $('a.My_Account_Menu').click(function() { });

    $('td.My_Account_Menu').click(function() {
        if (isLoginStatus()) {
            MyAccountMenu(true);
            ShowMyAccountList(this);
        }
    });

    //    $('td.My_Account_Menu').mouseleave(function() {
    //        if (isLoginStatus()) {
    //            MyAccountMenu(false);
    //        }
    //    });

    $('a.MyAccountBar').click(function() {
        try {
            var vObj = $(this);
            var vParentObj = vObj.parent('li.MenuLinkHandler');
            window.location.pathname = "/My-Account/" + vObj.attr('PathName');
        } catch (ex) {
            alert('My Account');
        }
    });

    $('span.ListMyProfile').click(function() {
        if (isLoginStatus()) {
            try {
                var vObj = $(this);
                // active - menu
                window.location.pathname = "/My-Account/" + vObj.attr('PathName');
            } catch (ex) {
                alert('My Account');
            }
        }
    });

    /*************************** My Account **********************************/
    $('div.MyAccountListMenu').mouseover(function(event) {
        if (isLoginStatus()) {
            MyAccountMenu(true);
        }
    });

    $('div.MyAccountListMenu').mouseleave(function(event) {
        if (isLoginStatus()) {
            var vObj = $('a.My_Account_Menu');
            vMenuObj = $(this)
            var vY = parseInt(vMenuObj.css('top'), 10);
            var vClientY = parseInt(event.clientY, 10);
            if (vClientY >= vY || vClientY <= vY - 30) {
                vMenuObj.hide();
                $('#MyAccountListMenuIFrame').hide();
                MyAccountMenu(false);
            }
        }
    });

    $('td.My_Account_Menu').mouseover(function(event) {
        if (isLoginStatus()) {
            vMenuObj = $('div.MyAccountListMenu')
            if (vMenuObj.is(':hidden') == false) {
                vMenuObj.show();
            }
        }
    });

    $('td.My_Account_Menu').mouseleave(function(event) {
        if (isLoginStatus()) {

            var vScrolltop = $(window).scrollTop();
            var vObj = $(this);
            vMenuObj = $('div.MyAccountListMenu')

            var vClientY = parseInt(event.clientY, 10) + vScrolltop;
            var vY = parseInt(vMenuObj.css('top'), 10);

            if (vClientY >= vY) {
            } else {
                vMenuObj.hide();
                $('#MyAccountListMenuIFrame').hide();
                MyAccountMenu(false);
            }
        }
    });

    $('td.MyMenuList').mouseover(function(event) {
        if (isLoginStatus()) {
            var vObj = $(this);
            if (vListMenuBackgroundColor == null) {
                vListMenuBackgroundColor = $('#zd_tMenuContainer').css('background-color');
            }
            vObj.css('background-color', vListMenuBackgroundColor);
            vObj.css('color', '#ffffff');
        }
    });

    $('td.MyMenuList').mouseleave(function(event) {
        if (isLoginStatus()) {
            var vObj = $(this);
            vObj.css('background-color', '#ffffff');
            vObj.css('color', '#25396C');
        }
    });

    $('td.MyMenuList').click(function() {
        if (isLoginStatus()) {
            LinkMenuList($(this));
        }
    });

    $('img.MyMenuList').click(function() {
        if (isLoginStatus()) {
            LinkMenuList($(this));
        }
    });

    $('a.MyMenuList').click(function() {
        if (isLoginStatus()) {
            LinkMenuList($(this));
        }
    });
});

function updateByDlg3(vValue, vType) {

    try {
        switch (vType.toLowerCase()) {
            case 'login_popup':
                if (vValue.toLowerCase() == 'login_success') {
                    UpdateLoginStatus("Logout");
                } else
                    if (vValue.toLowerCase() == 'create_new_account') {
                    var vURL = "Login/Signup_Popup.aspx";
                    openDlg(vURL, 650, 720, 'Signup_Popup');
                } else
                    if (vValue.toLowerCase() == 'forgot') {
                    var vURL = "Login/Forgot_Password_Popup.aspx";
                    openDlg(vURL, 590, 460, 'Forgot_Password_Popup');
                } else
                    if (vValue.toLowerCase() == 'trouble') {
                    var vURL = "Login/Logging_Trouble.aspx";
                    openDlg(vURL, 550, 460, 'Logging_Trouble');
                }
                break;
            case 'logging_trouble':
                if (vValue.toLowerCase() == 'click_here1') {
                     var vURL = "Login/Forgot_Password_Popup.aspx";
                     openDlg(vURL, 590, 460, 'Forgot_Password_Popup');
                } else
                if (vValue.toLowerCase() == 'click_here2') {
                    var vURL = "Login/Contact_Support.aspx";
                    openDlg(vURL, 530, 520, 'Signup_Popup');
                } else
                if (vValue.toLowerCase() == 'return') {
                
                }
                break;
            case 'logout_popup':
                UpdateLoginStatus("login");
                break;
            case 'signup_success':
                // var vURL = "Login/Signup_Complete_Popup.aspx?UserName=" + vValue;
                // openDlg(vURL, 430, 250, 'Signup_Complete');
                break;
            case 'signup_popup':
                {
                    if (vValue.toLowerCase() == 'login_popup') 
                    {
                        CallLoginDialog(false);
                    }
                    break;
                }
        }
    } catch (ex) {
        alert('updateByDlg :' + ex.message);
    }

}

/******************** Login Method ***************************/
function CallLoginDialog(vIsLogin) {
    if (vIsLogin == false) {
        var vURL = "Login/Login_Popup.aspx";
        openDlg(vURL, 650, 380, 'Login_Popup');
    } else {
        // CallLogout();
        var vURL = "Login/Logout.aspx";
        openDlg(vURL, 1, 1, 'Logout_Popup')
    }
}

function ShowMyAccountList(vObj) {

    var vPos = absPos(vObj);
    var vMenuObj = $('div.MyAccountListMenu');
    var vIFrameObj = $('#MyAccountListMenuIFrame');
    

    vMenuObj.css('left', vPos.x);
    vMenuObj.css('top', vPos.y + $(vObj).outerHeight());

    vIFrameObj.css('top', vMenuObj.css('top'));
    vIFrameObj.css('left', vMenuObj.css('left'));
    vIFrameObj.css('width', vMenuObj.width() + 3);
    vIFrameObj.css('height', vMenuObj.height() + 2);

    vMenuObj.show();
    vIFrameObj.show();

    //var vURL = "Login/Signup_Popup.aspx";
    //openDlg(vURL, 650, 560, 'Signup_Popup');

    //var vURL = "Login/Create_New_Account.aspx";
    //openDlg(vURL, 650, 720, 'Signup_Popup');

    // var vURL = "Login/Forgot_Password_Popup.aspx";
    // openDlg(vURL, 650, 560, 'Signup_Popup');

    // var vURL = "Login/Contact_Support.aspx";
    // openDlg(vURL, 650, 520, 'Signup_Popup');

    //var vURL = "Login/Logging_Trouble.aspx";
    //openDlg(vURL, 650, 580, 'Signup_Popup');

    // procCONSUMERS_IsActive
    // procCONSUMERS_GetByCO_USER_NAME
    // procCONSUMERS_Insert
}

function MyAccountMenu(vIsOver) {

    var vTdMy_Account_Menu = $('td.My_Account_Menu');
    var vAMy_Account_Menu = $('a.My_Account_Menu');

    if (vIsOver) {
        vTdMy_Account_Menu.css('background-color', '#ffffff');
        vAMy_Account_Menu.css('color', '#000000');

        vTdMy_Account_Menu.css('border-top', 'solid 1px #CCCCCC');
        vTdMy_Account_Menu.css('border-left', 'solid 1px #CCCCCC');
        vTdMy_Account_Menu.css('border-right', 'solid 1px #CCCCCC');
    } else {
        var vfColor = $('#zd_tMenuContainer').attr('fcolor');

        vTdMy_Account_Menu.css('background-color', 'Transparent');
        if (vfColor == '') vfColor = '#ffffff';
        vAMy_Account_Menu.css('color', vfColor);

        vTdMy_Account_Menu.css('border-top', 'solid 1px Transparent');
        vTdMy_Account_Menu.css('border-left', 'solid 1px Transparent');
        vTdMy_Account_Menu.css('border-right', 'solid 1px Transparent');
    }
}

function LinkMenuList(vObj) {
    try {
        window.location.pathname = "/My-Account/" + vObj.attr('PathName');
    } catch (ex) {
        alert('My Account');
    }
}

function isLoginStatus() {
    try {
        var vLoginMenuObj = $('a.Login_Menu');
        if (vLoginMenuObj.html() == 'Logout') return true;
    } catch (ex) {}
    return false;
}

function ReturnDomainPage() {
    var vURL = null;
    if (window.location.port == '') {
        vURL = window.location.protocol + '//' + window.location.hostname;
    } else {
        vURL = window.location.protocol + '//' + window.location.hostname + ':' + window.location.port;
    }
    window.location.href = vURL;
}

function UpdateLoginStatus(vLoginStatus) {
    try {
        var vIsMyAccountPage = false;
        var vPathName = window.location.pathname.toLowerCase();
        if (vPathName.indexOf('/my-account/') == 0) vIsMyAccountPage = true;

        if (typeof (vLoginStatus) != 'undefined') {
            // if (vLoginStatus == 'login') {}
            if (vIsMyAccountPage) {
                ReturnDomainPage();
            } else {
                window.location.reload();
            }
        } else {
            if (typeof (vLoginStatus) == 'undefined') {
                var vLoginStatusObj = $('a.LoginStatus');
                vLoginStatus = vLoginStatusObj.html();
            }
            var vLoginMenuObj = $('a.Login_Menu');
            var vMyAccountMenuObj = $('a.My_Account_Menu');
            vLoginMenuObj.html(vLoginStatus);

            if (vLoginStatus == 'Logout') {
                vMyAccountMenuObj.html('My Account');
                $('a.My_Account_Menu').css('display', 'block');
                //vMyAccountMenuObj.css('cursor', 'pointer');
            } else {
                vMyAccountMenuObj.html('');
                $('a.My_Account_Menu').css('display', 'none');
                //vMyAccountMenuObj.css('cursor', 'default');
            }
            if (vIsMyAccountPage && vLoginStatus == "Login") ReturnDomainPage();
        }        
        return true;
    } catch (ex) { }
    return false;
}


function CallLogout() {
    try {
        var paramData = "";
        paramData = "{" + paramData + "}";
        var url = LinkPath("WebService.ashx");
        url += "?ActionType=1004";

        $.ajax({
            type: "POST",
            url: url,
            cache: false,
            data: paramData,
            contentType: "application/json; charset=utf-8",
            dataType: "json",

            success: function(vValue, textStatus) {
                try {
                    alert('Value :' + vValue + ' TextStatus :' + textStatus);
                } catch (ex) { }
            },
            beforeSend: function(vXMLHttpRequest) { },
            complete: function(vXMLHttpRequest) { },
            error: function(vXMLHttpRequest, textStatus, errorThrown) {
                alert("CallLogout Error : " + vXMLHttpRequest.responseText);
            }
        });
    } catch (ex) {
        alert('CallLogout :' + ex.message);
    }
}

function absPos(node) {
    var x = y = 0;
    do {
        x += node.offsetLeft;
        y += node.offsetTop;
    } while (node = node.offsetParent);

    return {
        'x': x,
        'y': y
    };
}
