function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
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_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_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_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_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_nbGroup(event, grpName) { //v6.0
  var i,img,nbArr,args=MM_nbGroup.arguments;
  if (event == "init" && args.length > 2) {
    if ((img = MM_findObj(args[2])) != null && !img.MM_init) {
      img.MM_init = true; img.MM_up = args[3]; img.MM_dn = img.src;
      if ((nbArr = document[grpName]) == null) nbArr = document[grpName] = new Array();
      nbArr[nbArr.length] = img;
      for (i=4; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
        if (!img.MM_up) img.MM_up = img.src;
        img.src = img.MM_dn = args[i+1];
        nbArr[nbArr.length] = img;
    } }
  } else if (event == "over") {
    document.MM_nbOver = nbArr = new Array();
    for (i=1; i < args.length-1; i+=3) if ((img = MM_findObj(args[i])) != null) {
      if (!img.MM_up) img.MM_up = img.src;
      img.src = (img.MM_dn && args[i+2]) ? args[i+2] : ((args[i+1])? args[i+1] : img.MM_up);
      nbArr[nbArr.length] = img;
    }
  } else if (event == "out" ) {
    for (i=0; i < document.MM_nbOver.length; i++) {
      img = document.MM_nbOver[i]; img.src = (img.MM_dn) ? img.MM_dn : img.MM_up; }
  } else if (event == "down") {
    nbArr = document[grpName];
    if (nbArr)
      for (i=0; i < nbArr.length; i++) { img=nbArr[i]; img.src = img.MM_up; img.MM_dn = 0; }
    document[grpName] = nbArr = new Array();
    for (i=2; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
      if (!img.MM_up) img.MM_up = img.src;
      img.src = img.MM_dn = (args[i+1])? args[i+1] : img.MM_up;
      nbArr[nbArr.length] = img;
  } }
}
// util.js
function getCookie(n) { var cv = ""; var search = n + "="; if(document.cookie.length > 0) {  offset = document.cookie.indexOf(search); if (offset != -1) { offset += search.length; end = document.cookie.indexOf(";", offset); if (end == -1) { end = document.cookie.length;} cv = unescape(document.cookie.substring(offset, end)) } } return cv; }
function setCookie(n, v, hours) { var e=""; if(hours != null) {if (hours ==0) {hours = 2000;}; e = new Date((new Date()).getTime()+hours * 3600000);e="; expires="+e.toGMTString();} document.cookie=n+"="+escape(v)+e;}
// cyc.js
function getDev() { return (typeof(cycDev) != 'undefined' && cycDev) }
function getWebRoot() {
    var base = document.getElementsByTagName('base');
    return (base.length < 1) ? '' : base[0].href;
}
// game.js
var jven = '';
function go(account , gamename , lobbyno , lobbyType , version) {
    var wW = 760; var wH = 500; var ac = '';
    var windowname = gamename;
    if (getDev()) {
        var D = new Date();
        windowname = windowname+D.getTime();
    }

    if(lobbyType == 'D') {
        wW = 400; wH = 300;
        ac = 'cgi-bin/loginG.php?i=DG&';
    } else if (lobbyType == 'M') {
        room = gamename +"Lobby" + lobbyno + "/"+ gamename +"Main";
        enterGame = 1;
        firstround = matchTypeNo[gamename];
        return goMatch(account , gamename , lobbyno , lobbyType , version , room , enterGame , firstround);
    } else {
        if(account == "") {
            return alert("你尚未登入！！∼\n\n 請您先做會員登入的動作，謝謝。");
            ac = 'cgi-bin/loginG.php?';
            wW = 420; wH = 320;
        } else {
            ac = 'cgi-bin/loginGame.php?';
        }
    }

    if (ac) 
    {
        var url = ac+"gamename="+gamename+"&lobbyno="+lobbyno+"&lobbyType="+lobbyType+"&ac=1";
        popup(url, windowname, wW, wH, '', '');
    }    
}
// match.js
function goMatch(account , gamename , lobbyno , lobbyType , version , room , enterGame , firstround) {
    ns4 = (navigator.appName.indexOf("Microsoft")==-1);
    roomValue = gamename +"Lobby" + lobbyno + "/"+ gamename +"Main";
    var gameType = ns4 ? 'applet' : 'loader';

    windowname = gamename;

    if( account == "" ) {
      alert("你尚未登入！！∼\n\n 請您先做會員登入的動作，謝謝。");
    } else {
        var url = "cgi-bin/loginGameForMatch.php?gameType="+gameType+"&gamename="+gamename+"&lobbyno="+lobbyno+"&roomnum="+room+"&lobbyType="+lobbyType+"&version="+version;
        var wW = 710;
        var wH = 610;
        //非初賽不會顯示目前分數狀況
        if(firstround == 1) {
            url = "cgi-bin/showracestateNormal.php?gameType="+gameType+"&gamename="+gamename+"&lobbyno="+lobbyno+"&roomnum="+room+"&lobbyType="+lobbyType+"&version="+version;
            wW = 660;
            wH = 540;
        }
        popup(url, windowname, wW, wH, '', '');
    }
    return true; 
}
//
function popup(url, winname, width, height, left, top)
{
    if (!left) var left = (screen.availWidth - width)/2;
    if (!top) var top = (screen.availHeight - height - 60)/2;
    var win = open(url, winname, 'toolbar=no,location=no,directories=no,status=no,menub ar=no,scrollbar=no,resizable=no,copyhistory=no,width='+width+',height='+height+',left='+left+', top='+top+',screenX='+left+',screenY='+top+'');
    if (win != null) return win.focus();
    alert("Sorry!!您的電腦有設定『封鎖快顯』的軟體\n\n影響遊戲無法順利開啟，\n\n麻煩您關閉『封鎖快顯』軟體或將cycgame.com 加入許可網址。");
}