﻿var TIME_WAIT = 3000;
var AJAX_TIMEOUT = 10000;

function AccountLocked()
{
    jAlert("<p style='text-align:left'>Nếu khách hàng nhập sai ma trận thẻ 3 lần thì tài khoản sẽ bị khóa để đảm bảo bảo mật cho khách hàng.\nĐể mở khóa TK, KH khách hàng vui lòng liên hệ Hotline, Trung tâm Giao dịch điện tử hoặc nhân viên môi giới để mở khóa.\n &bull; Nếu chưa đăng ký giao dịch qua Điện thoại, khách hàng vui lòng tới các sàn giao dịch mang theo CMND để xin cấp lại mật khẩu hoặc yêu cầu gửi mật khẩu đăng nhập và PIN vào địa chỉ email đã đăng ký khi mở tài khoản.\n &bull; Nếu đã đăng ký giao dịch qua điện thoại, khách hàng có thể gọi số điện thoại hỗ trợ.\nHotline hỗ trợ : 04 4456 9669 (HN) hoặc 08 4456 9669 (HCM)</p>", "Trợ giúp", null);
}

function LostPassword()
{
    jAlert("<p style='text-align:left'>Nếu khách hàng quên mật khẩu, khách hàng vui lòng liên hệ Hotline, Trung tâm Giao dịch điện tử hoặc nhân viên môi giới để cung cấp lại mật khẩu \n &bull; Nếu chưa đăng ký giao dịch qua Điện thoại, khách hàng vui lòng tới các sàn giao dịch mang theo CMND để xin cấp lại mật khẩu hoặc yêu cầu gửi mật khẩu đăng nhập và PIN vào địa chỉ email đã đăng ký khi mở tài khoản.\n &bull; Nếu đã đăng ký giao dịch qua điện thoại, khách hàng có thể gọi số điện thoại hỗ trợ.\nHotline hỗ trợ : 04 4456 9669 (HN) hoặc 08 4456 9669 (HCM)</p>", "Trợ giúp", null);
}


function GetAdditionalLoginInfo(userId)
{    
    $(document).ready(function() {
      $.ajax({
          type: "POST",
          url: "WebService.asmx/GetAdditionalLoginInfo",
          data: "{'pStrUserId':'" + userId + "'}",
          contentType: "application/json; charset=utf-8",
          dataType: "json",
          timeout:AJAX_TIMEOUT,
          success: function(data) {
            FillAccountInfo(data);               
          },
          error: Failed
      });
    });    
}

function AccountOnChange(objAccount)
{
    if (objAccount.value != "")
    {
        GetAdditionalLoginInfo(objAccount.value);
    }
}

function CheckLogin(obj)
{
    var vStep = document.getElementById("hdnStep").value;    
    var vResult = false;
    if (vStep == '1')
    {
        if (document.getElementById("UserName").value == "" || document.getElementById("Password").value == "" )
        {
            alert("Số tài khoản hoặc mật khẩu không được để trống");
        }
        else
        {
            vResult = true;
        }
    }
    else
    {
        var vAuthenFlag = document.getElementById("hdnauthenFlag").value;
        switch(vAuthenFlag)
        {
            case "G":                          
                if (document.getElementById("txtGrid1").value == ""
                  ||document.getElementById("txtGrid2").value == ""
                  ||document.getElementById("txtGrid3").value == "")
                {
                    alert("Matrix card/token không được để trống!");
                }
                else
                {
                    vResult = true;
                }
                break;
            case "T":                          
                if (document.getElementById("txtGrid").value == "")
                {
                    alert("Matrix card/token không được để trống!");
                }
                else
                {
                    vResult = true;
                }
                break;               
            default:              
                break;
        }
    }
    return vResult;
}

function FillAccountInfo(pData)
{    
    var arrResult = pData.split("|");
    var vReturnCode = arrResult[2];
    var vAuthenFlag = arrResult[3];
    var vUserName = arrResult[4];
    var vSerialNumber = arrResult[5];
    var vGrid = arrResult[6]; 
    var arrGrid = vGrid.substring(1,vGrid.length-1).split("][");     
    $("#objLogin_FailureText").html("");    
    $("#divUserFullName").html("");
    $("#divSerialNumber").html("");  
    $("#divGrid1").html("");
    $("#divGrid2").html("");
    $("#divGrid3").html("");  
    switch(vReturnCode)
    {
        case "0":                          
            $("#divUserFullName").html(vUserName);
            $("#divSerialNumber").html(vSerialNumber);    
            if (arrGrid.length > 1)
            {
                $("#divGrid1").html(arrGrid[0]);
                $("#divGrid2").html(arrGrid[1]);
                $("#divGrid3").html(arrGrid[2]);
            }
            else
            {
                $("#divGrid1").html("");
                $("#divGrid2").html("");
                $("#divGrid3").html("");
            }
            document.getElementById("authenFlag").value = vAuthenFlag;
            switch(vAuthenFlag)
            {
                case "G":                          
                    $("#trMatrix").show();
                    $("#trToken").hide();
                    break;
                case "T":                          
                    $("#trMatrix").hide();
                    $("#trToken").show();
                    break;               
                default:              
                    break;
            }
            break;                                     
        default: 
            $("#objLogin_FailureText").html(GetAuthenMessage(vReturnCode)); 
            break;
    }
}

function  Failed(result) {
    window.status = "Khong the ket noi duoc voi Server! ";
}

function GetAuthenMessage(pReturnCode)
{
    var vMessage = "";
    switch(pReturnCode)
    {        
        case "-1":                          
            vMessage = "Không cho phép xác thực nặc danh!";
            break;
        case "-2":                          
            vMessage = "Xác thực không thành công. Thẻ đã bị khóa!";
            break;
        case "-3":                          
            vMessage = "Loại xác thực không hợp lệ!";
            break;
        case "-4":                          
            vMessage = "Thẻ đã hết thời hạn sử dụng!";
            break;
        case "-5":                          
            vMessage = "Tham số không hợp lệ!";
            break;
        case "-6":                          
            vMessage = "Sai mật khẩu đăng nhập hoặc matrix card/token!";
            break;
        case "-7":                          
            vMessage = "Thay đổi PIN không hợp lệ!";
            break;
        case "-8":                          
            vMessage = "Thẻ của bạn đã bị khóa!";
            break;
        case "-9":                          
            vMessage = "Không có TOKEN nào có hiệu lực!";
            break;
        case "-10":                          
            vMessage = "Xác thực bên ngoài chưa được cấu hình!";
            break;
        case "-11":                          
            vMessage = "OTP chưa được gán!";
            break;
        case "-12":                          
            vMessage = "Không có thẻ nào hợp lệ!";
            break;
        case "-13":                          
            vMessage = "Không có mã TOKEN hợp lệ!";
            break;
        case "-14":                          
            vMessage = "OTP hết hạn!";
            break;
        case "-15":                          
            vMessage = "Mã PIN đã hết hạn!";
            break;
        case "-16":                          
            vMessage = "Mã PIN tạm thời đã được sử dụng quá nhiều lần!";
            break;
        case "-17":                          
            vMessage = "Số lượng câu hỏi đã vượt quá đăng ký của người dùng!";
            break;
        case "-18":                          
            vMessage = "Unidentified";                          
            break; 
        case "-25":                          
            vMessage = "Thẻ đã bị khóa";     
            break; 
        case "-1001":                          
            vMessage = "Tài khoản không tồn tại";
            break; 
        case "-6001":                          
            vMessage = "Tài khoản chưa đăng nhập";
            break; 
        case "-6002":                          
            vMessage = "Mã xác thực không đúng";
            break; 
        case "-6003":                          
            vMessage = "User không có quyền";
            break; 
        case "-6005":                          
            vMessage = "Mật khẩu không đúng";
            break; 
        case "-6006":                          
            vMessage = "Mật khậu bị EXPIRE";
            break; 
        case "-6007":                          
            vMessage = "User bị khóa";
            break; 
        case "-6008":                          
            vMessage = "Mật khẩu vừa được reset, yêu cầu change pass.";
            break; 
        case "-6009":                          
            vMessage = "Version Client không đúng với version server, Yêu cầu download version mới về.";
            break; 
        case "-6010":                          
            vMessage = "PIN Không hợp lệ";
            break; 
        case "-6011":                          
            vMessage = "Không được phép truy cập";
            break;                
        default: 
            vMessage = "Không xác định";
            break;
    }   
    return vMessage;  
}
