﻿//submit the right form
KeyListener = {
    init: function () {
        $('#fp_login').bind('keypress', function (e) {
            var key = e.charCode ? e.charCode : e.keyCode ? e.keyCode : 0;
            var target = e.target.tagName.toLowerCase();
            if (key === 13 && target === 'input') {
                e.preventDefault();
                if ($('#ctl00_mainpage_loginEmail').is(':visible')) {
                    if ($('#ctl00_messageBoxer').is(':visible')) {
                        $('#ctl00_dismissButton').trigger('click');
                    } else {
                        $('#ctl00_mainpage_btnSendLogin').trigger('click');
                    }
                } else {
                    //checkLostPass();
                    $('#ctl00_mainpage_resetPasswordButton').trigger('click');
                }
            }
        });
    }
};


$(document).ready(function () {
    KeyListener.init();
    $("#accordion").accordion({
        change: function (event, ui) {
            if (ui.newHeader.text() == "Sign in to your account") {
                if ($('#ctl00_mainpage_loginEmail').val() != '') {
                    $('#ctl00_mainpage_merchPass').focus();
                } else {
                    $('#ctl00_mainpage_loginEmail').focus();
                }
            } else {
                $('#ctl00_mainpage_passEmail').focus();
            }
            //alert("New: " + ui.newHeader.text() + "\nOld: " + ui.oldHeader.text());
        }
    });

    //setup login button
    $('#ctl00_mainpage_btnSendLogin').button();
    $('#ctl00_mainpage_resetPasswordButton').button();

    //size hold panel
    var sb = $('#accordion').position();
    $('#holdpanel').css('top', 0);
    $('#holdpanel').css('left', sb.left);
    $('#holdpanel').width($('#accordion').width()-12);
    $('#holdpanel').height($('#accordion').height());

    //auto focus for login
    if ($('#ctl00_mainpage_loginEmail').val() != '') {
        $('#ctl00_mainpage_merchPass').focus();
    } else {
        $('#ctl00_mainpage_passEmail').focus();
    }


    //real-time field validation
    $('#ctl00_mainpage_loginEmail').change(function () { verifyField("ctl00_mainpage_loginEmail", "email") });
    $('#ctl00_mainpage_merchPass').change(function () { verifyField("ctl00_mainpage_merchPass", "password") });

});

function checkLoginFields() {
    $('#ctl00_mainpage_btnSendLogin').fadeOut();
    $('#holdpanel').fadeIn();
    var ready = false;
    if (verifyField("ctl00_mainpage_loginEmail", "email")) {
        ready = true;
    }
    if (verifyField("ctl00_mainpage_merchPass", "password")) {
        ready = true;
    }
    if (ready) {
        return true;
    } else {
        alert("One or both of your login credentials have invalid format.")
        $('#ctl00_mainpage_btnSendLogin').fadeIn();
        $('#holdpanel').fadeOut();
        return false;
    }
}

var goPassRecover = false;

function checkLostPass() {
    if (goPassRecover) {
        return goPassRecover;
    } else {
        $('#ctl00_mainpage_resetPasswordButton').fadeOut();
        if (verifyField("ctl00_mainpage_passEmail", "email")) {
            var sEmail = $('#ctl00_mainpage_passEmail').val();
            $('#emfeedback').html("<br/>One moment... we are checking your email address</b>");
            $.get("/ajax/TCWS.asmx/CheckEmail", { emailAddress: sEmail }, function (result) {
                if ($(result).find("code").text() != "FAILURE") {
                    $('#ctl00_mainpage_passEmail').keyup();
                    if ($(result).find("value").text() == "true") {//that email already has an account
                        //$('#ctl00_mainpage_resetPasswordButton').unbind("click");
                        $('#ctl00_mainpage_passEmail').fadeOut();
                        $('#lp_labels').fadeOut(200, function () {
                            goPassRecover = true;
                            $('#emfeedback').html("<i>" + sEmail + "</i><br/><span class=\"status\" style=\"font-size:large;\">Initiating Password Recovery.<br/>One moment please...</span>");
                            $('#ctl00_mainpage_resetPasswordButton').click();
                        });
                    }
                } else {
                    $('#lp_labels').fadeOut();
                    $('#emfeedback').html("<b>We could not find a TaxCloud account for " + $('#ctl00_mainpage_passEmail').val() + "</b>");
                    $('#ctl00_mainpage_passEmail').keyup(function () {
                        $('#ctl00_mainpage_resetPasswordButton').fadeIn();
                    });
                    $('#ctl00_mainpage_passEmail').focus();
                    $('#ctl00_mainpage_passEmail').select();
                }
            }, "xml");
        }
        return false;
    }
}
