//CoMenuTree use
var oldNodeName="";
var currentNodeName="";

//ControlCenter use
var currFunctionAvail = "enable";  //By Leslie Yu, moved from ControlCenter.js
var imgToShow="progress";       //by Dave Chan
var logPage="log.html";         //by Dave Chan

//****** config ***********

//FVT settings
//var HTTPS_DOMAIN="https://ibfvt.winglungbank.com";              //for FVT
//var HTTP_DOMAIN="http://ibfvt.winglungbank.com";                //for FVT

var HTTPS_DOMAIN="https://www.winglungbank.com";              //by dave Chan
var HTTP_DOMAIN="http://www.winglungbank.com";

var NB_ENV_CODE = "Nb";
var CO_ENV_CODE = "Co";

//****** end config *******

var webganizerURL="";
var firstTimeLogonDate = "0001-01-01";           //Dave Chan

var popupWinName = new Array();
popupWinName["NB"] = "NetBanking";
popupWinName["CC"] = "CreditCardBanking";
popupWinName["TB"] = "TeleBanking";
popupWinName["ApplyNow"] = "PopUpApplyNow";
popupWinName["ContactUs"] = "PopUpContactUs";
//popupWinName["External"] = "PopUpExternal";
popupWinName["CWS"] = "CompanyWebSite";
popupWinName["HelpPage"] = "PopUpHelpPage";
popupWinName["Footer"] = "PopUpFooter";
popupWinName["DemoPage"] = "PopUpDemoPage";
popupWinName["DownloadLink"] = "PopUpDownloadLink";
popupWinName["CrcBonusPointForm"] = "PopUpCrcBonusPointForm";
popupWinName["CrcBonusPointPage"] = "PopUpCrcBonusPointPage";
popupWinName["ETNet"] = "PopUpETNet";
//lyl@20040331 D834 QPI direct logon beg
popupWinName["QP"] = "QuotePower";
//lyl@20040331 D834 QPI direct logon end
//lyl@20040819 A153 PT direct logon beg
popupWinName["PT"] = "PowerTicker";
//lyl@20040819 A153 PT direct logon end
//lyl@20060929 G025 futures beg
//popupWinName["NF"] = "NetFutures";
//lyl@20070709 G025 follow window name of futures system
popupWinName["NF"] = "Logon";
//lkk@20080226 K082 estmt popup beg
popupWinName["Estmt"] = "PDFDisplay";
//lkk@20080226 K082 estmt popup end


var customerType = "0";
var NB = "3";
var CR = "2";
var TB = "1";
var customerTypeDesc = new Array();
customerTypeDesc["0"]="Vs";
customerTypeDesc["1"]="Tb";
customerTypeDesc["2"]="Cc";
customerTypeDesc["3"]="Nb";


var ENGLISH = "En";
var CHINESE = "Cn";
//by dave Chan
// J067 Website Revamp
var SCHINESE = "Sc";


var sessionId = "";
var language = ENGLISH;
var currentFunction = "";
var previousFunction = "";
/*lyl@20081106 J067 web site revamp - this variable is like currentFunction but only used for common functions (insurance, lending apply now forms) that shared by another section general services
    in order to remain top menu tag unchanged, invoke these functions will call "selectNbFuncFromFrameC" which will not update variable currentFunction
    define this variable is to highlight selected function tag at left sub menu
*/
var currentFuncForFrameC = "";

//Error page variable definition
var BLANK_PAGE = new Array();
var NO_ACC_PAGE = new Array();
var NO_SERV_PAGE = new Array();
var NOT_AVAIL_PAGE = new Array();
var SYS_ERR_PAGE = new Array();
var TIMEOUT_PAGE = new Array();
var TYPHOON_PAGE = new Array();

//Error page for NB
BLANK_PAGE["Nb"] = "XxNbOthBlank.html";
NO_ACC_PAGE["Nb"] = "SyOthNoAccErr.jsp";
//NO_SERV_PAGE["Nb"] = "SyOthNoAccErr.jsp";
NO_SERV_PAGE["Nb"] = "SyOthNoRegServiceErr.jsp";
//NOT_AVAIL_PAGE["Nb"] = "SyOthNotAvailErr.jsp";
NOT_AVAIL_PAGE["Nb"] = "NbOthNotAvailErr.jsp";
SYS_ERR_PAGE["Nb"] = "SyOthSystemErr.jsp";
TIMEOUT_PAGE["Nb"] = "SyOthTimeOutErr.jsp";    //by Gavin Fong
TYPHOON_PAGE["Nb"] = "SyOthTyphoonErr.jsp";    

//Error page for CWS
BLANK_PAGE["Co"] = "XxNbOthBlank.html";
//NO_ACC_PAGE["Co"] = "SyOthNoAccErr.jsp";
//NO_SERV_PAGE["Co"] = "SyOthNoAccErr.jsp";
//NOT_AVAIL_PAGE["Co"] = "SyOthNotAvailErr.jsp";
NOT_AVAIL_PAGE["Co"] = "CoOthNotAvailErr.jsp";
SYS_ERR_PAGE["Co"] = "SyOthSystemErr.jsp";
//TIMEOUT_PAGE["Co"] = "SyOthTimeOutErr.jsp";    //by Gavin Fong


var lastLogontime = "";  //Dave Chan
var Logontime = "";  //jan@20030828D214
var isLogon = true;      //true: if the customer has just logon and hasn't invoked any fun.
var topmenulevel = 0; //jan@20030909D274
var topmenubgcolor = "#D1F0CD"; //jan@20030909D274

var sessionCounter = 0; //For browser timeout management

var personalHomePage = new Array

// for ControlCenter image swap use

var MM_Topomainsr=new Array;
var MM_Topmainsr=new Array;

var MM_Leftomainsr=new Array;
var MM_Leftmainsr=new Array;

var topImageName = "";
var leftImageName = "";

//for personalization use
var psValuesArray1;
var psValuesArray2;

//menuList is used in SiteMap
menuList = new Array("WL", "BN", "FI", "FM", "PS", "GI", "DC", "DM", "OA", "TI");
menu = new Array();

//boxMenu is used in building selection list in Personalize page
boxMenu = new Array("z","l","a","b","c","d","e","f","g","h","i","j","k");
bMenu = new Array;

//errMessage is used to store all the error message of validation
errorMessage = new Array();

//error window used to display error message
errwindow = null;

// the following global variables is used in Net banking logon  and Online Application
var logoffInd = "";
var err_logon_id = "";   // EB logon ID
var err_fr_ac_no = "";   // from account number
var err_to_ac_no = "";   // to account number
var err_ac_no    = "";   // account number
var err_chq_no   = "";   // cheque no.
var err_agr_no   = "";   // agreement no.
var err_rem_cycle_limit = ""; // remaining cycle limit
var err_chq_no1  = "";   // cheque no. 1
var err_chq_no2  = "";   // cheque no. 2
var err_chq_no3  = "";   // cheque no. 3
var err_chq_no4  = "";   // cheque no. 4
var err_chq_no5  = "";   // cheque no. 5
var err_loan_no  = "";   // loan no.
var err_stock_cd  = "";   // stock code
var err_place_method = "";// original place method
var err_dte      = "";     // date
var err_sig_no   = "";     // signature number
var err_box_no   = "";     // safe deposit box no
var eMsg = "";
var err_dec_place = "";
var err_num_digit = "";
var err_min_num = "";
var err_max_num = "";
var err_min_char = "";
var err_max_char = "";
var err_from_date = "";
var err_to_date = "";
var err_ccy_amt_unit = "";  // used for MX
var err_char = "";          // invalid character or pattern
var err_quest_no = "";      // question no.
var err_fldName = "";      // error field name
var err_value = "";      // error value

// other variable
var selNls = "CN";      // defaults language is CN
var frameNls;

var showSearch = "N";
var searchStr = "";
resultArray = new Array();  // array to hold keyword search result
//ENErrMsg = new Array();
//CNErrMsg = new  Array();

//initialization - initialize the error code '0' and 'P000' since they may be used
//                 before the frame 'msg' is completely loaded.
//ENErrMsg[0] = "''";
//ENErrMsg["P000"] = "'Request is in progress ...'"

//CNErrMsg[0] = "''";
//CNErrMsg["P000"] = "'Request is in progress ...'" //don't use big5 code in *.js

//Department ID for Internet Banking Development II    By Ivan Lee
var DeptCode = new Array();
DeptCode["HRD"]="30";      //Human Resource Department
DeptCode["BID"]="01";      //Bills Dept.
DeptCode["DPD"]="02";      //Deposits Dept.
DeptCode["FOD"]="03";      //FX & Operation Dept.
DeptCode["TRD"]="03";      //Treasury Dept.
DeptCode["WLI"]="04";      //Wing Kung Insurance
DeptCode["LOD"]="05";      //Loans Dept.
DeptCode["TTD"]="07";      //Trustee Dept.
DeptCode["WLS"]="08";      //Wing Lung Securities
//DeptCode["SEC"]="10";      //Secretarial   >> Kelvin email request for deleteion
DeptCode["SLO"]="11";      //Syndicated Loan
DeptCode["BAD"]="22";      //Branch Administration Dept.
DeptCode["BDD"]="23";      //Business Development Dept.
DeptCode["CMD"]="32";      //Credit Management Dept
DeptCode["CCC"]="34";      //Credit Card Center
DeptCode["OPC"]="35";      //Operation Center
DeptCode["CLD"]="36";      //Corporate Lending Dept.
DeptCode["EBD"]="37";      //e-Banking Dept.
DeptCode["WLF"]="38";      //Wing Lung Finance
DeptCode["MPF"]="39";      //MPF Services
DeptCode["WMC"]="41";      //Wealth Management Center


////////////////////////////////////////////////////////////////////////////////////////////
//function description  : to reset the value of all global variables
//------------------------------------------------------------------------------------------
//input parameters      : none
////////////////////////////////////////////////////////////////////////////////////////////
function resetVar() {
    logoffInd = "";
    err_logon_id = "";
    err_fr_ac_no = "";
    err_to_ac_no = "";
    err_ac_no    = "";
    err_chq_no   = "";
    err_agr_no   = "";
    err_rem_cycle_limit = "";
    err_chq_no1  = "";
    err_chq_no2  = "";
    err_chq_no3  = "";
    err_chq_no4  = "";
    err_chq_no5  = "";
    err_loan_no  = "";
    err_stock_cd  = "";
    err_place_method = "";
    err_dte      = "";
    err_sig_no   = "";
    err_box_no   = "";
    err_dec_place = "";
    err_num_digit = "";
    err_min_num = "";
    err_max_num = "";
    err_min_char = "";
    err_max_char = "";
    err_from_date = "";
    err_to_date = "";
    err_ccy_amt_unit = "";
    err_char = "";
    err_quest_no = "";
    err_fldName = "";
    err_value = "";

        err_pref_price_str = "";
        err_action = "";
        err_lowhigh = "";
}

//This array is used to the generic flow and processor name mapping
/*
var GFLOW = new Array();
GFLOW["NbCrcBonuspProc"] = "CrcBonusProcFlow";
GFLOW["CoCrcRewschBonuspProc"] = "CrcBonusProcFlow";
GFLOW["CoApnBillsvReqinfoProc"] = "BillsvReqinfoProcFlow";
GFLOW["CoApnBillsvFacsupProc"] = "BillsvFacsupProcFlow";
GFLOW["CoApnCorloaApplyProc"] = "CorloaApplyProcFlow";
GFLOW["CoApnCrcardApplyProc"] = "CrcardApplyProcFlow";
GFLOW["CoApnCrcardOctappProc"] = "CrcardOctappProcFlow";
GFLOW["CoApnHirpurApplyProc"] = "HirpurApplyProcFlow";
GFLOW["CoApnLoansvMortageProc"] = "LoanSvMortageProcFlow";
GFLOW["CoApnLoansvInscashProc"] = "LoanSvInscashProcFlow";
GFLOW["CoApnLoansvSmacashProc"] = "LoansvSmacashProcFlow";
GFLOW["CoApnLoansvTaxloanProc"] = "LoansvTaxloanProcFlow";
GFLOW["CoApnNetbkgApplyProc"] = "NetbkgApplyProcFlow";
GFLOW["CoApnSecuriActopnProc"] = "SecuriActopnProcFlow";
GFLOW["CoApnSecuriTrdregProc"] = "SecuriTrdregProcFlow";
GFLOW["CoApnSecuriTelstkProc"] = "SecuriTelstkProcFlow";
GFLOW["CoApnTrusteApplyProc"] = "TrusteApplyProcFlow";
GFLOW["CoApnWebganApplyProc"] = "WebganApplyProcFlow";
GFLOW["NbGsvAppnowBillsvReqinfoProc"] = "BillsvReqinfoProcFlow";
GFLOW["NbGsvAppnowBillsvFacsupProc"] = "BillsvFacsupProcFlow";
GFLOW["NbGsvAppnowCorloaApplyProc"] = "CorloaApplyProcFlow";
GFLOW["NbGsvAppnowCrcardApplyProc"] = "CrcardApplyProcFlow";
GFLOW["NbGsvAppnowCrcardOctappProc"] = "CrcardOctappProcFlow";
GFLOW["NbGsvAppnowHirpurApplyProc"] = "HirpurApplyProcFlow";
GFLOW["NbGsvAppnowLoansvMortageProc"] = "LoansvMortageProcFlow";
GFLOW["NbGsvAppnowLoansvInscashProc"] = "LoansvInscashProcFlow";
GFLOW["NbGsvAppnowLoansvSmacashProc"] = "LoansvSmacashProcFlow";
GFLOW["NbGsvAppnowLoansvTaxloanProc"] = "LoansvTaxloanProcFlow";
GFLOW["NbGsvAppnowNetbkgApplyProc"] = "NetbkgApplyProcFlow";
GFLOW["NbGsvAppnowSecuriActopnProc"] = "SecuriActopnProcFlow";
GFLOW["NbGsvAppnowSecuriTrdregProc"] = "SecuriTrdregProcFlow";
GFLOW["NbGsvAppnowSecuriTelstkProc"] = "SecuriTelstkProcFlow";
GFLOW["NbGsvAppnowTrusteApplyProc"] = "TrusteApplyProcFlow";
GFLOW["NbGsvAppnowWebganApplyProc"] = "WebganApplyProcFlow";
GFLOW["CoApnInsuraClnpkgProc"] = "InsuraClnpkgProcFlow";
GFLOW["CoApnInsuraCreproProc"] = "InsuraCreproProcFlow";
GFLOW["CoApnInsuraSerpkgProc"] = "InsuraSerpkgProcFlow";
GFLOW["CoApnInsuraFampkgProc"] = "InsuraFampkgProcFlow";
GFLOW["CoApnInsuraMtrvehProc"] = "InsuraMtrvehProcFlow";
GFLOW["CoApnInsuraPeraccProc"] = "InsuraPeraccProcFlow";
GFLOW["CoApnInsuraTrvpkgProc"] = "InsuraTrvpkgProcFlow";
GFLOW["CoApnInsuraClmfrmProc"] = "InsuraClmfrmProcFlow";
GFLOW["NbGsvAppnowInsuraClnpkgProc"] = "InsuraClnpkgProcFlow";
GFLOW["NbGsvAppnowInsuraCreproProc"] = "InsuraCreproProcFlow";
GFLOW["NbGsvAppnowInsuraSerpkgProc"] = "InsuraSerpkgProcFlow";
GFLOW["NbGsvAppnowInsuraFampkgProc"] = "InsuraFampkgProcFlow";
GFLOW["NbGsvAppnowInsuraMtrvehProc"] = "InsuraMtrvehProcFlow";
GFLOW["NbGsvAppnowInsuraPeraccProc"] = "InsuraPeraccProcFlow";
GFLOW["NbGsvAppnowInsuraTrvpkgProc"] = "InsuraTrvpkgProcFlow";
GFLOW["NbGsvAppnowInsuraClmfrmProc"] = "InsuraClmfrmProcFlow";
*/
//To store the window obj of the pop up windows
var popupWinObj = new Array();

//To store the selected contact us department code which will be assigned by XXPopUpProcCind.jsp
//var selectedContactUsDeptCode="";


//variables from XxwlbHandleError.js which do not exist in this file.
var err_pref_price_str = "";
var err_action = "";
var err_lowhigh = "";

//window obj for pop-up windown management.
var myOpener = null;

//lyl@20060729 G617 popup warning msg to firefox users
var userLogonTo = "NB";

//lyl@20060814 F927 OTP or activation indicator for remove session if customer close window before successfully logon
var duringOTP = false;

//lkk@20070102 F926 e-statement service level
var estSrvReg = 0;
//lkk@20070726 F926 e-statement soft launch indicator
var isEstSoft = false;

//lkk@20090728 M077 sunflower customer type
var custType = "";
var hksfType = "";

