
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_showHideLayers() { //v9.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) 
  with (document) if (getElementById && ((obj=getElementById(args[i]))!=null)) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function SwitchLang(lang)
{
    var redir_url = location.toString();
    if (lang == "en")
    {
        // english
        // check if Simplified chinese
        var gb_pos = location.toString().search(_kanhan_prefix);
        if ( gb_pos > -1)
        {
            replace_str = location.toString().substr(7, gb_pos-7+4);
            //alert(replace_str);
            redir_url = redir_url.replace(replace_str, "");
        }

        // check if sc_lang set        
        var qKeys = {};
        var re = /[?&]([^=]+)(?:=([^&]*))?/g;
        var matchInfo;

        var sc_lang;
        while(matchInfo = re.exec(location.search))
        {
            if (matchInfo[1].toString().toLowerCase() == "sc_lang")
            {
                qKeys["sc_lang"] = matchInfo[2];
                sc_lang = matchInfo[1];
            }
            else
                qKeys[matchInfo[1]] = matchInfo[2];
        }
        if (typeof(qKeys["sc_lang"]) == "undefined")
        {
            if (window.location.search.length == 0)
                redir_url = redir_url + "?sc_lang=en";
            else
                redir_url = redir_url + "&sc_lang=en";
        }
        else
        {
            redir_url = redir_url.replace(sc_lang + "=" + qKeys["sc_lang"], "sc_lang=en");
        }   
    }
    else
    {
        //chinese
        // check if current Simplified chinese
        if (lang == "sc")
        {
            var gb_pos = location.toString().search(_kanhan_prefix);
            if ( gb_pos > -1)
            {
                // this is simp. chinese, change to trad. chinese
                replace_str = location.toString().substr(7, gb_pos-7+4);
                //alert(replace_str);
                redir_url = redir_url.replace(replace_str, "");
            }
            else
            {
                redir_url = "http://" + _kanhan_server + _kanhan_prefix + redir_url.substr(7, redir_url.length-7)
            }
        }
        
        // check if sc_lang set        
        var qKeys = {};
        var re = /[?&]([^=]+)(?:=([^&]*))?/g;
        var matchInfo;

        var sc_lang;
        while(matchInfo = re.exec(location.search))
        {
            if (matchInfo[1].toString().toLowerCase() == "sc_lang")
            {
                qKeys["sc_lang"] = matchInfo[2];
                sc_lang = matchInfo[1];
            }
            else
                qKeys[matchInfo[1]] = matchInfo[2];
        }
        if (typeof(qKeys["sc_lang"]) == "undefined")
        {
            if (window.location.search.length == 0)
                redir_url = redir_url + "?sc_lang=zh-TW";
            else
                redir_url = redir_url + "&sc_lang=zh-TW";
        }
        else
        {
            redir_url = redir_url.replace(sc_lang + "=" + qKeys["sc_lang"], "sc_lang=zh-TW");
        }   
        
    }
    //alert(redir_url);
    window.location.href = redir_url;
}

function GoWebTrade(lang)
{
    var webtrade_url = "";
    if (lang == "en")
        webtrade_url = _webtrade_url_en;
    else
    {
        webtrade_url = _webtrade_url_b5;
        var gb_pos = location.toString().search(_kanhan_prefix);
        if ( gb_pos > -1)
        {
            // this is simp. chinese, change to trad. chinese
            webtrade_url = _webtrade_url_gb;
        }
    }
        
    var objPostLogin;
    objPostLogin = window.open(webtrade_url,'winPostLogin','status=yes,scrollbars=yes,resizable=yes,left=0,top=0,width=780,height='+screen.height*0.9);
    objPostLogin.focus();
}
function CheckNum_OnKeyPress()
{
    return !(event.keyCode <48 || event.keyCode >57);
}
function CheckStockCode(txtCtr, errorMsg)
{
    //alert errorMsg if the value of txtCtr is not valid stock code
    var code = document.getElementById(txtCtr).value;
    if (code.length > 5 || code.length == 0)
    {
        alert(errorMsg);
        document.getElementById(txtCtr).value = "";
        document.getElementById(txtCtr).focus();
        return false;
    }
        
    if (code.match(/^[0-9]+$/))
    {
		return true;
	}
	else
	{
        alert(errorMsg);
        document.getElementById(txtCtr).value = "";
        document.getElementById(txtCtr).focus();
		return false;
	}
}

function GetQuote(txtCtr, errorMsg)
{
    //alert errorMsg if the value of txtCtr is not valid stock code
    var code = document.getElementById(txtCtr).value;
    if (code.length > 5 || code.length == 0)
    {
        alert(errorMsg);
        document.getElementById(txtCtr).value = "";
        document.getElementById(txtCtr).focus();
        return false;
    }
        
    if (code.match(/^[0-9]+$/))
    {
        window.location.href="/Markets/HK/StockQuote/" + code + ".aspx";
		return true;
	}
	else
	{
        alert(errorMsg);
        document.getElementById(txtCtr).value = "";
        document.getElementById(txtCtr).focus();
		return false;
	}
}

function OpenSPDemoLink(lang)
{
    var spdemo_url = "";
    if (lang == "en")
        spdemo_url = _spdemo_url_en;
    else
    {
        spdemo_url = _spdemo_url_b5;
        var gb_pos = location.toString().search(_kanhan_prefix);
        if ( gb_pos > -1)
        {
            // this is simp. chinese, change to trad. chinese
            spdemo_url = _spdemo_url_gb;
        }
    }
        
    var objPostLogin;
    objSPDemo = window.open(spdemo_url,'winPostLogin','status=yes,scrollbars=yes,resizable=yes,left=50,top=20,width=565,height=750');
    objSPDemo.focus();

}