﻿// JScript File
var FavoriteStockList_1 =
"ACB,AVS,BCC,BVS,CMC,DBC,HBB,HPC,IDJ,KLS,NBC,NTP,NVB,PGS,PVA,PVC,PVG,PVI,PVS,PVV,PVX,RCL,S96,S99,SCJ,SCR,SD3,SD6,SD7,SD9,SDT,SHB,SHN,SRB,STL,STP,THT,TNG,TXM,VCG,VCS,VFR,VGS,VND,VSP";

var FavoriteStockList_2 = 
"AAM,ABT,ACL,AGF,AGR,ALP,ASP,ATA,BAS,BHS,BMC,BMI,BT6,BTP,CAD,CLC,CNT,COM,CSG,CSM,CYC,D2D,DCC,DCL,DCT,DDM,DHA,DHC,DHG,DIC,DIG,DMC,DPR,DQC,DRC,DTT,DVD,DVP,DXG,DXV,FBT,FMC,FPC,GDT,GIL,GMC,GTA,HAS,HAX,HBC,HDC,HLA,HLG,HMC,HRC,HSI,HT1,HT2,HTV,HVG,ICF,IFS,IMP,ITC,KHA,KHP,KMR,KSH,L10,LAF,LBM,LGC,LGL,LIX,LSS,MAFPF1,MCG,MCP,MCV,MHC,MSN,MTG,NAV,NKD,NSC,OPC,PAC,PGC,PGD,PHR,PHT,PIT,PJT,PNC,PRUBF1,PTC,RAL,RDP,RIC,SAV,SCD,SFC,SFI,SGT,SJD,SMC,SRC,SRF,SSC,ST8,SVC,SZL,TAC,TBC,TCL,TCM,TCR,TIC,TIE,TIX,TMP,TMS,TNA,TNC,TRA,TRC,TRI,TS4,TSC,TTF,TTP,TYA,UIC,VFC,VFG,VFMVF4,VHC,VHG,VID,VIS,VKP,VNA,VNG,VNI,VNL,VNS,VPH,VPK,VPL,VSC,VSG,VST,VTB,VTO";

function selectListStockFilter(p_csvStockList, p_bChecked)
{
    if ((p_csvStockList != null) && (p_csvStockList.length > 0))
    {
        var FavStkLst = p_csvStockList.split(",");
        for (var i = 0; i < FavStkLst.length; i++)
        {
            var Stk = FavStkLst[i];
            var checkID = "chkStkSbl_" + Stk;
            var objCheck = document.getElementById(checkID);
            if (objCheck != null)
            {
                objCheck.checked = p_bChecked;
            }
        }
        rebuildUserList();
    }
}
///////////////////////////////////////////////////////////////////////////////
function loadUserFavFilterFromCookie(kieName) {
    loadFilterListFromCookie(kieName);
    rebuildUserList();
}
///////////////////////////////////////////////////////////////////////////////
function initUserFilter() {
    var found = loadFilterListFromCookie('_kieHNXSF');
    if (!found) {
        found = loadFilterListFromCookie('_kieUHNXFav1');
    }
    if (!found) {
        found = loadFilterListFromCookie('_kieUHNXFav2');
    }
    if (!found) {
        checkFirstStocks(MaxUserStockSelection);
    }
    rebuildUserList();
}

function rebuildUserList() {
    saveFilterListToCookie('_kieHNXSF');
}


function loadFilterListFromCookie(kieName) {
    var filter = readCookie(kieName);
    if (filter) {
        var stocks = filter.split('|');
        setAllCheckBoxes("chkStkFilter", false);
        var countChecked = 0;
        for (var i = 0; i < stocks.length; i++) {
            var Stk = stocks[i];
            var checkID = "chkStkSbl_" + Stk;
            var objCheck = document.getElementById(checkID);
            if (objCheck) {
                countChecked++;
                objCheck.checked = true;
            }
        }
        showFilterSelectCount(countChecked);
        return true;
    }
    else {
        return false;
    }
}

function saveFilterListToCookie(kieName) {
    var s = new StringBuilder();
    var countChecked = 0;
    var arrChk = document.getElementsByName("chkStkFilter");
    for (i = 0; i < arrChk.length; i++) {
        if (arrChk[i].checked) {
            countChecked++;
            if (countChecked <= MaxUserStockSelection) {
                s.append(arrChk[i].value);
                s.append("|");
            }
        }
    }
    showFilterSelectCount(countChecked);

    var value = s.toString();
    if (value != '') {
        createCookie(kieName, value, 3650);
    }
    else {
        eraseCookie(kieName);
    }
}


function showFilterSelectCount(selectedCount) {
    document.getElementById("spanStockSelectCount").innerHTML = selectedCount + "/" + MaxUserStockSelection;
}

function checkFirstStocks(n) {
    if (n <= 0) return;
    if (stockSymbolListCSV == null) return;
    var stkArray = stockSymbolListCSV.split(',');
    if ((stkArray == null) || (stkArray.length <= 0)) return;
    var checkStkArray = new Array();
    for (var i = 0; i < n; i++) {
        if (i < stkArray.length) {
            checkStkArray[i] = stkArray[i];
        }
    }

    if (checkStkArray.length > 0) reselectFilterList(checkStkArray);
}
