﻿Sys.Application.add_load(initFloatLogin);

function initFloatLogin()
{
    var btnShowLogin = $get('btnShowLogin');
    if(btnShowLogin)
    {
        $addHandler(btnShowLogin, 'click', setEmailFocus);
        $addHandler(btnShowLogin, 'click', showLoginFloat);
    }

    var btnCancelLogin = $get('btnCancelLogin');
    if(btnCancelLogin)
    {
        $addHandler(btnCancelLogin, 'click', hideLoginFloat);
        $addHandler(btnCancelLogin, 'click', clearData);
    }
    
    var btnSubmitLogin = $get('btnSubmitLogin');
    if(btnSubmitLogin)
    {
        $addHandler(btnSubmitLogin, 'click', submitLogin);
    }
}

function showLogin()
{
    var btnShowLogin = $get('btnShowLogin');
    if(btnShowLogin)
    {
        btnShowLogin.click();
    }
}

function setEmailFocus()
{
    $get("txtEmail").focus();
}

function setPasswordFocus()
{
    $get("txtPassword").focus();
}

function showLoginFloat()
{
    showFloat("DivInteractionCoverLogin","DivInteractionFloatLogin");
}

function hideLoginFloat()
{
    hideFloat("DivInteractionCoverLogin","DivInteractionFloatLogin");
}

function clearData()
{
    $get("txtEmail").value = "";
    $get("txtPassword").value = "";
    $get("divLoginMsg").innerHTML = "";
    $get("divLoginMsg").style.display = "none";
}

function submitLogin()
{
    var email = $get("txtEmail").value.trim();
    var password = $get("txtPassword").value.trim();
    var isRemember = $get("chkIsRemember").checked;
    
    showMessage("divLoginMsg","登录中，请稍候……","success");
    
    if(IsEmpty(email))
    {
        showMessage("divLoginMsg","邮件不能为空。","error");
        setEmailFocus();
        return;
    }
    if(!IsEmail(email))
    {
        showMessage("divLoginMsg","邮件格式错误。","error");
        setEmailFocus();
        return;
    }
    if(IsEmpty(password))
    {
        showMessage("divLoginMsg","密码不能为空。","error");
        setPasswordFocus();
        return;
    }            
    BingLog.Web.WebService.UserService.Login(email,password,isRemember,onLoginSuccess);
}

function onLoginSuccess(result) {

    if(result.State == 0)
    {
        window.location.reload();
    }
    else
    {
        showMessage("divLoginMsg",result.Msg,"error");
    }
}

function showMessage(controlID, msg , state)
{
    var control = $get(controlID);
    control.style.display = "block";
    control.innerHTML = msg;
    if(state == "success")
    {
        control.className = "PublicFeedBack PublicFeedBackSuccess";
    }
    else
    {
        control.className = "PublicFeedBack PublicFeedBackError";
    }
}