function MovieClip(){ var _self=this; _self.parentClass=null; var eventHandler = new Array(); _self.classname="MovieClicp.js"; //------------init------------ _self.init=function(){ alert("MovieClip:init"); } _self.setParentclass=function(parentclass){ _self.parentClass = parentclass; } _self.getThis=function(varible){ return eval(varible); } _self.setPrivate=function(varible,val){ eval(varible+"='"+val+"'"); } //------------init------------ _self.addEventListener=function(eventname, eventFunction, targetObj){ if(targetObj!=null) return _self.addObjEvent(eventname, eventFunction, targetObj); eventHandler[eventname]=eventFunction; } _self.addObjEvent=function(eventname, eventFunction, targetObj){ var ret = ""; try{ switch(eventname){ case "MouseEvent.CLICK": _self.addMouseClickParam(eventname, eventFunction, targetObj); break; case "MouseEvent.MOUSE_OUT": _self.addMouseOutParam(eventname, eventFunction, targetObj); break; case "MouseEvent.MOUSE_OVER": _self.addMouseOverParam(eventname, eventFunction, targetObj); break; case "MouseEvent.MOUSE_MOVE": _self.addMouseMoveParam(eventname, eventFunction, targetObj); break; case "MouseEvent.MOUSE_DOWN": _self.addMouseDownParam(eventname, eventFunction, targetObj); break; case "MouseEvent.MOUSE_UP": _self.addMouseUpParam(eventname, eventFunction, targetObj); break; case "SelectEvent.ONCHANGE": _self.addSelectOnChangeParam(eventname, eventFunction, targetObj); break; case "KeyEvent.KEY_UP": _self.addKeyUpParam(eventname, eventFunction, targetObj); break; case "KeyEvent.KEY_DOWN": _self.addKeyDownParam(eventname, eventFunction, targetObj); break; case "KeyEvent.KEY_PRESS": _self.addKeyPressParam(eventname, eventFunction, targetObj); break; case "Event.ONFOCUS": _self.addOnFocus(eventname, eventFunction, targetObj); break; case "Event.ONBLUR": _self.addOnBlur(eventname, eventFunction, targetObj); break; default: break; } }catch(e){ ret = e.toString(); } return ret; } _self.addMouseClickParam=function(eventname, eventFunction, targetObj){ targetObj.onclick=function(e){ eventFunction(e, targetObj); } } _self.addMouseOutParam=function(eventname, eventFunction, targetObj){ targetObj.onmouseout=function(e){ eventFunction(e, targetObj); } } _self.addMouseOverParam=function(eventname, eventFunction, targetObj){ targetObj.onmouseover=function(e){ eventFunction(e, targetObj); } } _self.addMouseMoveParam=function(eventname, eventFunction, targetObj){ targetObj.onmousemove=function(e){ eventFunction(e, targetObj); } } _self.addMouseDownParam=function(eventname, eventFunction, targetObj){ targetObj.onmousedown=function(e){ eventFunction(e, targetObj); } } _self.addMouseUpParam=function(eventname, eventFunction, targetObj){ targetObj.onmouseup=function(e){ eventFunction(e, targetObj); } } _self.addSelectOnChangeParam=function(eventname, eventFunction, targetObj){ targetObj.onchange=function(e){ eventFunction(e, targetObj); } } _self.addKeyUpParam=function(eventname, eventFunction, targetObj){ targetObj.onkeyup=function(e){ eventFunction(e, targetObj); } } _self.addKeyDownParam=function(eventname, eventFunction, targetObj){ targetObj.onkeydown=function(e){ eventFunction(e, targetObj); } } _self.addKeyPressParam=function(eventname, eventFunction, targetObj){ targetObj.onkeypress=function(e){ eventFunction(e, targetObj); } } _self.addOnFocus=function(eventname, eventFunction, targetObj){ targetObj.onfocus=function(e){ eventFunction(e, targetObj); } } _self.addOnBlur=function(eventname, eventFunction, targetObj){ targetObj.onblur=function(e){ eventFunction(e, targetObj); } } _self.removeEventListener=function(eventname, targetObj){ if(targetObj!=null) return _self.removeObjEvent(eventname, targetObj); eventHandler[eventname] = null; } _self.removeObjEvent=function(eventname, targetObj){ var ret = ""; try{ switch(eventname){ case "MouseEvent.CLICK": targetObj.onclick=null; break; case "MouseEvent.MOUSE_OUT": targetObj.onmouseout=null; break; case "MouseEvent.MOUSE_OVER": targetObj.onmouseover=null; break; case "MouseEvent.MOUSE_MOVE": targetObj.onmousemove=null; break; case "MouseEvent.MOUSE_DOWN": targetObj.onmousedown=null; break; case "MouseEvent.MOUSE_UP": targetObj.onmouseup=null; break; case "SelectEvent.ONCHANGE": targetObj.onchange=null; break; case "KeyEvent.KEY_UP": targetObj.onkeyup=null; break; case "KeyEvent.KEY_DOWN": targetObj.onkeydown=null; break; case "KeyEvent.KEY_PRESS": targetObj.onkeypress=null; break; case "Event.ONFOCUS": targetObj.onfocus=null; break; case "Event.ONBLUR": targetObj.onblur=null; break; default: break; } }catch(e){ ret = e.toString(); } return ret; } _self.eventhandler=function(eventname, param){ if(eventHandler[eventname]!=null){ eventHandler[eventname](param); } } _self.dispatchEvent=function(eventname, param){ try{ _self.parentClass.eventhandler(eventname, param); }catch(e){ console.log(e.toString()); } } _self.clearObj=function(){ _self = null; eventHandler = null; parentclass = null; } } //var _=new Object(); var dataClass=new Object(); var debug=false; function maxlog(obj,message){ if (!debug) return; if (document.getElementById(obj)==null){ document.body.innerHTML=document.body.innerHTML+"
"; } if (message==""){ document.getElementById(obj).innerHTML=""; }else{ document.getElementById(obj).innerHTML=document.getElementById(obj).innerHTML+message; } } function get_protocal(){ return document.location.protocol; } function get_web_domain(){ return document.domain; } //移除物件記憶體(_) function removeMem(obj){ for(var variable in obj){ try{ //alert(variable+"===>"+typeof obj[variable]); if (typeof obj[variable]=="object"){ maxlog("removeMC_log","NEXT->"+variable); //document.getElementById("rm").innerHTML=document.getElementById("rm").innerHTML+"NEXT->"+variable+"
"; obj[variable].removeMC(); removeMem(obj[variable]); maxlog("removeMC_log","[Next Remove]"+variable); obj[variable]=null; }else{ //document.getElementById("rm").innerHTML=document.getElementById("rm").innerHTML+"[Remove]"+variable+"
"; maxlog("removeMC_log","[Remove]"+variable); obj[variable]=null; } }catch(e){ maxlog("removeMC_log","[Try Remove]"+variable); obj[variable]=null; } } } //顯示物件內容 function showObj(Obj){ //alert(obj) maxlog("showobj_log",""); for(var variable in Obj){ try{ maxlog("showobj_log","name:"+variable+"==== value:"+Obj[variable]); }catch(e){ //alert(e); } } } function get_date(){ var zone = -4; var d = new Date(); var utc = d.getTime() + (d.getTimezoneOffset() * 60000); var out = new Date(utc + (3600000*zone) + (86400000*-1)); var h = out.getHours(); var str_h = (h<10)?"0"+h:""+h; var day = out.getDate()+str_h; return day; } //載入html文件(及js) function loadHtml(Url,autoClearBody,loadComplete,paramHash){ //if(Url.substr(0,1)!="/") Url="/"+Url; urls=Url.split("/"); filename=urls[urls.length-1].split(".")[0]; urlpath=Url.replace(urls[urls.length-1],""); url=Url; //jsurl=urlpath+"js/"+filename+".js"; jsurl="/js/"+filename+".js"; //if (autoClearBody!=false) try{ removeMem(_);}catch(e){} //alert("url="+url); loaderProc(url,jsurl,autoClearBody,loadComplete,paramHash); } var his_count = 0; var QueryString = function () { // This function is anonymous, is executed immediately and // the return value is assigned to QueryString! var query_string = {}; var query = window.location.search.substring(1); var vars = query.split("&"); for (var i=0;i"+e.toString()); } window.onpopstate = popState; function popState(event){ //init(); //alert("pop["+history.length+"]"); //if (!runFirst){ //window.location.reload(); setTimeout(pushhistory,100); var header_back; try{ header_back = document.getElementById("header_back"); header_back.click(); // 2018-02-05 CRM-236加強版手機 - 529.當注單點開時,使用手機返回或瀏覽器的上一頁 需把注單往下收,現在是背景會回前一頁(PJM-934) _top["browserBack"] = true; dataClass["menu"].checkIsBet(); }catch(e){ //alert("1==>"+e.toString()); try{ header_back.onclick(); }catch(ee){ //alert("2==>"+e.toString()); } //alert(header_back.onclick.toString()); // alert("2==>"+e.toString()); } // history.popState(); //} //history.pushState("",document.title,"http://"+document.domain); /* try{ //alert("history.length="+history.length); history.pushState("","title","http://"+document.domain); }catch(ex){ alert(ex.toString()); } */ //runFirst=false; //urls=window.location.pathname.split("/"); //filename=urls[urls.length-1].split(".")[0]; //history.pushState("","title","http://"+document.domain+"/index_home.html"); //alert(filename); //dataClass[filename].init(); } function pushhistory(){ try{ history.pushState("","title",get_protocal()+"//"+get_web_domain()); //alert("push["+history.length+"]"); }catch(ex){ alert(ex.toString()); } } function loaderProc(url,jsurl,autoClearBody,loadComplete,paramHash){ var getHTML=new HttpRequestRetry(); var ver="?ver="+get_date(); url+=ver; jsurl+=ver; getHTML.addEventListener("LoadComplete",function(html){ //alert("finish==>"+url); /* if(url.indexOf("loading")==-1){ history.pushState("","title","http://"+document.domain+url); } */ //var div_body = (jsurl.indexOf("sys_msg.js")!=-1)?"sys_show":"body_show"; // 2017-06-16 PMO-51 危險球通告 var div_body = (paramHash!=undefined && paramHash["body"]!= undefined)?paramHash["body"]:"body_show"; //alert(html); if (autoClearBody!=false){ //document.body.innerHTML=""; document.getElementById(div_body).innerHTML=""; } var tempHtml=new parseHTML(html); dbody=tempHtml.getTag("div")[0]; //dbody=tempHtml.getTag("body")[0]; //dhead=tempHtml.getTag("head")[0]; //document.body.innerHTML=""; //CSS alink=tempHtml.getTag("link"); var css_ary = document.getElementsByTagName("link"); var css_num = css_ary.length; var css_name = ""; if(autoClearBody){ for(j=css_num-1; j>=0; j--){ var tmp = css_ary[j].href.split("/"); css_name = tmp[tmp.length-1]; if(_top["keep_css"].indexOf(","+css_name+",")==-1){ css_ary[j].parentNode.removeChild(css_ary[j]); } } } //alert(alink.length+"==>"+document.getElementsByTagName("link").length); for(i=0;i"+document.getElementsByTagName("link").length); //document.body.appendChild(dbody); try{ document.getElementById(div_body).appendChild(dbody); }catch(e){ //console.log("[error]"+e.toString()+","+url); } //alert("header=>"+dhead.innterHTML); scriptAry=document.getElementsByTagName("script"); for(i=scriptAry.length-1;i>=0;i--){ //if (scriptAry[i].src==url) return; scriptAry[i].parentNode.removeChild(scriptAry[i]); } var s = tempHtml.getTag("script"); var js_total = s.length; var errObj = {}; var err_total = 3; var chkObj = {}; chkObj.total = js_total; chkObj.count = 0; chkObj.jsurl = jsurl; chkObj.loadComplete = loadComplete; if(js_total!=0){ for(h=0; h=err_total){ chkObj.count++; chkJS(chkObj); }else{ setTimeout(function(){ var errscp = document.createElement("script"); errscp.onload = e.target.onload; errscp.onerror = e.target.onerror; errscp.src = err_url; (document.getElementsByTagName("head")[0] || document.body).appendChild(errscp); //(document.getElementsByTagName("head")[0] || document.body).removeChild(this); //this.src = err_url+errObj[err_url].count; //(document.getElementsByTagName("head")[0] || document.body).appendChild(this); //console.log("[reload]"+err_url); },1000); } } }else{ chkObj.count++; chkJS(chkObj); } } }else{ loadscript(jsurl,loadComplete); } //document.body.replaceChild(document.body,dbody); tempHtml.remove(); //script }) //alert("url=>"+url); getHTML.loadURL(url,"GET",""); } function chkJS(obj){ //console.log("js_total="+obj.total+",js_count="+obj.count); if(obj.count>=obj.total){ loadscript(obj.jsurl,obj.loadComplete); } } //解析xml function parseXml(xml){ var tempHtml=new parseHTML(xml); var xml=tempHtml.getChildren(); //alert("-==>"+xml[0].tagName); var firstNode=xml[0].tagName; //game=xml["server"].node["group"].children["game"].children; root=tempHtml.getTag(firstNode); xmlnode=new xmlNode(root); tempHtml.remove(); return xmlnode; } //解析xml Class function xmlNode(root){ _self=this; _self.Root=root; parentNode=_self.Root[0]; _self.getParentNode=function(){ return parentNode; } _self.getNode=function(node,auto){ retNode=parentNode.getElementsByTagName(node); parentNode=retNode[0]; if (auto==false) return retNode; if (retNode.length==1) return retNode[0]; else return retNode; // return retNode; } _self.Node=function(parentNode,node,auto){ if (parentNode.length>1){ alert("DataNode error!!"); return; } retNode=parentNode.getElementsByTagName(node); if (auto==false) return retNode; if (retNode.length==1) return retNode[0]; else return retNode; //return retNode; } _self.removeMC=function(){} } //解析html Class function parseHTML(html){ //alert(html) var _self=this; //var iframe=document.createElement("iframe"); var divObj=document.createElement("div"); // var divObjhead=document.createElement("head"); //var divObj=document.createDocumentFragment(); // var divObj=document.createDocumentFragment(); //document.body.appendChild(divObj); //document.appendChild(divObj); //divObjhead.innerHTML=html; divObj.innerHTML=""+html+""; //divObj.appendChild(divObj1); //divObj1=null; //alert("head="+divObjhead.innerHTML); //alert("divObj.innerHTML="+divObj.innerHTML); //alert(divObj.parentNode); _self.getTag=function(tagID,divobj){ if (divobj==undefined) divobj=divObj; var retobj=new Array(); //alert("divObj.innerHTML="+divObj.innerHTML); for(var i=0;i"+ divobj.children[i].id); retobj.push(divobj.children[i]); //alert(retobj.length+"==>"+ divobj.children[i].tagName); } } return retobj; } _self.getChildren=function(){ return divObj.children; } //document.body.appChild(divObj); _self.getObj=function(tagID,divobj){ if (divobj==undefined) divobj=divObj; var obj=null; try{ obj=divobj.children[tagID]; }catch(e){ obj=null; } return obj; } //return _self; _self.remove=function(){ //自己實作移除每一個div下面的物件 //實作完丟一份回來給我 divObj=null; } _self.removeMC=function(){} } //載入script function loadscript(url,loadComplete){ /* scriptAry=document.getElementsByTagName("script"); for(i=scriptAry.length-1;i>=0;i--){ //if (scriptAry[i].src==url) return; scriptAry[i].parentNode.removeChild(scriptAry[i]); }*/ var src=document.createElement("script"); (document.getElementsByTagName("head")[0] || document.body).appendChild(src); src.id=url; src.src=url; if(loadComplete!=null) src.onload=loadComplete; } function removeScript(url){ //alert(url+"==>"+document.getElementById(url)); var obj=document.getElementById(url); if (obj!=null) document.getElementById(url).parentNode.removeChild(document.getElementById(url)); } function runJS(js){ return new Function("return "+js)(); } //CSS動劃class function cssAni(divObj){ var _self=this; _self.play=function(ms,times){ playtime=ms/1000; divObj.style["-webkit-animation-duration"]=playtime+"s"; divObj.style["-webkit-animation-iteration-count"]=1; _self.finishTimer=setTimeout(_self.finishAni,ms,divObj); } _self.showXY=function(x,y){ divObj.style.top=y; divObj.style.left=x; } _self.finishAni=function(divObj){ divObj.style["-webkit-animation-iteration-count"]=0; csstag=_self.getCssTag(divObj.style["-webkit-animation-name"]); lastPos=csstag[csstag.length-1].style.cssText.replace(";","").split(":"); divObj.style[lastPos[0]]=lastPos[1]; _self.finish(divObj); } _self.finish=function(divObj){ alert("override finish(divObj)"); } //取得css keyframe size _self.KeyFrameSize=function(){ csstag=_self.getCssTag(divObj.style["-webkit-animation-name"]); return csstag.length; } //設定單一個css keyframe _self.setKeyFrame=function(keyframe,value){ csstag=_self.getCssTag(divObj.style["-webkit-animation-name"]); if (keyframe>csstag.length-1) alert("error=>keyframe>size"); //alert(csstag[keyframe].style.cssText+"==>"+csstag[0].style[0]+":"+value); csstag[keyframe].style.cssText=csstag[0].style[0]+":"+value; } //取得css所有keyframe物件 _self.getCssTag=function(findTagName){ for (var i=0;i=obj.scrollHeight){ //window.scrollTo(0,0); if (ky>=e.touches.item(0).clientY){ //window.scrollTo(0,0); event.preventDefault(); } } } } //dynamicFont function autoFont(_name, font_size, div_width){ var dynamic = document.getElementsByName(_name); if(font_size==null) font_size="64"; if(div_width==null) div_width=getDivWidth(); for(var i=0;i"+dynamicObj.parentNode.offsetWidth); //alert("div==>"+dynamicObj.offsetWidth); //while(textSpan.offsetHeight > dynamicObj.offsetHeight){ while(textSpan.offsetWidth > dynamicObj.offsetWidth){ //while(dynamicObj.offsetWidth > total){ textSpan.style.fontSize = (parseInt(textSpan.style.fontSize) - 1)+"px"; if (parseInt(textSpan.style.fontSize)<=1){ textSpan.style.fontSize="1px"; break; } } //alert("div.offsetWidth="+dynamicObj.offsetWidth+"\nfontSize="+textSpan.style.fontSize); //alert("fontSize="+textSpan.style.fontSize); } function Checkorder_credit(num)//小於0回傳0 { if(num < 0) { return 0; } else { return num ; } } function clearObject(obj){ for(var key in obj){ delete obj[key]; } return obj; } function delObjectItemByKey(obj, key){ delete obj[key]; return obj; }function CookieManager(){ var _self = this; _self.set = function(cname, cvalue, exdays , path){ if(_top["app"]=="Y"){ callApp("putdbdata,"+cname+","+cvalue); }else{ exdays = exdays || 30; path = path || "/" var d = new Date(); d.setTime(d.getTime() + (exdays*24*60*60*1000)); var expires = "expires="+d.toUTCString(); var paths = "path="+path; document.cookie = cname + "=" + cvalue + "; " + expires+"; "+paths; } } _self.get = function(cname){ if(_top["app"]=="Y"){ //callApp("getdbdata,"+cname); }else{ var name = cname + "="; var ca = document.cookie.split(';'); for(var i=0; i0;t*=10,b--); var n = (b==0)?0:(1/t); //極小數 處理溢位問題 if(num*1 >= 0){ if(add) return addZero(Math.round((num*t)+n)/t,point); else return Math.round((num*t)+n)/t; }else{ if(add) return addZero(Math.round((num*t)-n)/t,point); else return Math.round((num*t)+n)/t; } } function chgForm_Single_ratio(odds,wtype){ //return odds; //console.trace("wtype"+wtype); odds = odds*1; var isM = chkIsM(wtype); var isFS = chkIsFS(wtype); //Ricky 2017-11-15 四捨五入邏輯 //因為讓球大小玩法目前開出賠率5以上會有問題 , 所以先讓這兩種玩法不要走進四捨五入邏輯裡 var isRorOU = chkIsRorOU(wtype); //Ricky 2017-11-15 四捨五入邏輯 //因為讓球大小玩法目前開出賠率5以上會有問題 , 所以先讓這兩種玩法不要走進四捨五入邏輯裡 if(isRorOU) { return formatNumber(odds,2,2); } else { if(!(isM || isFS) && odds == 0){ return odds.toFixed(0); } else if((isM || isFS) && 10 <= odds && odds < 98.5){ //獨贏or冠軍賠率10~98.5 秀小數點後一位 return odds.toFixed(1); } else if(!(isM || isFS) && 5 <= odds && odds < 20){ //非獨贏賠率5~20 秀小數點後一位 return odds.toFixed(1); } else if(!(isM || isFS) && 20 <= odds ){ //非獨贏賠率大於等於20秀整數 return odds.toFixed(0); } else if((isM || isFS) && 101 <= odds ){ //獨贏or冠軍賠率大於等於101秀整數 return odds.toFixed(0); } return odds.toFixed(2); } } function chkIsFS(wtype){ var isFS = false; var ary = new Array(); ary["FS"] = true; ary["SFS"] = true; if(ary[wtype]){ isFS = true; } return isFS; } function chkIsM(rtype){ try{ rtype = rtype.toUpperCase(); }catch(e){} var isM = false; var M_wtype = new Array("A","B","C","D","E","F"); var F_wtype = new Array("01","02"); var RF_wtype = new Array("01","02","03","04","05","06","07","08","09","10", "11","12","13","14","15","16","17","18","19","20", "21","22","23","24","25","26","27","28","29","30", "31","32","33","34","35"); var ary = new Array(); ary["M"] = true; ary["HM"] = true; ary["RM"] = true; ary["HRM"] = true; for(var i = 0;i < M_wtype.length;i++){ ary[M_wtype[i]+"M"] = true; ary[M_wtype[i]+"RM"] = true; } for(var i = 0;i < F_wtype.length;i++){ ary["F"+F_wtype[i]] = true; } for(var i = 0;i < RF_wtype.length;i++){ ary["RF"+RF_wtype[i]] = true; } if(ary[rtype]){ isM = true; } return isM; } //Ricky 2017-11-15 四捨五入邏輯 //因為讓球大小玩法目前開出賠率5以上會有問題 , 所以先讓這兩種玩法不要走進四捨五入邏輯裡 function chkIsRorOU(wtype){ try{ wtype = wtype.toUpperCase(); }catch(e){} var isRorOU = false; var OU = new Array("OU","ROU","HOU","HROU","OUH","OUC","ROUH","ROUC","HOUH","HOUC","HROUH","HROUC","POU","HPOU","POUH","POUC","HPOUH","HPOUC"); var R = new Array("R","RE","HR","HRE","RH","RC","REH","REC","HRH","HRC","HREH","HREC","PR","HPR","PRH","PRC","HPRH","HPRC"); //Ricky 2018-01-26 PJB-176 CRM-229世界盃新玩法 (19)新、手機會員端-內層盤面/所有注單-5分鐘進球,不走四捨五入邏輯 var DOUBLE = new Array( "TARU","TARUO","TARUU", "TBRU","TBRUO","TBRUU", "TDRU","TDRUO","TDRUU", "TERU","TERUO","TERUU", "EO","HEO","REO","HREO","EOH","EOC","HEOH","HEOC","EOO","EOE","HEOO","HEOE","REOO","REOE","HREOO","HREOE" ,"RSH1","RSH2","RSH3","RSH4","RSH5","RSH6","RSH7","RSH8","RSH9","RSHA","RSHB","RSHC","RSHD","RSHE","RSHF","RSHG","RSHH","RSHI","RSHJ","RSHK" ,"RSHL","RSHM","RSHN","RSHO","RSHP","RSHQ","RSHR","RSHS","RSHT","RSHU" ,"RSC1","RSC2","RSC3","RSC4","RSC5","RSC6","RSC7","RSC8","RSC9","RSCA","RSCB","RSCC","RSCD","RSCE","RSCF","RSCG","RSCH","RSCI","RSCJ","RSCK" ,"RSCL","RSCM","RSCN","RSCO","RSCP","RSCQ","RSCR","RSCS","RSCT","RSCU" ,"RNB1","RNB2","RNB3","RNB4","RNB5","RNB6","RNB7","RNB8","RNB9","RNBA","RNBB","RNBC","RNBD","RNBE","RNBF","RNBG","RNBH","RNBI","RNBJ","RNBK" ,"RNBL","RNBM","RNBN","RNBO","RNBP","RNBQ","RNBR","RNBS","RNBT","RNBU" ,"RNC1","RNC2","RNC3","RNC4","RNC5","RNC6","RNC7","RNC8","RNC9","RNCA","RNCB","RNCC","RNCD","RNCE","RNCF","RNCG","RNCH","RNCI","RNCJ","RNCK" ,"RNCL","RNCM","RNCN","RNCO","RNCP","RNCQ","RNCR","RNCS","RNCT","RNCU" ,"PEO","HPEO","PREO","HPREO","PEOH","PEOC","HPEOH","HPEOC","PEOO","PEOE","HPEOO","HPEOE" ); var OU15 = new Array("AOU","BOU","COU","DOU","EOU","FOU", "APOU","BPOU","CPOU","DPOU","EPOU","FPOU", "PAOU","PBOU","PCOU","PDOU","PEOU","PFOU"); var R15 = new Array("AR","BR","CR","DR","ER","FR", "APR","BPR","CPR","DPR","EPR","FPR", "PAR","PBR","PCR","PDR","PER","PFR"); var ROU15 = new Array("AROU","BROU","CROU","DROU","EROU","FROU"); var ROUHC = new Array("ROUH","ROUC","HRUH","HRUC"); var ary = new Array(); for(var i=0;i"; } document.getElementById("showobj").innerHTML=""; for(var variable in Obj){ try{ document.getElementById("showobj").innerHTML=document.getElementById("showobj").innerHTML+"name:"+variable+"==== value:"+Obj[variable]+"
"; }catch(e){ showErrorMsg(classname, "showObj", e.toString()); } } } //by key function in_array(txt, ary){ for(var key in ary){ if(ary[key]==txt) return true; } return false; } function array_indexOf(txt, ary, isMatch){ for(var i=0; i"+hash[key]+"\n"; count++; }catch(e){ //showErrorMsg(classname, "printHash", e.toString()); } } str+="length======>"+count+"\n"; //debugShow(str); alert(str); } function debugShow(url,msg){ var div = document.createElement('DIV'); div.id="leslie_div"; div.style.position="absolute"; div.style.top="10px"; div.style.left="300px"; div.style.display=""; var txt = document.createElement('TEXTAREA'); txt.id="leslie_txt"; txt.cols=80; txt.rows=30; txt.value = msg; var btn = document.createElement('INPUT'); btn.id="leslie_btn"; btn.type="button"; btn.type="button"; btn.value="x"; btn.onclick=function(e,div){ document.getElementsByTagName('body')[0].removeChild(div); /* var obj = document.createElement('leslie_div'); if (obj!=null){ //obj.parentNode.removeChild(obj); document.getElementsByTagName('body')[0].removeChild(obj); } */ } div.appendChild(txt); div.appendChild(btn); document.getElementsByTagName('body')[0].appendChild(div); } function showErrorMsg(classname, functionname, errormsg){ var ret = ""; ret+="[error]\n"; ret+="form: "+classname+"\n"; ret+="function: "+functionname+"\n"; ret+="msg: "+errormsg+"\n"; MsgShow(null,ret); } /* * 以ltype來判斷賠率秀幾碼 */ function chg_showior(ltype){ switch(ltype){ case "1": show_ior=100; break; case "2": show_ior=100; break; case "3": show_ior=100; break; case "4": show_ior=100; break; default: show_ior=100; break; } return show_ior; } function chgOddfIoratio(iorH, iorC, odd){ if (odd=="HK") odd="H"; var tmp_odd = (odd!=null)?odd:_top["userData"].odd_f_type; if(iorH*1==0 && iorC*1==0){ var tmp = new Array(); tmp[0] = 0; tmp[1] = 0; return tmp; } return get_other_ioratio(tmp_odd, iorH, iorC , chg_showior(_top["userData"].ltype), CONFIG_IORATIO); } //123,456,789 /* function formatThousand(str){ str = String(str); var _abs = ""; if(str*1<0){ _abs=str.substr(0,1); str=str.substr(1,str.length-1); } var ary = str.split("."); if(ary[1]){ ary[1]="."+ary[1]; }else{ ary[1]=""; } var tmp = ary[0]; if(tmp.length<=3){ return _abs+tmp+ary[1]; } else { return _abs+util_formatNumber(tmp.substr(0,tmp.length-3))+','+tmp.substr(tmp.length-3)+ary[1]; } } */ function formatThousand(num) { num = num + ""; var re = /(-?\d+)(\d{3})/; while (re.test(num)) { num = num.replace(re, "$1,$2"); } return num; } function util_formatNumber(num){ return formatNumber(num, CONFIG_IORATIO, true); } function formatNumber(num, b, add){ var point = b; var t=1; for(;b>0;t*=10,b--); if(num*1 >= 0){ if(add) return addZero(Math.round((num*t)+(1/t))/t,point); else return Math.round((num*t)+(1/t))/t; }else{ if(add) return addZero(Math.round((num*t)-(1/t))/t,point); else return Math.round((num*t)+(1/t))/t; } } function addZero(code,b){ code+=""; var str = ""; var index = code.indexOf("."); if(index==-1){ code+="."; index=code.length-1; } var r = b*1 - (code.length-index-1); for(i=0; i"+Url); urls=Url.split("/"); filename=urls[urls.length-1].split(".")[0]; if(_top["urlBack"]==true){ if(_top["urlParam"].length > 0){ _top["urlParam"].pop(); } } //var ary = new Array("loading","rule_p","rule_p_pop","ft_order_bet_p","bk_order_bet_p","tn_order_bet_p","vb_order_bet_p","bs_order_bet_p","op_order_bet_p","bm_order_bet_p","tt_order_bet_p"); var ary = new Array("loading","rule_p","rule_p_pop","sys_msg","notice","menu"); if(!in_array(filename,ary)&&_top["urlBack"]==false){ _top["urlHash"].push(filename); _top["urlParam"].push(paramHash); _top["urlPos"]++; setTimeout(pushhistory1,100); // 2017-10-27 CRM-236加強版手機 - 除了控制板的頁面外,都需亮起交易單 var urlPos = _top["urlPos"]; var chkAry = new Array("login","home","list_tv","history_data","todaywagers","forgot_pwd","msgbox","chg_passwd","chg_longin_ID"); if(!in_array(_top["urlHash"][urlPos], chkAry)){ if(_top["bet_select"].length == 0 && dataClass["menu"]!= null) dataClass["menu"].setControlNow(""); } // 2017-11-27 CRM-236加強版手機 - 78.點進帳戶歷史內層,下方控制板的帳戶歷史也要亮色 // 79.在看帳區,點擊上面交易狀況&帳戶歷史的header,在當前頁面,下方控制板也要亮色 var historyAry = new Array("history_data","history_view"); if(in_array(_top["urlHash"][urlPos], historyAry)){ dataClass["menu"].setControlNow("menu_history"); }else if(_top["urlHash"][urlPos]=="todaywagers"){ dataClass["menu"].setControlNow("menu_todaywagers"); } /* if(_top["userData"].username!=null){ if(_top["userData"].username.indexOf("pppp")!=-1){ printHash(_top["urlHash"], "add>>"+_top["urlPos"]); } } */ } _top["urlBack"] = false; //printHash(_top["urlParam"], "filename===>"+filename+",urlPos===>"+_top["urlPos"]); if(document.getElementById("loading")==null){ loadHtml("/loading.html",true, function(){ var showObj = document.getElementById("loading"); var imgObj = document.getElementById("loadingANI"); //dataClass["loading"] = extendsClass(_top["MovieClipClass"], _top["loading"]); dataClass["loading"].init(showObj,imgObj); //setVisibleLoading(true); loadHtml(Url,autoClearBody,function(){ //setTimeout(function(){dataClass["loading"].showLoading(false);}, 3000); //alert("1===>"+Url); //if(Url.indexOf("home")==-1) setVisibleLoading(false); if(loadComplete!=null) loadComplete(); return; },paramHash); },paramHash); }else{ if(dataClass["loading"]!=null){ if(dataClass["loading"].isLoading()){ //setTimeout(function(){dataClass["loading"].showLoading(false);}, 3000); //if(Url.indexOf("home")==-1) setVisibleLoading(false); } //setVisibleLoading(true); } loadHtml(Url,autoClearBody,function(){ //if(dataClass["loading"]!=null) //alert("2===>"+Url); //if(Url.indexOf("home")==-1) setVisibleLoading(false); if(loadComplete!=null) loadComplete(); return; },paramHash); } } function clearAllTimer(){ //trace("====== clearTimer ======"); var obj = _.timerObj; //trace("clearTimer====>obj: "+obj); if(obj!=null){ for(keys in obj){ //console.log("[clearAllTimer]====>"+keys); //if(obj[key]!=null&& key!="moTimer"){ // 2017-03-23 301.手機會員端-會員在維護時第一次登入,且不點擊任何按鈕,維護結束後畫面不會自動刷新(CRM-210) if(obj[keys]!=null && obj[keys].is_clear!=false){ //console.log("[clearAllTimer]clearObj====>"+keys); obj[keys].clearObj(); obj[keys] = null; } } } return true; } function trace(msg){ try{ //console.log(msg); }catch(e){} } //載入html文件(及js)加loading function loadHtml_loading(Url,autoClearBody,loadComplete, paramHash){ clearAllTimer(); var n = "?"+Math.floor(Math.random()*100000); setVisibleLoading(true,Url+n); top_url = Url+n; //trace("start=========>"+Url+n); //alert("html===>"+Url+"\nobj===>"+document.getElementById("loading")); //alert(dataClass["loading"].isLoading()); var getHTML = new HttpRequestRetry(); getHTML.addEventListener("LoadComplete", function(xml){ //alert(xml); xmlnode = parseXml(xml); var code = xmlnode.Node(xmlnode.Root[0],"code").innerHTML; if(code=="check_ip_enable"){ var ip_enable = xmlnode.Node(xmlnode.Root[0],"ip_enable").innerHTML; if(ip_enable=="N"){ loginokEvent(); loadHtml_process("/tpl/forbidden.html",autoClearBody,null, paramHash); return; }else{ var tmp = Url.split("/"); var filename = tmp[tmp.length-1].replace(".html",""); var isGame = checkIsGame(filename); var fixFirstLoadHome = (paramHash)?(paramHash["fixFirstLoadHome"]!="Y"):true; var nowPage = _top["urlHash"][_top["urlPos"]]; //console.log("[loadHtml_loading]"+_top["clearData"].sw+","+isGame+","+fixFirstLoadHome+","+_top["clearData"].isException,Url); if(_top["clearData"].sw=="Y" && _top["clearData"].isException!=true){ if( (isGame && fixFirstLoadHome)){ var ret = clearAllTimer(); if(ret){ if(filename=="home"){ var finishFun = loadComplete; loadComplete=function(){ //console.log("home startCleanData"); dataClass["home"].startCleanData({"clean_data_time":_top["clearData"].data_time}); if(finishFun!=null) finishFun(); } }else{ url = "/tpl/"+_top["userData"].langx+"/home.html"; loadHtml_loading(url, true ,function(){ //console.log("startCleanData"); dataClass["home"].startCleanData({"clean_data_time":_top["clearData"].data_time}); if(loadComplete!=null) loadComplete(); },{"fixFirstLoadHome":"Y"}); return; } } } } if(typeof paramHash=="object") paramHash["fixFirstLoadHome"] = "N"; loadHtml_process(Url,autoClearBody,loadComplete, paramHash); } } }); if(CONFIG_IP_ENABLE&&Url.indexOf("login")==-1){ getHTML.loadURL("/app/member/check_ip_enable.php","POST",""); }else{ loadHtml_process(Url,autoClearBody,loadComplete, paramHash); } } //檢查登入domain function CheckDomain(code, Fun){ var getHTML = new HttpRequestRetry(); //if(CONFIG_LOGIN_DOMAIN_CHECK){ var param = "code="+(code||"get_login_domain")+"&uid="+_top["userData"].uid; getHTML.loadURL("/app/member/check_login_domain.php","POST",param); //}else{ // return false; //} getHTML.addEventListener("LoadComplete", function(xml){ //alert(xml); xmlnode = parseXml(xml); var code = xmlnode.Node(xmlnode.Root[0],"code").innerHTML; if(code=="get_login_domain"){ var _url = ""; var need_trans = xmlnode.Node(xmlnode.Root[0],"need_trans").innerHTML; var new_domain = xmlnode.Node(xmlnode.Root[0],"new_domain").innerHTML; if(need_trans=="Y"){ //alert("new_domain===>"+new_domain); //_url = "http://"+new_domain; if(new_domain!=""){ //Url=Url.replace("/tpl/"+_top["userData"].langx+"/home.html","/index.php"); //var _par = (Url.indexOf("login")!=-1)?"":"?url="+Url+"&uid="+_top["userData"].uid; //var _par = (_top["userData"].uid+""=="undefined")?"":"?url="+Url+"&uid="+_top["userData"].uid; var loginvar = "?"; for(var key in _top["userData"]){ loginvar += ""+key+"="+_top["userData"][key]+"&"; } var _par = (_top["userData"].uid+""=="undefined")?"":loginvar; //var _par = (_top["userData"].uid+""=="undefined")?"":Url+"&uid="+_top["userData"].uid; //var _par = (_top["userData"].uid+""=="undefined")?"":"?uid="+_top["userData"].uid; //var _par = (_top["userData"].uid+""=="undefined")?"":""; var _url = getProtocal()+"//"+new_domain+_par; topGoToUrl(_url); return } }else{ if(Fun) Fun(); } }else{ _top["mm_domain"] = xmlnode.Node(xmlnode.Root[0],"mm_domain").innerHTML; } }); } function send_to_ga(_url){ if(!checkIsTestSide()){ if(_top["ga"]==null){ }else{ } } } //載入資料加loading function loadingRequest(){ var _self=this; var getHTML; _self.init=function(){ //getHTML = extendsClass(new HttpRequest(), HttpRequestLeslie); //getHTML = new HttpRequest(); getHTML = new HttpRequestRetry(); } _self.addEventListener=function(eventname, eventFunction){ getHTML.addEventListener(eventname, function(param){ //if(dataClass["loading"]!=null) dataClass["loading"].showLoading(false); eventFunction(param); }); } _self.loadURL=function(_url, _method, _params){ //if(_url.indexOf("get_game_more.php")!=-1){ send_to_ga(_url+"?"+_params); //} var ary = new Array("game_list","game_mor","league_list"); var isGame = false; //從盤面來要資料 for(var j=0; j"+_url+"\nobj===>"+document.getElementById("loading")); if(document.getElementById("loading")==null){ loadHtml("/loading.html",true, function(){ //if(dataClass["loading"]!=null) dataClass["loading"].showLoading(true); getHTML.loadURL(_url, _method, _params); }); }else{ //if(dataClass["loading"]!=null) dataClass["loading"].showLoading(true); getHTML.loadURL(_url, _method, _params); } }); */ } _self.init(); } function checkIsGame(_url){ var ary = new Array("game","league_list","allsport","home","league"); var isGame = false; //從盤面來要資料 for(var j=0; j"; // }else{ // str = ""+util_formatNumber(ior)+""; // } //Ricky 2017-07-19 CRM-230 單盤(without spread)玩法賠率的四捨五入邏輯(會員端) if(ior*1 < 0){ str = ""+chgForm_Single_ratio(ior,chgWtype)+""; }else{ str = ""+chgForm_Single_ratio(ior,chgWtype)+""; } return str; } function getSWIoratioMore(ior, sw, isChange, chgWtype, orderBet){ var chg_style = (isChange)?" txtOddsChange":""; var ret = ""; if(orderBet) ret = "-"; var str = ""; if(""+ior=="undefined"){ return ret; } if(""+sw=="N"){ return ret; } if(ior*1==0){ return ret; } // 2017-12-27 CRM-236加強版手機 - 496.印尼盤/歐洲盤-外層盤面-當已開盤,賠率為0時,鎖頭上會多秀紅字NaN跟1.00,秀鎖頭即可 if((""+ior).indexOf("Infinity")!=-1){ return ret; } // if(ior*1 < 0){ // str = ""+util_formatNumber(ior)+""; // }else{ // str = ""+util_formatNumber(ior)+""; // } //Ricky 2017-07-19 CRM-230 單盤(without spread)玩法賠率的四捨五入邏輯(會員端) if(ior*1 < 0){ str = ""+chgForm_Single_ratio(ior,chgWtype)+""; }else{ str = ""+chgForm_Single_ratio(ior,chgWtype)+""; } return str; } function getSWConcedeMore(ior, sw, isChange){ var chg_style = (isChange)?" txtOddsChange":""; var ret = "-"; var str = ""; if(""+ior=="undefined"){ return ret; } if(""+sw=="N"){ return ret; } str = ""+ior+""; return str; } //order ior style function chgOrderIorStyle(obj, ior){ var ret = "odd_box"; if(ior*1<0){ ret = "odd_box_n"; } setObjectClass(obj, ret); } function checkSWIoratio(ior, sw){ var ret = false; if(""+ior=="undefined"){ return ret; } if(""+sw=="N"){ return ret; } if(ior*1==0){ return ret; } return true; } function calcWindGold(gold, ior,wtype,gtype){ //不扣本金的wtype //var costGoldType="_R_RE_HR_HRE_OU_ROU_HOU_HROU_"; //if (("_"+costGoldType+"_").indexOf("_"+wtype+"_")>=0 && _top["userData"].odd_f_type!="E"){ //2017-07-11 CRB-101 足球玩法原雙盤改單盤 (會員三端) Ricky // if ((checkWtypeIsR(wtype)||checkWtypeIsOU(wtype)||checkWtypeIsTS(wtype)||checkWtypeIsDouble2016(wtype)) && !checkWtypeIsEO(wtype) && _top["userData"].odd_f_type!="E" // && !(checkWtypeIsOT(wtype) && gtype == "BS")){ if ((checkWtypeIsR(wtype)||checkWtypeIsOU(wtype)||checkWtypeIsDouble2016(wtype)) && !checkWtypeIsEO(wtype) && _top["userData"].odd_f_type!="E" && !(checkWtypeIsOT(wtype) && gtype == "BS")){ if (ior<0||wtype=="W3") return calcWindGoldDT(gold,ior); else return util_formatNumber(gold*ior*1); }else{ return calcWindGoldDT(gold,ior); } } function calcWindGoldDT(gold, ior){ if(ior*1 > 1){ return util_formatNumber(gold*(ior*1-1)); }if(ior*1 < 0){ return util_formatNumber(gold*1); }else{ return util_formatNumber(gold*ior*1); } } function calcWindGoldP(gold, iorAry){ var tmp = 1; for(var i=0; i"+isShow); if(isShow&&!dataClass["loading_league"].isLoading()){ setTimeout(closeLoading,10000); } */ } function closeLoading(){ if(dataClass["loading_league"]==null) return; dataClass["loading_league"].showLoading(false); } var top_url = ""; function setVisibleLoading(isShow, Url){ //alert("setVisibleLoading->"+isShow); if(dataClass["loading"]!=null){ //trace("loading===>"+isShow); //if(isShow==false)trace("end=========>"); //if(isShow&&!dataClass["loading"].isLoading()){ // setTimeout(function(){loadingClose(Url);},20000); //} dataClass["loading"].showLoading(isShow); } } function loadingClose(Url){ //trace(top_url+","+Url); /*if(dataClass["loading"]==null){ trace("dataClass[loading]==null"); }*/ if(dataClass["loading"]!=null&&top_url==Url){ dataClass["loading"].showLoading(false); //trace("top_url==Url"); } } function urlGoToIndex(){ //alert(document.location.protocol); /*var ishttps = 'https:' == document.location.protocol ? true: false; if(ishttps){ alert("这是一个https请求"); }else{ alert("这是一个http请求"); }*/ var _url = getProtocal()+"//"+getWebDomain(); topGoToUrl(_url); } function topGoToUrl(_url){ top.location = _url; } function getProtocal(){ return document.location.protocol; } function getWebDomain(){ return document.domain; } function isUCBrowser(){ //UC Browser return (navigator.userAgent.indexOf("UCBrowser")!=-1)?true:false; } function isFireFoxBrowser(){ //Firefox Browser return (navigator.userAgent.indexOf("Firefox")!=-1)?true:false; } function isIPad(){ return (navigator.userAgent.indexOf("iPad")!=-1)?true:false; } function lowVersion(){ var datas = navigator.userAgent.split(";"); var pad = datas[4].split(",")[0]; var version = pad.substring(pad.length-1,pad.length); return (version <=2)?true:false; } // 2017-05-02 3073.mi pad2&ipad mini2-沒有長版廣告 // Mozilla/5.0 (Linux; U; Android 4.4.4; en-us; MI PAD Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/46.0.2490.85 Mobile Safari/537.36 XiaoMi/MiuiBrowser/2.1.1 function isMIPad(){ return (navigator.userAgent.indexOf("MI PAD")!=-1)?true:false; } // 2018-01-30 CRM-236加強版手機 - 528.小米Mipad2、聯想Tab2-登入頁-要有”桌面版“的按鈕(PJM-933) // Mozilla/5.0 (Linux; Android 5.1; MI PAD 2 Build/LMY47I) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.111 Safari/537.36 function isMIPAD2(){ return (navigator.userAgent.indexOf("MI PAD 2")!=-1)?true:false; } // 2018-01-30 CRM-236加強版手機 - 528.小米Mipad2、聯想Tab2-登入頁-要有”桌面版“的按鈕(PJM-933) // Mozilla/5.0 (Linux; Android 7.1.1; MIX 2 Build/NMF26X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.111 Safari/537.36 function isMI2(){ return (navigator.userAgent.indexOf("MIX 2")!=-1)?true:false; } //三星平板 function isSamsungFlat(){ return (navigator.userAgent.indexOf("Android 4.")!=-1&&navigator.userAgent.indexOf("SM-")!=-1)?true:false; } //盤面為雙行的玩法 function checkRtypeIor(rtype){ var _type = rtype.toUpperCase(); var hash = new Object(); hash["OUH"] = "OUC"; hash["OUC"] = "OUH"; hash["HOUH"] = "HOUC"; hash["HOUC"] = "HOUH"; hash["ROUH"] = "ROUC"; hash["ROUC"] = "ROUH"; hash["HROUH"] = "HROUC"; hash["HROUC"] = "HROUH"; hash["POUH"] = "POUC"; hash["POUC"] = "POUH"; hash["HPOUH"] = "HPOUC"; hash["HPOUC"] = "HPOUH"; hash["POUHO"] = "POUHU"; hash["POUHU"] = "POUHO"; hash["POUCO"] = "POUCU"; hash["POUCU"] = "POUCO"; hash["HPOUHO"] = "HPOUHU"; hash["HPOUHU"] = "HPOUHO"; hash["HPOUCO"] = "HPOUCU"; hash["HPOUCU"] = "HPOUCO"; hash["AOUO"] = "AOUU"; hash["AOUU"] = "AOUO"; hash["BOUO"] = "BOUU"; hash["BOUU"] = "BOUO"; hash["COUO"] = "COUU"; hash["COUU"] = "COUO"; hash["DOUO"] = "DOUU"; hash["DOUU"] = "DOUO"; hash["EOUO"] = "EOUU"; hash["EOUU"] = "EOUO"; hash["FOUO"] = "FOUU"; hash["FOUU"] = "FOUO"; hash["AROUO"] = "AROUU"; hash["AROUU"] = "AROUO"; hash["BROUO"] = "BROUU"; hash["BROUU"] = "BROUO"; hash["CROUO"] = "CROUU"; hash["CROUU"] = "CROUO"; hash["DROUO"] = "DROUU"; hash["DROUU"] = "DROUO"; hash["EROUO"] = "EROUU"; hash["EROUU"] = "EROUO"; hash["FROUO"] = "FROUU"; hash["FROUU"] = "FROUO"; hash["REOO"] = "REOE"; hash["REOE"] = "REOO"; hash["HREOO"] = "HREOE"; hash["HREOE"] = "HREOO"; hash["EOO"] = "EOE"; hash["EOE"] = "EOO"; hash["HEOO"] = "HEOE"; hash["HEOE"] = "HEOO"; hash["PEOO"] = "PEOE"; hash["PEOE"] = "PEOO"; hash["HPEOO"] = "HPEOE"; hash["HPEOE"] = "HPEOO"; hash["EOHO"] = "EOHE"; hash["EOHE"] = "EOHO"; hash["EOCO"] = "EOCE"; hash["EOCE"] = "EOCO"; hash["HEOHO"] = "HEOHE"; hash["HEOHE"] = "HEOHO"; hash["HEOCO"] = "HEOCE"; hash["HEOCE"] = "HEOCO"; hash["TSY"] = "TSN"; hash["TSN"] = "TSY"; hash["RTSY"] = "RTSN"; hash["RTSN"] = "RTSY"; hash["HTSY"] = "HTSN"; hash["HTSN"] = "HTSY"; hash["RTS2Y"] = "RTS2N"; hash["RTS2N"] = "RTS2Y"; hash["OGY"] = "OGN"; hash["OGN"] = "OGY"; hash["OTY"] = "OTN"; hash["OTN"] = "OTY"; hash["ROTY"] = "ROTN"; hash["ROTN"] = "ROTY"; return hash[_type]; } function getAllRtype(wtype){ var hash = new Object(); var RNB_ary = new Array("RNBA","RNBB","RNBC","RNBD","RNBE","RNBF","RNBG","RNBH","RNBI","RNBJ","RNBK","RNBL","RNBM","RNBN","RNBO"); var RNC_ary = new Array("RNC1","RNC2","RNC3","RNC4","RNC5","RNC6","RNC7","RNC8","RNC9","RNCA","RNCB","RNCC","RNCD","RNCE","RNCF", "RNCG","RNCH","RNCI","RNCJ","RNCK","RNCL","RNCM","RNCN","RNCO","RNCP","RNCQ","RNCR","RNCS","RNCT","RNCU"); var RSH_ary = new Array("RSHA","RSHB","RSHC","RSHD","RSHE","RSHF","RSHG","RSHH","RSHI","RSHJ","RSHK","RSHL","RSHM","RSHN","RSHO", "RSCA","RSCB","RSCC","RSCD","RSCE","RSCF","RSCG","RSCH","RSCI","RSCJ","RSCK","RSCL","RSCM","RSCN","RSCO"); //先做初始對應 hash[wtype] = new Array(wtype); //MW hash["MW"] = new Array("MWH","MWC","MWHOT","MWCOT","MWHPK","MWCPK"); //MQ hash["MQ"] = new Array("MQH","MQC","MQHOT","MQCOT","MQHPK","MQCPK"); //MOUA hash["MOUA"] = new Array("MOUAHO","MOUAHU","MOUACO","MOUACU","MOUANO","MOUANU"); //MOUB hash["MOUB"] = new Array("MOUBHO","MOUBHU","MOUBCO","MOUBCU","MOUBNO","MOUBNU"); //MOUC hash["MOUC"] = new Array("MOUCHO","MOUCHU","MOUCCO","MOUCCU","MOUCNO","MOUCNU"); //MOUD hash["MOUD"] = new Array("MOUDHO","MOUDHU","MOUDCO","MOUDCU","MOUDNO","MOUDNU"); //MPG hash["MPG"] = new Array("MPGHH","MPGHC","MPGCH","MPGCC","MPGNH","MPGNC"); //MTS hash["MTS"] = new Array("MTSHY","MTSHN","MTSCY","MTSCN","MTSNY","MTSNN"); //DUA hash["DUA"] = new Array("DUAHO","DUAHU","DUACO","DUACU","DUASO","DUASU"); //DUB hash["DUB"] = new Array("DUBHO","DUBHU","DUBCO","DUBCU","DUBSO","DUBSU"); //DUC hash["DUC"] = new Array("DUCHO","DUCHU","DUCCO","DUCCU","DUCSO","DUCSU"); //DUD hash["DUD"] = new Array("DUDHO","DUDHU","DUDCO","DUDCU","DUDSO","DUDSU"); //DG hash["DG"] = new Array("DGHH","DGHC","DGCH","DGCC","DGSH","DGSC"); //DS hash["DS"] = new Array("DSHY","DSHN","DSCY","DSCN","DSSY","DSSN"); //OUEA hash["OUEA"] = new Array("OUEAOO","OUEAOE","OUEAUO","OUEAUE"); //OUEB hash["OUEB"] = new Array("OUEBOO","OUEBOE","OUEBUO","OUEBUE"); //OUEC hash["OUEC"] = new Array("OUECOO","OUECOE","OUECUO","OUECUE"); //OUED hash["OUED"] = new Array("OUEDOO","OUEDOE","OUEDUO","OUEDUE"); //OUPA hash["OUPA"] = new Array("OUPAOH","OUPAOC","OUPAUH","OUPAUC"); //OUPB hash["OUPB"] = new Array("OUPBOH","OUPBOC","OUPBUH","OUPBUC"); //OUPC hash["OUPC"] = new Array("OUPCOH","OUPCOC","OUPCUH","OUPCUC"); //OUPD hash["OUPD"] = new Array("OUPDOH","OUPDOC","OUPDUH","OUPDUC"); //OUTA hash["OUTA"] = new Array("OUTAOY","OUTAON","OUTAUY","OUTAUN"); //OUTB hash["OUTB"] = new Array("OUTBOY","OUTBON","OUTBUY","OUTBUN"); //OUTC hash["OUTC"] = new Array("OUTCOY","OUTCON","OUTCUY","OUTCUN"); //OUTD hash["OUTD"] = new Array("OUTDOY","OUTDON","OUTDUY","OUTDUN"); //RMUA hash["RMUA"] = new Array("RMUAHO","RMUAHU","RMUACO","RMUACU","RMUANO","RMUANU"); //RMUB hash["RMUB"] = new Array("RMUBHO","RMUBHU","RMUBCO","RMUBCU","RMUBNO","RMUBNU"); //RMUC hash["RMUC"] = new Array("RMUCHO","RMUCHU","RMUCCO","RMUCCU","RMUCNO","RMUCNU"); //RMUD hash["RMUD"] = new Array("RMUDHO","RMUDHU","RMUDCO","RMUDCU","RMUDNO","RMUDNU"); //RMPG hash["RMPG"] = new Array("RMPGHH","RMPGHC","RMPGCH","RMPGCC","RMPGNH","RMPGNC"); //RMTS hash["RMTS"] = new Array("RMTSHY","RMTSHN","RMTSCY","RMTSCN","RMTSNY","RMTSNN"); //RDUA hash["RDUA"] = new Array("RDUAHO","RDUAHU","RDUACO","RDUACU","RDUASO","RDUASU"); //RDUB hash["RDUB"] = new Array("RDUBHO","RDUBHU","RDUBCO","RDUBCU","RDUBSO","RDUBSU"); //RDUC hash["RDUC"] = new Array("RDUCHO","RDUCHU","RDUCCO","RDUCCU","RDUCSO","RDUCSU"); //RDUD hash["RDUD"] = new Array("RDUDHO","RDUDHU","RDUDCO","RDUDCU","RDUDSO","RDUDSU"); //RDG hash["RDG"] = new Array("RDGHH","RDGHC","RDGCH","RDGCC","RDGSH","RDGSC"); //RDS hash["RDS"] = new Array("RDSHY","RDSHN","RDSCY","RDSCN","RDSSY","RDSSN"); //RUEA hash["RUEA"] = new Array("RUEAOO","RUEAOE","RUEAUO","RUEAUE"); //RUEB hash["RUEB"] = new Array("RUEBOO","RUEBOE","RUEBUO","RUEBUE"); //RUEC hash["RUEC"] = new Array("RUECOO","RUECOE","RUECUO","RUECUE"); //RUED hash["RUED"] = new Array("RUEDOO","RUEDOE","RUEDUO","RUEDUE"); //RUPA hash["RUPA"] = new Array("RUPAOH","RUPAOC","RUPAUH","RUPAUC"); //RUPB hash["RUPB"] = new Array("RUPBOH","RUPBOC","RUPBUH","RUPBUC"); //RUPC hash["RUPC"] = new Array("RUPCOH","RUPCOC","RUPCUH","RUPCUC"); //RUPD hash["RUPD"] = new Array("RUPDOH","RUPDOC","RUPDUH","RUPDUC"); //RUTA hash["RUTA"] = new Array("RUTAOY","RUTAON","RUTAUY","RUTAUN"); //RUTB hash["RUTB"] = new Array("RUTBOY","RUTBON","RUTBUY","RUTBUN"); //RUTC hash["RUTC"] = new Array("RUTCOY","RUTCON","RUTCUY","RUTCUN"); //RUTD hash["RUTD"] = new Array("RUTDOY","RUTDON","RUTDUY","RUTDUN"); //RNB,RNC,RSH 這三個系列的rtype重複性質,故動態新增 if(in_array(wtype,RNB_ary) || in_array(wtype,RNC_ary)){ var rtypeH = wtype+"H"; var rtypeC = wtype+"C"; hash[wtype] = new Array(rtypeH,rtypeC); } else if(in_array(wtype,RSH_ary)){ var rtypeHH = wtype+"Y"; var rtypeHC = wtype+"N"; var rtypeCH = wtype.substr(0,2)+"C"+wtype.substr(3,1)+"Y"; var rtypeCC = wtype.substr(0,2)+"C"+wtype.substr(3,1)+"N"; hash[wtype] = new Array(rtypeHH,rtypeHC,rtypeCH,rtypeCC); } return hash[wtype]; } //是否為測試機 function checkIsTestSide(){ if(document.domain.indexOf(".cvssp.com")!=-1){ return true; }else{ return false; } } //讀球頭的玩法轉換 function switchConRtype(rtype){ rtype=rtype.toLowerCase(); var hash = new Object(); hash["rh"] = "ratio"; hash["rc"] = "ratio"; hash["ouc"] = "ratio_o"; hash["ouh"] = "ratio_u"; hash["hrh"] = "hratio"; //max 0408 strong hash["hrc"] = "hratio"; hash["houc"] = "ratio_ho"; hash["houh"] = "ratio_hu"; hash["rouc"] = "ratio_rouo"; hash["rouh"] = "ratio_rouu"; hash["hreh"] = "ratio_hre"; hash["hrouc"] = "ratio_hrouo"; hash["hrouh"] = "ratio_hrouu"; hash["reh"] = "ratio_re"; hash["rec"] = "ratio_re"; hash["hreh"] = "ratio_hre"; hash["hrec"] = "ratio_hre"; hash["houc"] = "ratio_ho"; hash["houh"] = "ratio_hu"; //06.25,Leslie,足球多玩法 hash["arh"] = "ratio_ar"; hash["arc"] = "ratio_ar"; hash["brh"] = "ratio_br"; hash["brc"] = "ratio_br"; hash["crh"] = "ratio_cr"; hash["crc"] = "ratio_cr"; hash["drh"] = "ratio_dr"; hash["drc"] = "ratio_dr"; hash["erh"] = "ratio_er"; hash["erc"] = "ratio_er"; hash["frh"] = "ratio_fr"; hash["frc"] = "ratio_fr"; hash["aouo"] = "ratio_aouo"; hash["aouu"] = "ratio_aouu"; hash["bouo"] = "ratio_bouo"; hash["bouu"] = "ratio_bouu"; hash["couo"] = "ratio_couo"; hash["couu"] = "ratio_couu"; hash["douo"] = "ratio_douo"; hash["douu"] = "ratio_douu"; hash["eouo"] = "ratio_eouo"; hash["eouu"] = "ratio_eouu"; hash["fouo"] = "ratio_fouo"; hash["fouu"] = "ratio_fouu"; hash["parh"] = "ratio_ar"; hash["parc"] = "ratio_ar"; hash["pbrh"] = "ratio_br"; hash["pbrc"] = "ratio_br"; hash["pcrh"] = "ratio_cr"; hash["pcrc"] = "ratio_cr"; hash["pdrh"] = "ratio_dr"; hash["pdrc"] = "ratio_dr"; hash["perh"] = "ratio_er"; hash["perc"] = "ratio_er"; hash["pfrh"] = "ratio_fr"; hash["pfrc"] = "ratio_fr"; hash["paouo"] = "ratio_aouo"; hash["paouu"] = "ratio_aouu"; hash["pbouo"] = "ratio_bouo"; hash["pbouu"] = "ratio_bouu"; hash["pcouo"] = "ratio_couo"; hash["pcouu"] = "ratio_couu"; hash["pdouo"] = "ratio_douo"; hash["pdouu"] = "ratio_douu"; hash["peouo"] = "ratio_eouo"; hash["peouu"] = "ratio_eouu"; hash["pfouo"] = "ratio_fouo"; hash["pfouu"] = "ratio_fouu"; hash["rouho"] = "ratio_rouho"; hash["rouhu"] = "ratio_rouhu"; hash["rouco"] = "ratio_rouco"; hash["roucu"] = "ratio_roucu"; hash["hruho"] = "ratio_hruho"; hash["hruhu"] = "ratio_hruhu"; hash["hruco"] = "ratio_hruco"; hash["hrucu"] = "ratio_hrucu"; hash["ouho"] = "ratio_ouho"; hash["ouhu"] = "ratio_ouhu"; hash["ouco"] = "ratio_ouco"; hash["oucu"] = "ratio_oucu"; hash["houho"] = "ratio_houho"; hash["houhu"] = "ratio_houhu"; hash["houco"] = "ratio_houco"; hash["houcu"] = "ratio_houcu"; hash["w3h"] = "ratio_w3h"; hash["w3c"] = "ratio_w3c"; hash["w3n"] = "ratio_w3n"; //hash["w3h"] = "ratio_w3"; //hash["w3c"] = "ratio_w3"; hash["areh"] = "ratio_are"; hash["arec"] = "ratio_are"; hash["breh"] = "ratio_bre"; hash["brec"] = "ratio_bre"; hash["creh"] = "ratio_cre"; hash["crec"] = "ratio_cre"; hash["dreh"] = "ratio_dre"; hash["drec"] = "ratio_dre"; hash["ereh"] = "ratio_ere"; hash["erec"] = "ratio_ere"; hash["freh"] = "ratio_fre"; hash["frec"] = "ratio_fre"; hash["arouo"] = "ratio_arouo"; hash["arouu"] = "ratio_arouu"; hash["brouo"] = "ratio_brouo"; hash["brouu"] = "ratio_brouu"; hash["crouo"] = "ratio_crouo"; hash["crouu"] = "ratio_crouu"; hash["drouo"] = "ratio_drouo"; hash["drouu"] = "ratio_drouu"; hash["erouo"] = "ratio_erouo"; hash["erouu"] = "ratio_erouu"; hash["frouo"] = "ratio_frouo"; hash["frouu"] = "ratio_frouu"; hash["prh"] = "ratio"; hash["prc"] = "ratio"; hash["pouc"] = "ratio_o"; hash["pouh"] = "ratio_u"; hash["hprh"] = "hratio"; hash["hprc"] = "hratio"; hash["hpouc"] = "ratio_ho"; hash["hpouh"] = "ratio_hu"; hash["pouho"] = "ratio_ouho"; hash["pouhu"] = "ratio_ouhu"; hash["pouco"] = "ratio_ouco"; hash["poucu"] = "ratio_oucu"; hash["hpouho"] = "ratio_houho"; hash["hpouhu"] = "ratio_houhu"; hash["hpouco"] = "ratio_houco"; hash["hpoucu"] = "ratio_houcu"; //Ricky 2018-01-11 PJB-176 CRM-229世界盃新玩法 (14)手機-all bet- 五分鐘系列玩法 沒秀球頭 hash["taruo"] = "ratio_taruo"; hash["taruu"] = "ratio_taruu"; hash["tbruo"] = "ratio_tbruo"; hash["tbruu"] = "ratio_tbruu"; hash["tdruo"] = "ratio_tdruo"; hash["tdruu"] = "ratio_tdruu"; hash["teruo"] = "ratio_teruo"; hash["teruu"] = "ratio_teruu"; return (hash[rtype]!=null)?hash[rtype]:rtype; } function showConcede(wtype,concede){ var showConcedeWtype = new Array( "OU","HOU","ROU","HROU","POU","HPOU","POUH","POUC","HPOUH","HPOUC", "AOU","BOU","COU","DOU","EOU","FOU","AROU","BROU","CROU","DROU","EROU","FROU","PAOU","PBOU","PCOU","PDOU","PEOU","PFOU", "W3" ); if(in_array(wtype.toUpperCase(),showConcedeWtype)){ return concede; } return ""; } //預設不展開的玩法 function getDefaultCloseAry(isUpper){ var ary = new Array("HPD","EO","REO","HEO","HREO","AR","AOU","AM","BR","BOU","BM","CR","COU","CM","DR","DOU","DM","ER", "EOU","EM","FR","FOU","FM","ARE","AROU","ARM","BRE","BROU","BRM","CRE","CROU","CRM","DRE","DROU","DRM","ERE", "EROU","ERM","FRE","FROU","FRM","HRT","HT","BH","WE","RWE","WB","RWB","OUH","OUC","HOUH","HOUC","ROUH","ROUC", "HRUH","HRUC","CS","RCS","F2G","F3G","HG","RHG","MG","RMG","SB","RSB","FG","T1G","RT1G","T3G","RT3G","TK","PA", "PEO","HPEO","PAR","PBR","PCR","PDR","PER","PFR","PAOU","PBOU","PCOU","PDOU","PEOU","PFOU","POUH","POUC","HPOUH","HPOUC", //2016新玩法 "EOH","EOC","HEOH","HEOC","MW","MQ","OG","OT","HTS","MOUA","MOUB","MOUC","MOUD","MPG","MTS","DUA","DUB","DUC","DUD", "DG","DS","OUEA","OUEB","OUEC","OUED","OUPA","OUPB","OUPC","OUPD","OUTA","OUTB","OUTC","OUTD", "ROT","RTS2","RMUA","RMUB","RMUC","RMUD","RMPG","RMTS","RDUA","RDUB","RDUC","RDUD","RDG","RDS", "RUEA","RUEB","RUEC","RUED","RUPA","RUPB","RUPC","RUPD","RUTA","RUTB","RUTC","RUTD", //2016新玩法自命名wtype "MOU","DU","OUE","OUP","OUT","RMOU","RDU","ROUE","ROUP","ROUT"); if(isUpper){ return ary; }else{ var tmp = ary.join(",").toLowerCase(); return tmp.split(","); } } //需轉換賠率的玩法 function getChangeAry(isUpper){ //2017-07-11 CRB-101 足球玩法原雙盤改單盤 (會員三端) Ricky //將 "OG","OT","TS","HTS","ROT","RTS","RTS2" 從 ary 移掉 //Ricky 2018-01-11 PJB-176 CRM-229世界盃新玩法 (8)所有會員端-all bets-雙盤-改盤口沒作用 var ary = new Array("R","OU","HR","HOU","RE","ROU","HRE","HROU","EO","HEO","REO","HREO","AR","BR","CR", "DR","ER","FR","AOU","BOU","COU","DOU","EOU","FOU","ARE","BRE","CRE","DRE","ERE","FRE","AROU","BROU", "CROU","DROU","EROU","FROU","ROUH","ROUC","HRUH","HRUC","OUH","OUC","HOUH","HOUC", "EOH","EOC","HEOH","HEOC", "RNBA","RNBB","RNBC","RNBD","RNBE","RNBF","RNBG","RNBH","RNBI","RNBJ","RNBK","RNBL", "RNBM","RNBN","RNBO","RNC1","RNC2","RNC3","RNC4","RNC5","RNC6","RNC7","RNC8","RNC9","RNCA","RNCB","RNCC", "RNCD","RNCE","RNCF","RNCG","RNCH","RNCI","RNCJ","RNCK","RNCL","RNCM","RNCN","RNCO","RNCP","RNCQ","RNCR", "RNCS","RNCT","RNCU","RSHA","RSHB","RSHC","RSHD","RSHE","RSHF","RSHG","RSHH","RSHI","RSHJ","RSHK","RSHL", "RSHM","RSHN","RSHO","RSCA","RSCB","RSCC","RSCD","RSCE","RSCF","RSCG","RSCH","RSCI","RSCJ","RSCK","RSCL", "RSCM","RSCN","RSCO", "TARU","TBRU","TDRU","TERU"); if(isUpper){ return ary; }else{ var tmp = ary.join(",").toLowerCase(); return tmp.split(","); } } function getTotalWtype_F(R){ var ary = new Array("f01","f02"); var Rary = new Array("rf01","rf02","rf03","rf04","rf05","rf06","rf07","rf08","rf09","rf10" ,"rf11","rf12","rf13","rf14","rf15","rf16","rf17","rf18","rf19","rf20" ,"rf21","rf22","rf23","rf24","rf25","rf26","rf27","rf28","rf29","rf30" ,"rf31","rf32","rf33","rf34","rf35"); return (R=="")?ary:Rary; } //輸贏比較下注單需串隊名 function getTeamWM(rtype){ var _rtype = rtype.toUpperCase(); var hash = new Object(); hash["WMH1"] = "h"; hash["WMH2"] = "h"; hash["WMH3"] = "h"; hash["WMH4"] = "h"; hash["WMHOV"] = "h"; hash["WMC1"] = "c"; hash["WMC2"] = "c"; hash["WMC3"] = "c"; hash["WMC4"] = "c"; hash["WMCOV"] = "c"; hash["HWMH1"] = "h"; hash["HWMH2"] = "h"; hash["HWMH3"] = "h"; hash["HWMH4"] = "h"; hash["HWMC1"] = "c"; hash["HWMC2"] = "c"; hash["HWMC3"] = "c"; hash["HWMC4"] = "c"; hash["RWMH1"] = "h"; hash["RWMH2"] = "h"; hash["RWMH3"] = "h"; hash["RWMH4"] = "h"; hash["RWMHOV"] = "h"; hash["RWMC1"] = "c"; hash["RWMC2"] = "c"; hash["RWMC3"] = "c"; hash["RWMC4"] = "c"; hash["RWMCOV"] = "c"; hash["HRWMH1"] = "h"; hash["HRWMH2"] = "h"; hash["HRWMH3"] = "h"; hash["HRWMH4"] = "h"; hash["HRWMC1"] = "c"; hash["HRWMC2"] = "c"; hash["HRWMC3"] = "c"; hash["HRWMC4"] = "c"; return hash[_rtype]; } function getTeamComplex(rtype){ var _rtype = rtype.toUpperCase(); var hash = new Object(); hash["MOUAHO"] = "h"; return hash[_rtype]; } function getXmlWtype(xmlnode,game,wtype){ var wtypeAry = new Array(); var rtypeAry = new Array(); var wtype; if(wtype == "c") wtypeAry = getTotalWtype_C(""); if(wtype == "n") wtypeAry = getTotalWtype_N(""); if(wtype == "rc") wtypeAry = getTotalWtype_C("R"); if(wtype == "rn") wtypeAry = getTotalWtype_N("R"); for(var i = 0;i < wtypeAry.length;i++){ if(xmlnode.Node(game,"sw_"+wtypeAry[i]) != null && xmlnode.Node(game,"sw_"+wtypeAry[i]).innerHTML != ""){ rtypeAry[0] = wtypeAry[i]+"h"; rtypeAry[1] = wtypeAry[i]+"c"; break; } } return rtypeAry; } //判斷是否賠率已改變 function isChgIor(errorCode){ var ary = new Array("1X006","1X016"); //賠率改變,無法進行交易 return in_array(errorCode, ary); } //判斷是否球頭已改變 function isChgConcede(errorCode){ var ary = new Array("1X005","1X015"); //讓分值改變,無法進行交易 return in_array(errorCode, ary); } function isBetTryAgain(errorCode){ var ary = new Array("0X001","0X002"); //下注server回try again return in_array(errorCode, ary); } function htmlDecodeByRegExp(str){ var s = ""; if(str.toString().length == 0) return ""; s = str.toString().replace(/&/g,"&"); s = s.replace(/</g,"<"); s = s.replace(/>/g,">"); s = s.replace(/ /g," "); s = s.replace(/'/g,"\'"); s = s.replace(/"/g,"\""); return s; } function showTxt(txt){ if(txt+""=="undefined"||txt+""=="null"||txt+""=="NaN") return ""; return htmlDecodeByRegExp(txt); } function showLS(code){ if(_top["LS"][code]+""=="undefined") return code; return _top["LS"][code]; } function creatMsgBox(exitFun, msg){ // 2017-10-09 控制背景畫面不能滾動 var sb = document.body.scrollTop; document.body.setAttribute("style", "height:100%;width:100%;position:fixed; overflow-y:hidden;top:-"+sb+"px"); url = "/tpl/"+_top["userData"].langx+"/msgbox.html"; loadHtml_loading(url, true, function(){ var obj = dataClass["msgbox"]; if(obj!=null){ obj.setMsg(showLS(msg)); obj.setVisible(true); obj.setExitFun(function(){ // 2017-10-09 關閉後畫面需正常滾動 document.body.setAttribute("style", "height:100%;"); window.scrollTo(0,sb); obj.setMsg(""); obj.setVisible(false); if(exitFun!=null) exitFun(); }); } }); } // 2017-0206-johnson-34.(需求)手機-更改密碼之後,不要登出會員(CRM-201) function urlGoToHome() { var url ="/tpl/"+_top["userData"].langx+"/home.html"; loadHtml_loading(url, true ,_self.loadHomeComplete); } // 2016-11-22 Roy function MsgShow(exitFunc, msg, back){ var obj = dataClass["sys_msg"]; obj.setMsg(showLS(msg)); obj.setVisible(true); setLoadingVisible(false); // 2017-10-09 控制背景畫面不能滾動 var sb = document.body.scrollTop; document.body.setAttribute("style", "height:100%;width:100%;position:fixed; overflow-y:hidden;top:-"+sb+"px"); obj.setExitFun(function(){ if(back!=null){ if(back){ exitFunc(); } }else{ obj.setMsg(""); obj.setVisible(false); if(exitFunc!=null) exitFunc(); } // 2017-10-09 關閉後畫面需正常滾動 document.body.setAttribute("style", "height:100%;"); window.scrollTo(0,sb); }); } function initMsgShow(afterFunc){ url = "/tpl/"+_top["userData"].langx+"/sys_msg.html"; var paramHash = new Object(); paramHash["body"] = "sys_show"; loadHtml_loading(url, false, function(){ _top["initMsgShow"] = true; var obj = dataClass["sys_msg"]; if(obj!=null){ obj.setMsg(showLS("")); obj.setVisible(false); if(afterFunc!=null) afterFunc(); } },paramHash); } // 2017-06-16 PMO-51 危險球通告 function noticeShow(){ url = "/tpl/"+_top["userData"].langx+"/notice.html"; var paramHash = new Object(); paramHash["body"] = "notice_show"; loadHtml_loading(url, false, function(){ var obj = dataClass["notice"]; if(obj!=null){ obj.setVisible(true); setLoadingVisible(false); } },paramHash); } // 2017-10-03 CRM-236加強版手機 function menuShow(afterFunc){ url = "/tpl/"+_top["userData"].langx+"/menu.html"; var paramHash = new Object(); paramHash["body"] = "menu_show"; loadHtml_loading(url, false, function(){ var obj = dataClass["menu"]; _top["initMenuShow"] = true; if(obj!=null){ obj.setVisible(); } if(afterFunc!=null) afterFunc(); } ,paramHash); } //for FT,OP function chgShowName_M(_name, _gtype){ var gtype = _gtype.toUpperCase(); var ary = new Array("showRtype_m","showRtype_hm","showRtype_rm","showRtype_hrm"); if(in_array(_name, ary)){ if(gtype=="FT"||gtype=="OP"){ return _name+"_FT"; } } return _name; } function clearTopTimer(){ if(_!=null){ if(_.timerObj!=null){ for(var keys in _.timerObj){ try{ //console.log(keys,"clearTopTimer"); _.timerObj[keys].clearObj(); _.timerObj[keys]=null; }catch(e){ console.error("["+keys+"]"+e.toString()); } } } } return true; } function lockBodyScroll(isLock){ //document.body.style.overflowY=(isLock)?"hidden":""; } function changePDwtype(wtype, isLower){ wtype = wtype.toUpperCase(); var hash = new Object(); hash["RPDH"] = "RPD"; hash["RPDC"] = "RPD"; hash["PDH"] = "PD"; hash["PDC"] = "PD"; var ret = (hash[wtype]!=null)?hash[wtype]:wtype; return (isLower)?ret.toLowerCase():ret.toUpperCase(); } function util_setRetimeFormat(retime, t){ if(retime=="") return ""; var ret = retime+""; ret = ret.replace(/\'/g,""); if(t){ ret+="'"; } return ret; } function util_TN_AdvToA(score){ var ret = score+""; if(ret=="Adv") ret="A"; return ret; } //init gtype option function util_initGtypeOption(targetObj, dataAry){ if(targetObj==null) return; targetObj.options.length = 0; for(var j=0; j 0){ getChildAry(obj.children, aryStr, newAry, attribute, isOnly); } } return newAry; } function mergeArray(){ var newArray = new Object(); for(i=0; i< arguments.length; i++){ for(var key in arguments[i]){ newArray[key] = arguments[i][key]; } } return newArray; } function hideTV(){ return (_top['userData'].showKR=="Y")?true:false; } //Ricky 2017-10-16 CRM-236 盤面的OU 大小顏色要不同 (Rose) function splitOU(ratio){ if(ratio+""=="undefined"||ratio+""=="null"||ratio+""=="NaN") return ""; var OU_blank = ratio.indexOf(" "); var OU_txt = ratio.substr(0,OU_blank); // 大或小 var OU_txt2 = ratio.substr(OU_blank,ratio.length-1); // 球頭 var OU_str = ''+OU_txt+''+OU_txt2; return OU_str; } //Ricky 2017-10-23 CRM-236 關盤或賠率0原本秀 " - " 改成鎖頭圖示 function lockIor(ior,sw) { var ret = "close_thegame"; if(""+ior=="undefined"){ return ret; } if(""+sw=="N"){ return ret; } if(ior*1==0){ return ret; } else { return ""; } } // 2017-11-02 下注完成單需讀server回傳之數值 function getConcedeStr(wtype,strong,spread,isChangeConcede){ var obj = new Object(); if (checkWtypeIsR(wtype) && wtype!="W3"){ if(strong=="H"){ obj["bet_finish_con"] = showTxt(getSWConcedeMore(spread,null,isChangeConcede)); obj["bet_finish_con_c"]=""; }else{ obj["bet_finish_con"]=""; obj["bet_finish_con_c"] = showTxt(getSWConcedeMore(spread,null,isChangeConcede)); } }else{ obj["bet_finish_con"]=""; obj["bet_finish_con_c"]=""; } return obj; } // 2017-11-02 判斷wtype是否為滾球 function isRBWtype(wtype){ var wtypeRB = new Array("RE","ROU","HRE","HROU","RM","HRM", "ARE","BRE","CRE","DRE","ERE","FRE", "AROU","BROU","CROU","DROU","EROU","FROU", "ARM","BRM","CRM","DRM","ERM","FRM", "ROUH","ROUC","HRUH","HRUC", "RPD","RPD3","RPD5","RPD7","HRPD", "RT","HRT","REO","HREO","RF","RHG","RMG", "ARG","BRG","CRG","DRG","ERG","FRG","GRG","HRG","IRG","JRG", "RWM","RDC","RCS","RWN","RTS","RWB","RWE","RSB","RT1G","RT3G", "RMUA","RMUB","RMUC","RMUD","RMPG","RMTS", "RDUA","RDUB","RDUC","RDUD","RDG","RDS", "RUEA","RUEB","RUEC","RUED", "RUPA","RUPB","RUPC","RUPD", "RUTA","RUTB","RUTC","RUTD", "ROT","RTS","RTS2", "RNC1","RNC2","RNC3","RNC4","RNC5","RNC6","RNC7","RNC8","RNC9","RNCA", "RNCB","RNCC","RNCD","RNCE","RNCF","RNCG","RNCH","RNCI","RNCJ","RNCK", "RNCL","RNCM","RNCN","RNCO","RNCP","RNCQ","RNCR","RNCS","RNCT","RNCU", "RNBA","RNBB","RNBC","RNBD","RNBE","RNBF","RNBG","RNBH","RNBI","RNBJ", "RNBK","RNBL","RNBM","RNBN","RNBO", "RSHA","RSHB","RSHC","RSHD","RSHE","RSHF","RSHG","RSHH","RSHI","RSHJ", "RSHK","RSHL","RSHM","RSHN","RSHO", "RSCA","RSCB","RSCC","RSCD","RSCE","RSCF","RSCG","RSCH","RSCI","RSCJ", "RSCK","RSCL","RSCM","RSCN","RSCO", "HRWM", "RF01","RF02","RF03","RF04","RF05","RF06","RF07","RF08","RF09","RF10", "RF11","RF12","RF13","RF14","RF15","RF16","RF17","RF18","RF19","RF20", "RF21","RF22","RF23","RF24","RF25","RF26","RF27","RF28","RF29","RF30", "RF31","RF32","RF33","RF34","RF35", "TARU","TBRU","TDRU","TERU", "RPS","RTW","RPF", "RPXA","RPXB","RPXC","RPXD","RPXE","RPXF","RPXG","RPXH","RPXI","RPXJ","RPXK","RPXL","RPXM","RPXN","RPXO"); if(in_array(wtype.toUpperCase(),wtypeRB)) return true; return false; } function getWtypeName(gid,showtype,gtype,wtype,rtype,msStr,team_h,team_c,imp,ptype){ var subtypestr = ""; var menutype = ""; var showtypeStr = ""; var showRtype = ""; var tmp_wtype = ""; var showPlayType = ""; var tHash = new Object(); tHash["ODD"] = "EOO"; tHash["EVEN"] = "EOE"; tHash["RODD"] = "REOO"; tHash["REVEN"] = "REOE"; tHash["HREVEN"] = "HREOE"; tHash["HRODD"] = "HREOO"; var _ary = new Array("ouh","ouc","houh","houc","rouh","rouc","hruh","hruc"); var pd_ary = new Array("pd","rpd","pdh","pdc"); var REgtype = new Array("BM","TT","TN","VB"); // 有局數盤 var specialBS = new Array("HM","OT","HRM","ROT"); try{ team_h = team_h.split("-")[0]; team_c = team_c.split("-")[0]; // 取得節數語系 if(gtype=="FT"){ subtypestr = _top["LS"]["showRtype"]; if(checkWtypeIsHalf(wtype)){ subtypestr = _top["LS"]["showRtype_h"]; } }else{ var ms = msStr.split('_')[1]; var ms_str = showLS(gtype+"_game_"+ms+"_set"); if(ms_str!=""){ if(ms_str == gtype+"_game_"+ms+"_set"){ ms_str = ""; } subtypestr = ms_str; } var htype="_HR_HRE_HPD_HM_HRM_HRPD_HOU_HROU_HWM_HRWM_HOUH_HOUC_HRUH_HRUC_HT_HEO_HRT_HREO_HPR_HPOU_HPEO_HPOUH_HPOUC_"; if (htype.indexOf("_"+wtype+"_") >= 0){ if (gtype.toUpperCase()=="BS"){ subtypestr = _top["LS"]["showRtype_h_s"]; }else{ subtypestr = _top["LS"]["showRtype_h"]; } } } //取得玩法語系 if (wtype=="T"){ var _ary = new Array("EOO","EOE","HEOO","HEOE","EOH","EOC","HEOH","HEOC","ODD","RODD","EVEN","REVEN"); if(in_array(rtype, _ary)){ wtype = "eo"; } showRtype = wtype; rtype = tHash[rtype]; }else if(wtype=="HT"){ var _ary = new Array("HEVEN","HODD"); if(in_array(rtype, _ary)){ wtype = "heo"; } showRtype = wtype; rtype = tHash[rtype]; }else if(wtype=="RT"){ var _ary = new Array("REVEN","RODD"); if(in_array(rtype, _ary)){ wtype = "reo"; } showRtype = wtype; rtype = tHash[rtype]; }else if(wtype=="HRT"){ var _ary = new Array("HREVEN","HRODD"); if(in_array(rtype, _ary)){ wtype = "hreo"; } showRtype = wtype; rtype = tHash[rtype]; }else if (wtype=="SP" || checkWtypeisSP(wtype)){ showRtype = rtype.substr(0,rtype.length-1); }else{ showRtype = wtype; } var tmp_wtype = showRtype.toLowerCase(); showPlayType = _top["LS"][chgShowName_M("showRtype_"+showRtype.toLowerCase(),gtype)]; if(in_array(tmp_wtype, _ary) && gtype=="FT"){ var t = tmp_wtype.substr(tmp_wtype.length-1,1); if(t.toUpperCase()=="H") showPlayType = showPlayType.replace("*TEAM_H*",team_h); else showPlayType = showPlayType.replace("*TEAM_C*",team_c); } if(wtype !="FS"){ // 網 羽 桌 排 分數盤 if(in_array(gtype,REgtype)){ var tmp_i = (typeof ms=="undefined")?"0":"1"; _type = util_wtypeConverToR(wtype,true); showPlayType = showLS("showRtype_"+_type+"_"+tmp_i+"_"+gtype); if(gtype=="TN" && _type == "r" && tmp_i == "1" && subtypestr=="") showPlayType = _top["LS"]["showRtype_"+_type+"_main_TN"]; } // 台球 讓局 showRtype_r_SK if (gtype=="SK"){ _type = util_wtypeConverToR(wtype,true); showPlayType = showLS("showRtype_"+_type+"_"+gtype); } // 棒球 讓分 showRtype_r_bs if (gtype=="BS" && (checkWtypeIsOU(wtype) || checkWtypeIsEO(wtype) || in_array(wtype,specialBS)) ){ _type = util_wtypeConverToR(wtype,true); showPlayType = showLS("showRtype_"+_type+"_"+gtype.toLowerCase()); } // 籃 讓球 if (gtype=="BK" && checkWtypeIsR(wtype)){ if(showRtype.indexOf("P")!=-1) showRtype = showRtype.replace("P",""); showPlayType = _top["LS"]["showRtype_"+showRtype.toLowerCase()+"_s"]; } // 籃球 除了讓球 其他玩法皆需要 "總分: xxx" if (gtype=="BK" && !(checkWtypeIsR(wtype))){ showPlayType = _top["LS"]["showRtype_"+showRtype.toLowerCase()+"_BK"]; } // 籃球 最後一位數 if(in_array(tmp_wtype, pd_ary) && gtype=="BK"){ showPlayType = _top["LS"]["showRtype_"+tmp_wtype+"_BK"]; var _rtype = rtype.toLowerCase(); var t = _rtype.substr(_rtype.length-2,1); if(t.toUpperCase()=="H") showPlayType = showPlayType.replace("*TEAM*",team_h); else showPlayType = showPlayType.replace("*TEAM*",team_c); } } }catch(e){} showPlayType = showPlayType.replace(/\*TEAM_H\*/g,team_h); showPlayType = showPlayType.replace(/\*TEAM_C\*/g,team_c); showtypeStr = (showtype.toLowerCase()!="ft")?_top["LS"]["showtype_"+showtype]:""; // 2018-01-04 513.台球-交易單/交易完成單-斯諾克應該秀”斯諾克/台球“ var tilte_gtype = ""; if(gtype=="BK"){ tilte_gtype = showLS("title_"+gtype.toUpperCase()).split("/")[0]; }else{ tilte_gtype = showLS("title_"+gtype.toUpperCase()); } if(subtypestr==""){ menutype = tilte_gtype+" "+showTxt(showtypeStr)+" "+showTxt(showPlayType)+" "+showTxt(subtypestr); }else{ menutype = tilte_gtype+" "+showTxt(showtypeStr)+" "+showTxt(showPlayType)+" - "+showTxt(subtypestr); } var imp ,ptype, tmp_menutype = ""; if(gtype=="FT"){ tmp_menutype = menutype; if( tmp_menutype.indexOf(ptype) != -1 ) tmp_menutype = tmp_menutype.replace(ptype,""); ptype = ptype.replace("-",""); if( imp == "Y" ){ if( showtype =="RB" || showtype =="FU" ){ var tmp = tmp_menutype.split(" "); tmp_menutype = tmp_menutype.replace(tmp[1],tmp[1]+" "+ptype+" -"); }else{ var tmp = tmp_menutype.split(" "); tmp_menutype = tmp_menutype.replace(tmp[0],tmp[0]+" "+ptype+" -"); } } }else{ tmp_menutype = menutype; } return tmp_menutype; } function switchTeamName(wtype,rtype){ var rtypeHash = new Object(); rtypeHash["T_EVEN"] = "eoe"; rtypeHash["T_ODD"] = "eoo"; rtypeHash["HT_HEVEN"] = "heoe"; rtypeHash["HT_HODD"] = "heoo"; rtypeHash["RT_REVEN"] = "reoe"; rtypeHash["RT_RODD"] = "reoo"; rtypeHash["HRT_HREVEN"] = "hreoe"; rtypeHash["HRT_HRODD"] = "hreoo"; rtypeHash["T_0~1"] = "t01"; rtypeHash["T_2~3"] = "t23"; rtypeHash["T_4~6"] = "t46"; rtypeHash["RT_R0~1"] = "rt01"; rtypeHash["RT_R2~3"] = "rt23"; rtypeHash["RT_R4~6"] = "rt46"; return rtypeHash[wtype.toUpperCase()+"_"+rtype.toUpperCase()]; } function changeRtypetoWtypeSP(rtype){ var ary = new Array("PG","OS","ST","CN","CD","RC","YC","GA"); for(var i = 0; i< ary.length; i++){ if(rtype.indexOf(ary[i])!=-1) return ary[i]; } } function checkWtypeisSP(wtype){ var ary = new Array("PG","OS","ST","CN","CD","RC","YC","GA"); return in_array(wtype,ary); } function countLoad(){ _top["countHash"]["now"]++; if(_top["countHash"]["now"] >= _top["countHash"]["total"] || _top["initLoad"]){ //menu跟msg只會載第一次 loadFinish(); } } function loadFinish(){ setLoadingVisible(false); _top["initLoad"] = true; } //Ricky 2017-12-04 轉換單雙的wtype function chgTwtype(wtype,rtype) { var tmp_wtype = wtype.toUpperCase(); var tmp_rtype = rtype.toUpperCase(); if (tmp_wtype=="T"){ var _ary = Array("PEOO","PEOE","HPEOO","HPEOE","PEOH","PEOC","HPEOH","HPEOC","PODD","PEVEN","PO","PE"); //過關 var _ary2 = Array("EOO","EOE","HEOO","HEOE","EOH","EOC","HEOH","HEOC","ODD","RODD","EVEN","REVEN"); if(in_array(tmp_rtype, _ary)){ tmp_wtype = "PEO"; } else if(in_array(tmp_rtype, _ary2)){ tmp_wtype = "EO"; } }else if(tmp_wtype=="HT"){ _ary = Array("HPEVEN","HPODD","HPEOO","HPEOE","HPO","HPE"); //上半過關 _ary2 = Array("HEVEN","HODD","HEOO","HEOE"); //上半 if(in_array(tmp_rtype, _ary)){ tmp_wtype = "HPEO"; } else if(in_array(tmp_rtype, _ary2)){ tmp_wtype = "HEO"; } }else if(tmp_wtype=="RT"){ _ary = Array("REVEN","RODD","REOO","REOE"); //滾球 if(in_array(tmp_rtype, _ary)){ tmp_wtype = "REO"; } }else if(tmp_wtype=="HRT"){ _ary = Array("HREVEN","HRODD","HREOO","HREOE"); //上半滾球 if(in_array(tmp_rtype, _ary)){ tmp_wtype = "HREO"; } } return tmp_wtype; } // 2018-01-26 crm-244 手機&app會員端四位密碼登入 - 三端(修改密碼後將四位密碼DB值刪除) function del4pwd(mid){ // 2018-02-09 32.輸入兩次密碼錯誤兩次後,使用正常登入在重登沒有帶回四碼登入頁面 - post參數中,MIS避免危險操作,封鎖url中含有delete,modify...字眼 _top["memSet"].passcode = "[del1]"; var urlHash = new Array(); urlHash["mid"] = mid; urlHash["action"] = "SET"; urlHash["langx"] = _top["userData"].langx; urlHash["value"] = JSON.stringify(_top["memSet"]); var getHTML = new HttpRequest(); getHTML.addEventListener("LoadComplete", function(){ // removeLocalStorageItem("passcode"); // removeLocalStorageItem("username"); // 2018-02-06 因為app直接由PHP導入頁面,而PHP無法直接存取localStorage,故改成使用Cookie(時效30天) _top["CookieManager"].del("PID"); _top["CookieManager"].del("UID"); }); getHTML.loadURL("app/member/memSet.php","POST", convertParam(urlHash)); }function loading(){ var _self = this; _self.classname = "loading"; var _mc = new Object(); var pos = 0; _self.init=function(showObj, imgObj){ //_mc["loadingObj"] = document.getElementById("loading"); //_mc["loadANI"] = document.getElementById("loadingANI"); _mc["loadingObj"] = showObj; _mc["loadANI"] = imgObj; //_mc["imgs"] = _mc["loadANI"].getElementsByTagName("img"); _mc["imgs"] = new Object(); _mc["imgs"].length = _mc["loadANI"].children.length; for(i=0;i<_mc["loadANI"].children.length;i++){ //alert(_mc["loadANI"].children[i].outerHTML); _mc["imgs"][i] = _mc["loadANI"].children[i]; _mc["imgs"][i].style.display="none"; } } //start _self.startLoading=function(){ if (_mc["loadingObj"]==null) return; pos = 0; _self.setVisible(true); _self.run(); } _self.run=function(){ if (_mc["loadingObj"]==null) return; if (_mc["loadANI"]==null) return; if (!_self.isLoading()) return; /* _mc["imgs"][pos].style.display="none"; pos++; if (pos>=_mc["imgs"].length) pos=0; _mc["imgs"][pos].style.display=""; */ for(i=0;i<_mc["imgs"].length;i++){ _mc["imgs"][i].style.display="none"; } _mc["imgs"][pos++].style.display=""; if (pos>=_mc["imgs"].length) pos=0; setTimeout(function(){_self.run();}, 100); } //stop _self.stopLoading=function(){ if(_mc["loadingObj"]==null) return; _self.setVisible(false); } //visible _self.setVisible=function(isShow){ if(_mc["loadingObj"]==null) return; /* if(_mc["loadingObj"].id=="loading_league"){ if(!isShow){ setTimeout(function(){_mc["loadingObj"].style.display="none";}, 2000); }else{ _mc["loadingObj"].style.display = (isShow)?"":"none"; } return; } //*/ _mc["loadingObj"].style.display = (isShow)?"":"none"; } _self.isLoading=function(){ if(_mc["loadingObj"]==null) return false; return (_mc["loadingObj"].style.display=="")? true:false; } _self.showLoading=function(isShow){ if(isShow){ //if (_self.isLoading()) return; _self.startLoading(); }else{ _self.stopLoading(); } } } //extends //dataClass["loading"] = extendsClass(_top["MovieClipClass"], loading); //dataClass["loading"].init(); function switchShortLangx(langx, isUpper){ var _langx = langx.toLowerCase(); var hash = new Object(); hash["zh-tw"] = "c"; hash["zh-cn"] = "g"; hash["en-us"] = "e"; // 2017-05-17 PMO-52 韓文手機會員端 hash["ko-kr"] = "e"; hash["jis-jp"] = "j"; var ret = (hash[_langx]!=null)?hash[_langx]:langx; return (isUpper)?ret.toUpperCase():ret.toLowerCase(); } function switchShowType(type, isUpper){ var _type = type.toLowerCase(); var hash = new Object(); hash["fu"] = "early"; hash["ft"] = "today"; hash["rb"] = "live"; hash["early"] = "fu"; hash["today"] = "ft"; hash["live"] = "rb"; var ret = (hash[_type]!=null)?hash[_type]:type; return (isUpper)?ret.toUpperCase():ret.toLowerCase(); }function HttpRequest(){ var self=this; var req; var eventHandler=new Array(); var parentClass; self.init=function(){ self.addEventListener("LoadComplete",self.cmd_proc); //self.removeEventListener("LoadComplete"); //alert("onload"); } self.help=function(){ var str=""; str+="EventName:LoadComplete Method:function(html)\n"; str+="Method:loadURL(url,post/get,pamam)\n"; return str; } self.setParentclass=function(parentclass){ parentClass=parentclass; //util=parentClass.util; } self.getThis=function(varible){ return eval(varible); } self.test=function(){ alert("test"); } self.loadURL=function(url,method,params) { req = false; // branch for native XMLHttpRequest object if(window.XMLHttpRequest && !(window.ActiveXObject)) { try{ req = new XMLHttpRequest(); }catch(e){ req = false; } // branch for IE/Windows ActiveX version }else if(window.ActiveXObject){ try{ req = new ActiveXObject("Msxml2.XMLHTTP"); }catch(e){ try{ req = new ActiveXObject("Microsoft.XMLHTTP"); }catch(e){ req = false; } } } if(req){ req.onreadystatechange = self.processReqChange; if(method==undefined) method="POST"; if(method.toUpperCase()=="POST"){ req.open("POST", url, true); //req.setRequestHeader("Content-Type","text/xml;charset=utf8"); // xmlHttp.setRequestHeader("Content-Type","text/xml;charset="+charset); // params = "lorem=ipsum&name=binny"; req.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); //php:·í½s½X¤£¬°utf-8®É­n¥[¦bphp header('Content-Type:text/html;charset=big5'); // req.setRequestHeader("Content-length", params.length); // if (params!="" && params!=undefined) req.send(params); }else{ req.open("GET", url+"?"+params, true); req.send(""); } } } self.processReqChange=function() { // only if req shows "loaded" // alert(req.status); if(req.readyState == 4){ // only if "OK" //alert("req.status="+req.status); if(req.status == 200){ // ...processing statements go here... //self.cmd_proc(req.responseText); self.eventhandler("LoadComplete",req.responseText); //self.eventhandler("LoadComplete",req.responseXML); }else{ //alert("There was a problem retrieving the XML data:\n" +req.statusText); self.eventhandler("onError",req.responseText); } } } self.addEventListener=function(eventname,eventFunction){ eventHandler[eventname]=eventFunction; } self.removeEventListener=function(eventname){ EventHandler[eventname]=undefined; } self.eventhandler=function(eventname,param){ if(eventHandler[eventname]!=undefined){ eventHandler[eventname](param); } } self.cmd_proc=function(html){ alert(html); //return html; } //self.addEventLisition("LoadComplete",self.cmd_proc); self.init(); } function HttpRequestRetry(){ var self=this; var req; var eventHandler=new Array(); var parentClass; var urlData = new Array(); self.init=function(){ self.addEventListener("LoadComplete",self.cmd_proc); //self.removeEventListener("LoadComplete"); //alert("onload"); } self.help=function(){ var str=""; str+="EventName:LoadComplete Method:function(html)\n"; str+="Method:loadURL(url,post/get,pamam)\n"; return str; } self.setParentclass=function(parentclass){ parentClass=parentclass; //util=parentClass.util; } self.getThis=function(varible){ return eval(varible); } self.test=function(){ alert("test"); } self.loadURL=function(url,method,params) { urlData["url"] = url; urlData["method"] = method; urlData["params"] = params; req = false; // branch for native XMLHttpRequest object if(window.XMLHttpRequest && !(window.ActiveXObject)) { try{ req = new XMLHttpRequest(); }catch(e){ req = false; } // branch for IE/Windows ActiveX version }else if(window.ActiveXObject){ try{ req = new ActiveXObject("Msxml2.XMLHTTP"); }catch(e){ try{ req = new ActiveXObject("Microsoft.XMLHTTP"); }catch(e){ req = false; } } } if(req){ req.onreadystatechange = self.processReqChange; if(method==undefined) method="POST"; if(method.toUpperCase()=="POST"){ req.open("POST", url, true); //req.setRequestHeader("Content-Type","text/xml;charset=utf8"); // xmlHttp.setRequestHeader("Content-Type","text/xml;charset="+charset); // params = "lorem=ipsum&name=binny"; req.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); //php:·í½s½X¤£¬°utf-8®É­n¥[¦bphp header('Content-Type:text/html;charset=big5'); // req.setRequestHeader("Content-length", params.length); // if (params!="" && params!=undefined) req.send(params); }else{ req.open("GET", url+"?"+params, true); req.send(""); } } } self.processReqChange=function() { // only if req shows "loaded" // alert(req.status); if(req.readyState == 4){ // only if "OK" //alert("req.status="+req.status); if(req.status == 200){ // ...processing statements go here... //self.cmd_proc(req.responseText); self.eventhandler("LoadComplete",req.responseText); //self.eventhandler("LoadComplete",req.responseXML); _top["retry_count"] = 0; }else{ //alert("There was a problem retrieving the XML data:\n" +req.statusText); _top["retry_count"]++; if(_top["retry_count"]<_top["retry_max"]){ // 2017-11-29 CRM-236加強版手機 - retry防護機制 try{ MsgShow(self.reTryFunc,_top["LS"]["connect_retry"]); }catch(e){ self.reTryFunc(); } }else{ // 2017-11-29 CRM-236加強版手機 - retry防護機制 try{ MsgShow(self.returnHome,_top["LS"]["connect_fail"]); }catch(e){ self.returnHome(); } } } } } self.reTryFunc=function(){ self.loadURL(urlData["url"],urlData["method"],urlData["params"]); } self.returnHome=function(){ window.location.href = "http://"+document.domain; } self.addEventListener=function(eventname,eventFunction){ eventHandler[eventname]=eventFunction; } self.removeEventListener=function(eventname){ EventHandler[eventname]=undefined; } self.eventhandler=function(eventname,param){ if(eventHandler[eventname]!=undefined){ eventHandler[eventname](param); } } self.cmd_proc=function(html){ alert(html); //return html; } //self.addEventLisition("LoadComplete",self.cmd_proc); self.init(); } function getTimestamp(){ return new Date().getTime(); }function order_bet(){ var _self = this; var parentClass; var _mc = new Object(); var moneyValue = Array(); var tmpGold = ""; var errorCode = ""; var maxBet = ""; var minBet = ""; var betting = false; var firstTouch = false; var touchStartPos = 0; var touch = null; // 第一個接觸點 var touchPoint = 1; //移動多少pixel數才觸發事件 moneyValue["RMB"] = Array("100","200","500","1000","2500","5000"); moneyValue["HKD"] = Array("130","260","650","1300","3250","6500"); moneyValue["USD"] = Array("20","40","100","150","500","1000"); moneyValue["MYR"] = Array("60","120","300","600","1500","3000"); moneyValue["SGD"] = Array("30","60","150","300","750","1500"); moneyValue["THB"] = Array("600","1200","3000","6000","15000","30000"); moneyValue["GBP"] = Array("20","40","100","200","500","1000"); moneyValue["JPY"] = Array("2000","4000","10000","20000","50000","100000"); moneyValue["EUR"] = Array("20","40","100","200","500","1000"); moneyValue["IND"] = Array("200000","400000","1000000","2000000","5000000","10000000"); var set_show = true; var num_show = true; var ignoreBtn = new Array("num_0","num_1","num_2","num_3","num_4","num_5","num_6","num_7","num_8","num_9","num_x","num_no", "add_1","add_2","add_3","add_4","clear_btn","bet_gold_tt","bet_gold"); _self.classname = "order_bet.js"; _self.paramHash = new Object(); _self.init=function(){ _mc["div_bet"] = document.getElementById("div_bet"); _mc["div_content"] = document.getElementById("div_content"); _mc["div_calc"] = document.getElementById("div_calc"); _mc["div_set"] = document.getElementById("div_set"); _mc["div_bet_title"] = document.getElementById("div_bet_title"); _mc["bet_orderTitle"] = document.getElementById("bet_orderTitle"); _mc["div_betBtn"] = document.getElementById("div_betBtn"); _mc["bet_teamDiv"] = document.getElementById("bet_teamDiv"); _mc["set_mask"] = document.getElementById("set_mask"); _mc["set_btn"] = document.getElementById("set_btn"); _mc["set_cancel"] = document.getElementById("set_cancel"); _mc["set_save"] = document.getElementById("set_save"); _mc["order_bet"] = document.getElementById("order_bet"); _mc["minbet"] = document.getElementById("minbet"); _mc["maxbet"] = document.getElementById("maxbet"); _mc["clear_btn"] = document.getElementById("clear_btn"); _mc["clear_order"] = document.getElementById("clear_order"); _mc["bet_credit"] = document.getElementById("bet_credit"); _mc["bet_menutype"] = document.getElementById("bet_menutype"); _mc["bet_score"] = document.getElementById("bet_score"); _mc["bet_league"] = document.getElementById("bet_league"); _mc["bet_teamname"] = document.getElementById("bet_teamname"); _mc["bet_team_h"] = document.getElementById("bet_team_h"); _mc["bet_team_c"] = document.getElementById("bet_team_c"); _mc["bet_con"] = document.getElementById("bet_con"); _mc["bet_con_c"] =document.getElementById("bet_con_c"); _mc["bet_chose_team"] = document.getElementById("bet_chose_team"); _mc["bet_chose_con"] = document.getElementById("bet_chose_con"); _mc["bet_ior"] = document.getElementById("bet_ior"); _mc["bet_gold"] = document.getElementById("bet_gold"); _mc["bet_gold_tt"] = document.getElementById("bet_gold_tt"); _mc["bet_win_gold"] = document.getElementById("bet_win_gold"); _mc["bet_gold2_tt"] = document.getElementById("bet_gold2_tt"); _mc["div_err"] = document.getElementById("div_err"); _mc["err_msg"] = document.getElementById("err_msg"); _mc["bet_better_odds"] = document.getElementById("bet_better_odds"); _mc["div_bet_info"] = document.getElementById("div_bet_info"); _mc["div_bet_info2"] = document.getElementById("div_bet_info2"); _mc["loading_bet"] = document.getElementById("loading_bet"); _mc["parlay_order_show"] = document.getElementById("parlay_order_show"); _mc["parlay_finish_show"] = document.getElementById("parlay_finish_show"); _mc["bet_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(_top["userData"].maxcredit))); if(_mc["bet_gold"].innerHTML=="") _mc["bet_gold_tt"].style.display = ""; _self.addEventListener("MouseEvent.CLICK", dataClass["menu"].showBet, _mc["div_bet_title"]); _self.addEventListener("MouseEvent.CLICK", _self.showSet, _mc["set_btn"]); _self.addEventListener("MouseEvent.CLICK", _self.showSet, _mc["set_cancel"]); _self.addEventListener("MouseEvent.CLICK", _self.saveBetterOdds, _mc["set_save"]); _self.addEventListener("MouseEvent.CLICK", _self.setBetNum, _mc["bet_gold"]); _self.addEventListener("MouseEvent.CLICK", _self.setBetNum, _mc["bet_gold_tt"]); _self.addEventListener("MouseEvent.CLICK", _self.clearNum, _mc["clear_btn"]); _self.addEventListener("MouseEvent.CLICK", _self.clearBet, _mc["clear_order"]); _self.addEventListener("MouseEvent.CLICK", _self.betClick, _mc["div_bet"]); _mc["div_content"].addEventListener('touchstart', _self.touchstart); _mc["div_content"].addEventListener('touchend', _self.touchend); _mc["div_content"].addEventListener('touchmove', _self.touchmove); var _min = _mc["minbet"].innerHTML; var _max = _mc["maxbet"].innerHTML; var obj = { "win": window, "dom": document, "targetObj": _mc["bet_gold"], "screen": _mc["div_calc"], "limitArray":moneyValue, "limitCount":4, "currency": _top["userData"].currency, "minbet":_min, "maxbet":_max}; if(_top["calcObj"]==null){ _top["calcObj"] = new _self.calc(obj); _top["calcObj"].init(); } dataClass["ft_bet"] = extendsClass(_top["MovieClipClass"], ft_bet); dataClass["ft_bet"].init(); dataClass["other_bet"] = extendsClass(_top["MovieClipClass"], other_bet); dataClass["other_bet"].init(); } _self.initOrderBet=function(){ if(in_array("loadingMode",_mc["div_betBtn"].classList) && _top["betting"]){ console.log("initOrderBet"); _top["betting"] = false; _mc["div_betBtn"].classList.remove("loadingMode"); _mc["div_betBtn"].classList.add("bettingMode"); _mc["order_bet"].style.display=""; _self.addEventListener("MouseEvent.CLICK", _self.setBetNum, _mc["bet_gold"]); _self.addEventListener("MouseEvent.CLICK", _self.setBetNum, _mc["bet_gold_tt"]); _self.addEventListener("MouseEvent.CLICK", _self.clearNum, _mc["clear_btn"]); _self.addEventListener("MouseEvent.CLICK", _self.showSet, _mc["set_btn"]); _self.addEventListener("MouseEvent.CLICK", _self.clearBet, _mc["clear_order"]); _self.addEventListener("MouseEvent.CLICK", _self.betHandler, _mc["order_bet"]); } } _self.betClick=function(mouseEvent, targetObj){ var targetID = mouseEvent.target.id; for(var i =0;i maxbet*1 ){ classObj["add_"+i].disabled(true); } } } _calc.updateLimit=function(obj){ minbet = obj["minbet"]; maxbet = obj["maxbet"].replace(/,/g,""); for(var i=1; i<=limitCount; i++){ var obj = classObj["add_"+i]; var _limit = obj.get_value(); var dis = (_limit*1 > maxbet*1)?true:false; if(dis){ dom.getElementById("add_"+i).classList.add("nonBtn"); }else{ dom.getElementById("add_"+i).classList.remove("nonBtn"); } obj.disabled(dis); } } _calc.updateCurrency=function(obj){ currency = obj["currency"]; for(var i=1; i<=limitCount; i++){ var obj = classObj["add_"+i]; var str_limit = limitArray[currency][i-1]; var _limit = str_limit.replace(/,/g,""); //echo( i+"===>"+_limit); classObj["add_"+i].set_value({"show":str_limit,"value":_limit}); } } } _self.updateEvent=function(){ minBet = _mc["minbet"].innerHTML.replace(/,/g,""); maxBet = _mc["maxbet"].innerHTML.replace(/,/g,""); _top["calcObj"].updateLimit({"minbet":minBet,"maxbet":maxBet}); } _self.changeEvent=function(currency){ var tmp_currency = currency; _top["calcObj"].updateCurrency({"currency":tmp_currency}); _self.updateEvent(); } _self._calcWinGold=function(){ var wingold = ""; if(_mc["bet_gold"].innerHTML!=""){ if(_top["bet_now"]!="P"){ wingold = showTxt(formatThousand(calcWindGold(_mc["bet_gold"].innerHTML,_self.paramHash["ioratio"],_self.paramHash["keepwtype"]))); }else{ wingold = dataClass["order_bet_p"].calcWinGoldP(); } }else{ wingold = "0.00"; } _mc["bet_win_gold"].innerHTML = wingold; } _self.num=function(obj){ var _num= this; var targetObj = obj["targetObj"]; var _screen = obj["screen"]; var _value = obj["value"]; _num.init=function(){ _screen.removeEventListener("click",_num); _screen.addEventListener("click",_num.clickEvent); } _num.clickEvent=function(){ if((targetObj.innerHTML=="" && _value=="0") || targetObj.innerHTML.length >= 10 ) return; targetObj.innerHTML += _value; if(targetObj.innerHTML!="") _mc["bet_gold_tt"].style.display = "none"; _self._calcWinGold(); tmpGold = targetObj.innerHTML; _mc["bet_gold2_tt"].innerHTML = showTxt(formatThousand(util_formatNumber(tmpGold))); } } _self.del=function(obj){ var _del = this; var targetObj = obj["targetObj"]; var _screen = obj["screen"]; _del.init=function(){ _screen.removeEventListener("click",_del); _screen.addEventListener("click",_del.clickEvent); } _del.clickEvent=function(){ targetObj.innerHTML = targetObj.innerHTML.substring(0, targetObj.innerHTML.length-1); _mc["bet_gold2_tt"].innerHTML = showTxt(formatThousand(util_formatNumber(targetObj.innerHTML))); if(targetObj.innerHTML=="") _mc["bet_gold_tt"].style.display = ""; _self._calcWinGold(); tmpGold = targetObj.innerHTML; } } _self.add=function(obj){ var _add = this; var targetObj = obj["targetObj"]; var _screen = obj["screen"]; var _value; var _maxbet = ""; _add.init=function(){ _add.addEvent(true); } _add.clickEvent=function(){ var nextNum = targetObj.innerHTML*1 + _value.replace(",","")*1; if(nextNum*1 > maxBet*1){ targetObj.innerHTML = maxBet; }else{ targetObj.innerHTML = targetObj.innerHTML*1 + _value*1; } if(targetObj.innerHTML!="") _mc["bet_gold_tt"].style.display = "none"; _self._calcWinGold(); tmpGold = targetObj.innerHTML; _mc["bet_gold2_tt"].innerHTML = showTxt(formatThousand(util_formatNumber(tmpGold))); } _add.set_value=function(obj){ _value = obj["value"]; _screen.innerHTML = "+" + obj["show"]; } _add.get_value=function(val){ return _value; } _add.disabled=function(isDis){ _add.addEvent(!isDis); } _add.addEvent=function(isAdd){ if(isAdd){ _screen.removeEventListener("click",_add); _screen.addEventListener("click",_add.clickEvent); }else{ _screen.removeEventListener("click",_add.clickEvent); } } _add.setMaxBet=function(maxbet){ _maxbet = maxbet; } } _self.clearNum=function(){ if(_mc["bet_gold"].innerHTML!=""){ _mc["bet_gold"].innerHTML=""; _mc["bet_win_gold"].innerHTML = "0.00"; _mc["bet_gold2_tt"].innerHTML = "0.00"; tmpGold = ""; if(_mc["bet_gold"].innerHTML=="") _mc["bet_gold_tt"].style.display = ""; } } _self.setErrorMsg=function(errorMsg, errorValue,org){ if(errorValue+"" == "undefined"){ _mc["err_msg"].innerHTML = showLS(errorMsg); }else if(org+"" == "undefined"){ _mc["err_msg"].innerHTML = showLS(errorMsg)+errorValue; }else{ _mc["err_msg"].innerHTML = showLS(errorMsg)+errorValue+showLS(org); } } _self.showErrorMsg=function(isShow){ _mc["div_err"].style.display=(isShow)?"":"none"; } _self.setData=function(xmlnode, parentParam){ _self.initOrderBet(); _self.paramHash = mergeHash(_self.paramHash, parentParam); _self.paramHash["show_rtype"] = _self.paramHash["rtype"]; _self.paramHash["keepchose_team"] = _self.paramHash["chose_team"]; _mc["bet_gold"].disabled = false; _mc["bet_gold"].style.display=""; _mc["parlay_finish_show"].innerHTML = ""; _self.setInfoVisible(true); _self.setBetNumVisible(false); _self.clearGold(); var game_ary = xmlnode.Node(xmlnode.Root[0],"game", false); var game = game_ary["gid"+_self.paramHash["all_gid"]]; var dataHash = new Object(); dataHash["maxcredit"] = _top["userData"].maxcredit; dataHash["showtype"] = (parentParam["showtype"].toLowerCase()!="ft")?_top["LS"]["showtype_"+parentParam["showtype"]]:""; var chose_team; var _rtype = _self.paramHash["show_rtype"].toLowerCase(); _self.paramHash["show_team"]=false; if(_top["LS"][_rtype]==null){ var Ftype="_F_RF_DC_RDC_"; if (Ftype.indexOf("_"+_self.paramHash["keepwtype"].toUpperCase()+"_")>=0){ f1=_self.paramHash["rtype"].toUpperCase().replace(_self.paramHash["keepwtype"].toUpperCase(),"").substr(0,1); f2=_self.paramHash["rtype"].toUpperCase().replace(_self.paramHash["keepwtype"].toUpperCase(),"").substr(1,1); //console.log("f1----"+f1); chose_team=""; if (f1=="N" ){ chose_team+=_top["LS"]["mn"]; }else{ chose_team+=xmlnode.Node(game,"team_"+f1.toLowerCase()).innerHTML; _self.paramHash["show_team"]=true; } chose_team+=" / "; if (f2=="N" ){ chose_team+=_top["LS"]["mn"]; }else{ chose_team+=xmlnode.Node(game,"team_"+f2.toLowerCase()).innerHTML; _self.paramHash["show_team"]=true; } }else{ chose_team = xmlnode.Node(game,"team_"+_self.paramHash["keepchose_team"]).innerHTML; _self.paramHash["show_team"]=true; } }else{ var team_h = xmlnode.Node(game,"team_h").innerHTML; var team_c = xmlnode.Node(game,"team_c").innerHTML; chose_team = _top["LS"][_rtype]; chose_team = chose_team.replace(/\*TEAM_H\*/g,team_h); chose_team = chose_team.replace(/\*TEAM_C\*/g,team_c); } var strong = xmlnode.Node(game,"strong").innerHTML; _self.paramHash["ioratio"] = xmlnode.Node(game,"ior_"+_self.paramHash["show_rtype"].toUpperCase()).innerHTML; dataHash["chose_team"] = chose_team; dataHash["score_h"] = xmlnode.Node(game,"score_h").innerHTML*1; dataHash["score_c"] = xmlnode.Node(game,"score_c").innerHTML*1; try{ _self.paramHash["keepwtype"]=_self.paramHash["keepwtype"].toUpperCase(); dataHash["team_h"] = xmlnode.Node(game,"team_h").innerHTML; dataHash["team_c"] = xmlnode.Node(game,"team_c").innerHTML; var session=xmlnode.Node(game,"session").innerHTML; _self.paramHash["subtypestr"]=""; if(_self.paramHash["gtype"]=="FT"){ _self.paramHash["subtypestr"]=_top["LS"]["showRtype"]; if(checkWtypeIsHalf(_self.paramHash["keepwtype"])){ _self.paramHash["subtypestr"]=_top["LS"]["showRtype_h"]; } }else{ var ms = xmlnode.Node(game,"ms").innerHTML.split('_')[1]; var ms_str = showLS(_self.paramHash["gtype"]+"_game_"+ms+"_set"); if(ms_str!=""){ if(ms_str == _self.paramHash["gtype"]+"_game_"+ms+"_set"){ ms_str = ""; } _self.paramHash["subtypestr"] = ms_str; } } if (_self.paramHash["keepwtype"]=="T"){ var _ary = new Array("EOO","EOE","HEOO","HEOE","EOH","EOC","HEOH","HEOC"); if(in_array(_self.paramHash["show_rtype"], _ary)){ //if (_self.paramHash["show_rtype"]=="EOO" ||_self.paramHash["show_rtype"]=="EOE"){ showRtype="eo"; _self.paramHash["keepwtype"]=showRtype.toUpperCase();//0407min //max 0408 }else{ showRtype=_self.paramHash["keepwtype"]; } }else{ showRtype=_self.paramHash["keepwtype"]; } var _ary = new Array("ouh","ouc","houh","houc","rouh","rouc","hruh","hruc"); var tmp_team = ""; var tmp_wtype = showRtype.toLowerCase(); _self.paramHash["showPlayType"]=_top["LS"][chgShowName_M("showRtype_"+showRtype.toLowerCase(),_self.paramHash["gtype"])]+tmp_team; if(in_array(tmp_wtype, _ary)&&_self.paramHash["gtype"].toLowerCase()=="ft"){ var t = tmp_wtype.substr(tmp_wtype.length-1,1); var main_gid = game_ary["gid"+_self.paramHash["main_gid"]]; tmp_team = xmlnode.Node(main_gid,"team_"+t).innerHTML; _self.paramHash["showPlayType"]=_self.paramHash["showPlayType"].replace("*TEAM_"+t.toUpperCase()+"*",tmp_team); } if (_self.paramHash["gtype"].toLowerCase()=="tn" && checkWtypeIsR(_self.paramHash["keepwtype"])) _self.paramHash["showPlayType"]=_top["LS"]["showRtype_"+showRtype.toLowerCase()+"_p"]; if ((_self.paramHash["gtype"].toLowerCase()=="vb" ||_self.paramHash["gtype"].toLowerCase()=="bk") && checkWtypeIsR(_self.paramHash["keepwtype"])) _self.paramHash["showPlayType"]=_top["LS"]["showRtype_"+showRtype.toLowerCase()+"_s"]; dataHash["league"] = xmlnode.Node(game,"league").innerHTML; }catch(e){ // alert(e); dataHash["league"] = xmlnode.Node(game,"league").innerHTML _self.paramHash["showPlayType"]=""; _self.paramHash["subtypestr"]=""; } _self.paramHash["showPlayType"] = _self.paramHash["showPlayType"].replace(/\*TEAM_H\*/g,dataHash["team_h"]); _self.paramHash["showPlayType"] = _self.paramHash["showPlayType"].replace(/\*TEAM_C\*/g,dataHash["team_c"]); dataHash["con"] = ""; dataHash["chose_con"] = xmlnode.Node(game, switchConRtype(_self.paramHash["show_rtype"])).innerHTML; _self.paramHash["ordercon_c"]=""; _self.paramHash["ordercon"]=""; if (checkWtypeIsR(_self.paramHash["keepwtype"])){ var str = (_self.paramHash["keepwtype"].toUpperCase().indexOf("H")==-1)?"strong":"hstrong"; //0407min strong = xmlnode.Node(game,str).innerHTML; //0407min if(strong=="H"){ _self.paramHash["ordercon"] = xmlnode.Node(game, switchConRtype(_self.paramHash["show_rtype"])).innerHTML; _self.paramHash["ordercon_c"]=""; }else{ _self.paramHash["ordercon"]=""; _self.paramHash["ordercon_c"] = xmlnode.Node(game, switchConRtype(_self.paramHash["show_rtype"])).innerHTML; } } dataHash["min_bet"] = ""; dataHash["max_bet"] = ""; dataHash["ioratio"] = _self.paramHash["ioratio"]; var getMenuHash = new Object(); getMenuHash.gid = _self.paramHash["all_gid"]; getMenuHash.showtype = _self.paramHash["showtype"]; getMenuHash.gtype = _self.paramHash["gtype"]; getMenuHash.wtype = _self.paramHash["keepwtype"]; getMenuHash.rtype = _self.paramHash["rtype"]; getMenuHash.ms = xmlnode.Node(game,"ms").innerHTML; getMenuHash.team_h = dataHash["team_h"]; getMenuHash.team_c = dataHash["team_c"]; getMenuHash.imp = _self.paramHash["imp"]; getMenuHash.ptype = _self.paramHash["ptype"]; var FTmenutype = getWtypeName(getMenuHash.gid, getMenuHash.showtype, getMenuHash.gtype, getMenuHash.wtype, getMenuHash.rtype, getMenuHash.ms, getMenuHash.team_h, getMenuHash.team_c, getMenuHash.imp, getMenuHash.ptype); dataHash["menutype"] = FTmenutype; _self.setConfirmData(dataHash); } _self.setConfirmData=function(dataHash){ var SPtype="_PG_OS_ST_CN_CD_RC_YC_GA_"; if (SPtype.indexOf("_"+_self.paramHash["keepwtype"]+"_")>=0){ if (_self.paramHash["rtype"].substring(_self.paramHash["rtype"].length-1,_self.paramHash["rtype"].length)=="N"){ _self.paramHash["showPlayType"]=_top["LS"][chgShowName_M("showRtype_"+_self.paramHash["rtype"].toLowerCase(),_self.paramHash["gtype"])]; dataHash["chose_team"]=_top["LS"]["showRtype_"+_self.paramHash["rtype"].toLowerCase()]; }else{ _self.paramHash["showPlayType"]=_top["LS"][chgShowName_M("showRtype_"+_self.paramHash["rtype"].substring(0,3).toLowerCase(),_self.paramHash["gtype"])]; } } _mc["bet_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(dataHash["maxcredit"]))); _mc["bet_menutype"].innerHTML = dataHash["menutype"]; var score; if((dataHash["score_h"]*1<0)||(dataHash["score_c"]*1<0)){ score = ""; }else{ score = "("+showTxt(dataHash["score_h"])+" - "+showTxt(dataHash["score_c"])+")"; } _mc["bet_league"].innerHTML = showTxt(dataHash["league"]); _mc["bet_team_h"].innerHTML = showTxt(dataHash["team_h"]); _mc["bet_team_c"].innerHTML = showTxt(dataHash["team_c"]); _mc["bet_con"].innerHTML = showTxt(_self.paramHash["ordercon"]); _mc["bet_con_c"].innerHTML = showTxt(_self.paramHash["ordercon_c"]); var tmp_team = ""; var get_team = getTeamWM(_self.paramHash["show_rtype"]); if(get_team!=null){ tmp_team = showTxt(dataHash["team_"+get_team])+" - "; } _mc["bet_chose_team"].innerHTML = tmp_team+showTxt(dataHash["chose_team"]); _mc["bet_chose_team"].classList.remove("ord_chose_con"); //Ricky 2017-11-15 雙盤不走四捨五入邏輯 var bet_wtype = chgTwtype(_self.paramHash["wtype"],_self.paramHash["rtype"]); _mc["bet_ior"].innerHTML = showTxt(chgForm_Single_ratio(dataHash["ioratio"],bet_wtype)); _mc["minbet"].innerHTML = showTxt(formatThousand(dataHash["min_bet"])); _mc["maxbet"].innerHTML = showTxt(formatThousand(dataHash["max_bet"])); _mc["bet_orderTitle"].innerHTML = showLS("bet_slip"); _mc["bet_teamname"].style.display = "none"; _mc["bet_teamDiv"].style.display = ""; _mc["bet_chose_con"].style.display = "none"; _mc["bet_score"].style.display = "none"; _self.clearGold(); _self.setConDisplay(); _self.setBetNumVisible(false); } _self.clearGold=function(){ _mc["bet_gold"].innerHTML = ""; _mc["bet_gold_tt"].style.display = ""; _mc["bet_win_gold"].innerHTML = "0.00"; _mc["bet_gold2_tt"].innerHTML = "0.00"; tmpGold = ""; } _self.clearBet=function(){ dataClass["menu"].setBetVisible(false); _self.clearBetData(); } _self.clearBetData=function(){ dataClass["menu"].setSelectCount(0); for(var i=_top["bet_viewdata"].length-1; i>=0; i--){ _mc[_top["bet_select"][i]] = document.getElementById(_top["bet_select"][i]); if( _mc[_top["bet_select"][i]]!=null){ var org_style = getObjectClass(_mc[_top["bet_select"][i]]); setObjectClass(_mc[_top["bet_select"][i]], org_style.replace(/_up/g, "")); deleteSelectArray(i); } } _top["bet_select"] = new Array(); _top["bet_viewdata"] = new Array(); _top["bet_xml"] = new Object(); _top["bet_now"]="FT"; _mc["bet_gold"].innerHTML = ""; _mc["bet_gold2_tt"].innerHTML = "0.00"; _mc["bet_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(_top["userData"].maxcredit))); dataClass["menu"].setNowBet("bet"); dataClass["menu"].setControlNow(""); _self._calcWinGold(); _self.setBetNumVisible(false); _self.clearOVTimer(); } _self.setCssVisible=function(type, isShow){ _self.clearOVTimer(); dataClass["menu"].setNowBet(type); var isParlay = (_top["bet_now"]=="P")?true:false; if(type=="bet"){ dataClass["menu"].setBetVisible(isShow,isParlay); }else if(type=="finish"){ dataClass["menu"].setFinishVisible(isShow,isParlay); } if(isShow){ if(type=="bet"){ _self.orderView(); _self.createTimer(); } } _self.setErrorMsg(""); _self.showErrorMsg(false); } _self.orderView=function(){ _self.paramHash = _self.switchBetRtype(_self.paramHash); var urlHash = new Array(); urlHash["uid"] = _top["userData"].uid; urlHash["langx"] = _top["userData"].langx; urlHash["odd_f_type"] = _top["userData"].odd_f_type; urlHash["gid"] = _self.paramHash["gid"]; urlHash["gtype"] = _self.paramHash["gtype"]; urlHash["wtype"] = _self.paramHash["wtype"]; urlHash["chose_team"] = _self.paramHash["chose_team"]; var gtype = _self.paramHash["gtype"].toLowerCase(); var getHTML=new loadingRequest(); getHTML.addEventListener("LoadComplete", _self.orderViewComplete); getHTML.loadURL(gtype+"/"+gtype+"_order_view.php","POST", convertParam(urlHash)); } _self.orderViewComplete=function(xml){ _self.paramHash["errorMsg"] = showConnectMsg(xml); if(alertConnectMsg(_self.paramHash["errorMsg"])) return; var xmdObj = new Object(); xmlnode=parseXml(xml); xmdObj["code"] = xmlnode.Node(xmlnode.Root[0],"code"); if(xmdObj["code"].innerHTML=="501"){ if(_.timerObj["delay_timer"] != null){ _.timerObj["delay_timer"].clearObj(); _.timerObj["delay_timer"] = null; } _mc["bet_gold"].className = "txtBlack"; var dataHash = convertNodeToHash(xmlnode.Root[0]); _self.paramHash = mergeHash(_self.paramHash, dataHash); var imp = _self.paramHash["imp"]; var ptype = _self.paramHash["ptype"]; var team_h = showTxt(xmlnode.Node(xmlnode.Root[0],"team_name_h").innerHTML); var team_c = showTxt(xmlnode.Node(xmlnode.Root[0],"team_name_c").innerHTML); if( imp == "Y" ){ team_h = team_h.replace(ptype,""); team_c = team_c.replace(ptype,""); }else{ team_h = team_h; team_c = team_c; } _mc["bet_team_h"].innerHTML = team_h; _mc["bet_team_c"].innerHTML = team_c; _mc["bet_league"].innerHTML = showTxt(xmlnode.Node(xmlnode.Root[0],"league_name").innerHTML); //0423,Leslie,Q285 var _rtype = _self.paramHash["show_rtype"].toLowerCase(); if(_self.paramHash["gtype"].toUpperCase()=="BS" && checkWtypeIsWM(_self.paramHash["keepwtype"])){ chose_team = _top["LS"][_rtype+"_"+_self.paramHash["gtype"].toLowerCase()]; }else if(_top["LS"][_rtype]==null){ var Ftype="_F_RF_DC_RDC_"; if (Ftype.indexOf("_"+_self.paramHash["keepwtype"].toUpperCase()+"_")>=0){ f1=_self.paramHash["rtype"].toUpperCase().replace(_self.paramHash["keepwtype"].toUpperCase(),"").substr(0,1); f2=_self.paramHash["rtype"].toUpperCase().replace(_self.paramHash["keepwtype"].toUpperCase(),"").substr(1,1); chose_team=""; if (f1=="N" ){ chose_team+=_top["LS"]["mn"]; }else{ var choose = xmlnode.Node(xmlnode.Root[0],"team_name_"+f1.toLowerCase()).innerHTML; if( imp == "Y" ){ choose = choose.replace(ptype,""); } chose_team+=choose; _self.paramHash["show_team"]=true; } chose_team+=" / "; if (f2=="N" ){ chose_team+=_top["LS"]["mn"]; }else{ // 2016-12-28 足球多type所有細單改位罝顯示 var choose = xmlnode.Node(xmlnode.Root[0],"team_name_"+f2.toLowerCase()).innerHTML; if( imp == "Y" ){ choose = choose.replace(ptype,""); } chose_team+=choose; _self.paramHash["show_team"]=true; } }else{ var choose = xmlnode.Node(xmlnode.Root[0],"team_name_"+_self.paramHash["keepchose_team"].toLowerCase()).innerHTML; if( imp == "Y" ){ choose = choose.replace(ptype,""); } chose_team = choose; _self.paramHash["show_team"]=true; } }else{ chose_team = _top["LS"][_rtype]; } var tmp_team = ""; var get_team = getTeamWM(_self.paramHash["show_rtype"]); if(get_team!=null){ tmp_team = showTxt(_mc["bet_team_"+get_team].innerHTML)+" - "; } chose_team = chose_team.replace(/\*TEAM_H\*/g,_mc["bet_team_h"].innerHTML); chose_team = chose_team.replace(/\*TEAM_C\*/g,_mc["bet_team_c"].innerHTML); _mc["bet_chose_team"].innerHTML = tmp_team+' '+showTxt(chose_team); _mc["bet_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(_top["userData"].maxcredit))); //Ricky 2017-11-15 雙盤不走四捨五入邏輯 var bet_wtype = chgTwtype(_self.paramHash["wtype"],_self.paramHash["rtype"]); var isChangeIor = (isChgIor(errorCode))?true:false; _mc["bet_ior"].innerHTML = showTxt(getSWIoratioMore((_self.paramHash["ioratio"]), null, isChangeIor ,bet_wtype,true)); var isChangeConcede = (isChgConcede(errorCode))?true:false; _mc["minbet"].innerHTML = showTxt(formatThousand(_self.paramHash["gold_gmin"])); _mc["maxbet"].innerHTML = showTxt(formatThousand(_self.paramHash["gold_gmax"])); minBet = _mc["minbet"].innerHTML.replace(",",""); maxBet = _mc["maxbet"].innerHTML.replace(",",""); // 2017-11-02 下注完成單需讀server回傳之數值 - 修正寫法統一用function取得球頭 var strong = showTxt(xmlnode.Node(xmlnode.Root[0],"strong").innerHTML); var ratio = xmlnode.Node(xmlnode.Root[0], "spread").innerHTML; var conObj = getConcedeStr(_self.paramHash["keepwtype"],strong,ratio,isChangeConcede); _mc["bet_con"].innerHTML = conObj["bet_finish_con"]; _mc["bet_con_c"].innerHTML = conObj["bet_finish_con_c"]; _self.paramHash["ordercon"]=showTxt(_mc["bet_con"].innerHTML); _self.paramHash["ordercon_c"]=showTxt(_mc["bet_con_c"].innerHTML); if(!checkWtypeIsOU(_self.paramHash["keepwtype"])&&_self.paramHash["keepwtype"]!="W3"){ _mc["bet_chose_con"].innerHTML = ""; _mc["bet_chose_con"].style.display = "none"; }else{ var _abs = ""; if(_self.paramHash["keepwtype"]=="W3"){ var chose = _self.paramHash["chose_team"]; if(chose=="N") chose="H"; if(strong==chose){ _abs = "-"; }else{ _abs = "+"; } } _mc["bet_chose_con"].innerHTML = _abs + showTxt(xmlnode.Node(xmlnode.Root[0], "spread").innerHTML); _mc["bet_chose_con"].style.display = ""; } _self.paramHash["bet_chose_team"] = _mc["bet_chose_team"].innerHTML; _self.paramHash["bet_chose_con"] = _mc["bet_chose_con"].innerHTML; var tmp_score = showTxt(xmlnode.Node(xmlnode.Root[0], "score").innerHTML); tmp_score = "("+tmp_score.replace(":"," - ")+")"; // 只有足球需秀出比分,其餘球類隱藏 if(_self.paramHash["gtype"]=="FT"){ _mc["bet_score"].innerHTML = (needToShowScore(_self.paramHash["keepwtype"]))?tmp_score:""; _mc["bet_score"].style.display = (needToShowScore(_self.paramHash["keepwtype"]))?"":"none"; }else{ _mc["bet_score"].innerHTML = ""; _mc["bet_score"].style.display = "none"; } if(!isChgIor(errorCode) && !isChgConcede(errorCode)){ _self.setErrorMsg(""); _self.showErrorMsg(false); }else{ errorCode = ""; } _self.setConDisplay(); _self.updateEvent(); _self.removeEventListener("MouseEvent.CLICK", _mc["order_bet"]); _self.addEventListener("MouseEvent.CLICK", _self.betHandler, _mc["order_bet"]); }else{ xmdObj["errormsg"] = xmlnode.Node(xmlnode.Root[0],"errormsg"); _self.setErrorMsg(xmdObj["errormsg"].innerHTML); _self.showErrorMsg(true); if(isBetTryAgain(xmdObj["errormsg"].innerHTML)){ alert(showLS("bet_try_again")); _self.setCssVisible("bet", false); } } } _self.switchBetRtype=function(hash){ var rtype = hash["show_rtype"]; hash["rtype"] = hash["show_rtype"]; var ary = new Array("TS","RTS","OG","OT","HTS","ROT","RTS2","RWM","WM","RDC","DC","RWE","WE","RWB","WB","RTS","TS","CS","RCS","WN","RWN","PA","RCD","T1G","RT1G","T3G","RT3G","FG","BH","F2G","F3G","SB","RSB","TK"); if(rtype.match(/^EOO$/g)||rtype.match(/^REOO$/g)||rtype.match(/^PEOO$/g)){ tmp_w = _self.checkBetRtype(rtype.substr(0,1)); hash["rtype"] = tmp_w+"ODD" hash["chose_team"] = hash["rtype"]; hash["wtype"] = tmp_w+"T"; }else if(rtype.match(/^EOE$/g)||rtype.match(/^REOE$/g)||rtype.match(/^PEOE$/g)){ tmp_w = _self.checkBetRtype(rtype.substr(0,1)); hash["rtype"] = tmp_w+"EVEN"; hash["chose_team"] = hash["rtype"]; hash["wtype"] = tmp_w+"T"; }else if(rtype.match(/^HEOO$/g)){ //HEO hash["rtype"] = "HODD"; hash["chose_team"] = hash["rtype"]; hash["wtype"] = "HT"; }else if(rtype.match(/^HEOE$/g)){ //HEO hash["rtype"] = "HEVEN"; hash["chose_team"] = hash["rtype"]; hash["wtype"] = "HT"; }else if(rtype.match(/^HREOO$/g)){ //HEO hash["rtype"] = "HRODD"; hash["chose_team"] = hash["rtype"]; hash["wtype"] = "HRT"; }else if(rtype.match(/^HREOE$/g)){ //HEO hash["rtype"] = "HREVEN"; hash["chose_team"] = hash["rtype"]; hash["wtype"] = "HRT"; }else if(rtype.match(/^[H]?EO[HC][OE]$/g)){ //EOH,EOC,HEOH,HEOC hash["rtype"] = rtype; hash["chose_team"] = hash["rtype"]; hash["wtype"] = rtype.substr(0,rtype.length-1); }else if(rtype.match(/^H[0-4]C[0-4]$/g)||rtype.match(/^RH[0-4]C[0-4]$/g)||rtype.match(/^PH[0-4]C[0-4]$/g)){ //pd tmp_w = _self.checkBetRtype(rtype.substr(0,1)); hash["con"] = rtype.replace("H","").replace("C",":"); hash["ratio"] = hash["con"]; hash["chose_team"] = hash["rtype"]; hash["wtype"] = tmp_w+"PD"; }else if(rtype.match(/^OVH$/g)||rtype.match(/^ROVH$/g)||rtype.match(/^POVH$/g)){ //pd tmp_w = _self.checkBetRtype(rtype.substr(0,1)); hash["con"] = "OV5"; hash["ratio"] = hash["con"]; hash["chose_team"] = hash["rtype"]; hash["wtype"] = tmp_w+"PD"; }else if(rtype.match(/^HH[0-4]C[0-4]$/g)||rtype.match(/^HRH[0-4]C[0-4]$/g)||rtype.match(/^HPH[0-4]C[0-4]$/g)){ //hpd tmp_w = _self.checkBetRtype(rtype.substr(1,1)); hash["con"] = rtype.replace(/H/g, "").replace("C",":"); hash["ratio"] = hash["con"]; hash["rtype"] = hash["rtype"].substr(1,hash["rtype"].length-1); hash["chose_team"] = hash["rtype"]; hash["wtype"] = "H"+tmp_w+"PD"; }else if(rtype.match(/^HOVH$/g)||rtype.match(/^HROVH$/g)||rtype.match(/^HPOVH$/g)){ //hpd tmp_w = _self.checkBetRtype(rtype.substr(1,1)); hash["con"] = "OV5"; hash["ratio"] = hash["con"]; hash["rtype"] = tmp_w+"OVH"; hash["chose_team"] = hash["rtype"]; hash["wtype"] = "H"+tmp_w+"PD"; }else if(rtype.match(/^T[0-4][1-6]$/g)||rtype.match(/^RT[0-4][1-6]$/g)){ //t tmp_w = _self.checkBetRtype(rtype.substr(0,1)); tmp_r = rtype.substr(rtype.length-2,2); var tmp = tmp_r.split(""); hash["rtype"] = tmp_w+tmp.join("~"); hash["chose_team"] = hash["rtype"]; hash["wtype"] = tmp_w+"T"; }else if(rtype.match(/^HT[0-2]$/g)||rtype.match(/^HRT[0-2]$/g)){ //ht hash["rtype"] = rtype; hash["chose_team"] = hash["rtype"]; hash["wtype"] = rtype.substring(0,rtype.length-1); }else if(rtype.match(/^OVER$/g)||rtype.match(/^ROVER$/g)){ //t tmp_w = _self.checkBetRtype(rtype.substr(0,1)); hash["wtype"] = tmp_w+"T"; hash["rtype"] = hash["rtype"]; hash["chose_team"] = hash["rtype"]; }else if(rtype.match(/^HTOV$/g)||rtype.match(/^HRTOV$/g)){ //ht hash["rtype"] = hash["rtype"]; hash["chose_team"] = hash["rtype"]; hash["wtype"] = rtype.substring(0,rtype.length-2); }else if(rtype.match(/^F(H|N|C)(H|N|C)$/g)||rtype.match(/^RF(H|N|C)(H|N|C)$/g)||rtype.match(/^PF(H|N|C)(H|N|C)$/g)){ //f tmp_w = _self.checkBetRtype(rtype.substr(0,1)); hash["con"] = rtype; hash["ratio"] = hash["con"]; hash["wtype"] = tmp_w+"F"; hash["chose_team"] = hash["rtype"]; }else if(rtype.match(/^(P|O|S|C|R|Y|G)(G|S|T|N|D|C|A)(F|L)(H|N|C)$/g)){ //sp hash["ratio"] = hash["con"]; hash["wtype"] = "SP"; hash["chose_team"] = hash["rtype"]; }else if(in_array(hash["keepwtype"], ary)){ hash["wtype"] = hash["keepwtype"]; hash["chose_team"] = rtype; }else if(rtype.match(/^RPD3[0-2][0-2]$/g)||rtype.match(/^PD3[0-2][0-2]$/g)){ hash["con"] = rtype.substr(rtype.length-2,1)+":"+rtype.substr(rtype.length-1,1); hash["ratio"] = hash["con"]; hash["chose_team"] = hash["rtype"]; hash["wtype"] = rtype.substr(0, rtype.length-2); //RPD5 }else if(rtype.match(/^RPD5[0-3][0-3]$/g)||rtype.match(/^PD5[0-3][0-3]$/g)){ tmp_w = _self.checkBetRtype(rtype.substr(0,1)); hash["con"] = rtype.substr(rtype.length-2,1)+":"+rtype.substr(rtype.length-1,1); hash["ratio"] = hash["con"]; hash["chose_team"] = hash["rtype"]; hash["wtype"] = rtype.substr(0, rtype.length-2); }else if(rtype.match(/^RPD(H|C)[0-4]$/g)||rtype.match(/^PD(H|C)[0-4]$/g)){ //0903,Leslie last digit hash["chose_team"] = hash["rtype"]; hash["wtype"] = hash["keepwtype"]; }else if(rtype.match(/^R?F[0-3][0-9][HC]$/g)){ hash["con"] = rtype; hash["ratio"] = hash["con"]; hash["chose_team"] = hash["rtype"]; } return hash; } _self.checkBetRtype=function(type){ var _ary = new Array("R","P"); return (in_array(type ,_ary))?type:""; } _self.setConDisplay=function(){ _mc["bet_con"].style.display=(_mc["bet_con"].innerHTML=="")?"none":""; _mc["bet_con_c"].style.display=(_mc["bet_con_c"].innerHTML=="")?"none":""; } _self.betHandler=function(mouseEvent){ var gold = _mc["bet_gold"].innerHTML; var gold_gmin = _self.paramHash["gold_gmin"]*1; var gold_gmax = _self.paramHash["gold_gmax"]*1; var mem_sc = _self.paramHash["mem_sc"]*1; var mem_so = _self.paramHash["mem_so"]*1; var restsinglecredit = _self.paramHash["restsinglecredit"]*1; var gold_res = restsinglecredit*1 + gold*1; var ret = checkFormat(gold); var org = ""; var errorValue = ""; var currency = _self.paramHash["currency"]; if(ret==""){ if(gold < gold_gmin){ ret = "1X004"; if(_top["userData"].langx == "ko-kr"){ errorValue = showLS(currency)+" "+gold_gmin+"입니다."; }else{ errorValue = showLS(currency)+" "+gold_gmin+"."; } }else if(gold > gold_gmax){ if(gold_gmax == mem_so){ ret = "1X031"; if(_top["userData"].langx == "ko-kr"){ errorValue = showLS(currency)+" "+mem_so+"입니다."; }else{ errorValue = showLS(currency)+" "+mem_so+"."; } }else{ ret = "1X030"; if(_top["userData"].langx == "ko-kr"){ errorValue = showLS(currency)+" "+gold_gmax+"입니다."; }else{ errorValue = showLS(currency)+" "+gold_gmax+"."; } } }else if( gold_res > mem_sc ){ ret = "error_mem_max"; org = "error_mem_max1"; errorValue = restsinglecredit; } } if(ret!=""){ _self.setErrorMsg(ret,errorValue,org); _self.showErrorMsg(true); _self.clearGold(); return; } if(_top["betting"]==true) return; _top["betting"]=true; _self.paramHash["golds"] = _mc["bet_gold"].innerHTML; _self.paramHash["autoOdd"] = (_mc["bet_better_odds"].checked) ? "Y":""; _self.paramHash = _self.switchBetRtype(_self.paramHash); var bet_mode = (_self.paramHash["gtype"].toUpperCase()=="FT") ? "ft_bet":"other_bet"; dataClass[bet_mode].bet(_self.paramHash); _self.setLoadingBetVisible(true); } _self.getBetterOdds=function(){ return _mc["bet_better_odds"].checked; } _self.setBetterOdds=function(){ if(typeof _top["memSet"]["betterOdds"]=="undefined"){ _mc["bet_better_odds"].checked = true; return; }else{ if(_top["memSet"]["betterOdds"]){ _mc["bet_better_odds"].checked = true; }else{ _mc["bet_better_odds"].checked = false; } } } _self.saveBetterOdds=function(mouseEvent, targetObj){ _top["memSet"].betterOdds = _mc["bet_better_odds"].checked; var urlHash = new Array(); urlHash["uid"] = _top["userData"].uid; urlHash["action"] = "SET"; urlHash["langx"] = _top["userData"].langx; urlHash["value"] = JSON.stringify(_top["memSet"]); var getHTML = new loadingRequest(); getHTML.addEventListener("LoadComplete", _self.saveBetterOddsFinish); getHTML.loadURL("app/member/memSet.php","POST", convertParam(urlHash)); } _self.saveBetterOddsFinish=function(data){ if(data) _self.setSetVisible(false); } _self.setBetting=function(bet_tag){ _top["betting"] = bet_tag; } _self.setBetCredit=function(credit){ _mc["bet_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(credit))); } _self.setErrorCode=function(error){ errorCode = error; } _self.setDataHash=function(dataHash){ _self.paramHash = mergeHash(_self.paramHash, dataHash); } _self.setInfoVisible=function(isShow){ if(isShow){ _mc["div_bet_info"].style.display=""; _mc["div_bet_info2"].style.display=""; }else{ _mc["div_bet_info"].style.display="none"; _mc["div_bet_info2"].style.display="none"; } } _self.setLoadingBetVisible=function(isShow){ if(isShow){ _mc["loading_bet"].style.display=""; _mc["order_bet"].style.display="none"; _mc["div_betBtn"].classList.remove("bettingMode"); _mc["div_betBtn"].classList.add("loadingMode"); _self.removeEventListener("MouseEvent.CLICK",_mc["clear_order"]); _self.removeEventListener("MouseEvent.CLICK",_mc["set_btn"]); }else{ _mc["loading_bet"].style.display="none"; _mc["order_bet"].style.display=""; _mc["div_betBtn"].classList.add("bettingMode"); _mc["div_betBtn"].classList.remove("loadingMode"); _self.addEventListener("MouseEvent.CLICK", _self.showSet, _mc["set_btn"]); _self.addEventListener("MouseEvent.CLICK", _self.clearBet, _mc["clear_order"]); } } _self.touchstart = function(e){ var start_touch = e.touches[0]; // 第一個接觸點 touchStartPos = Number(start_touch.pageY); firstTouch = true; } _self.touchmove = function(e){ touch = e.touches[0]; // 第一個接觸點 } _self.touchend = function(e){ if(!touch) return; var x = Number(touch.pageX); var y = Number(touch.pageY); var diffPos = touchStartPos - y; if(firstTouch){ if(diffPos <= touchPoint*-1){ //上往下拖曳 if(div_calc.style.display=="") _self.setBetNumVisible(false); } } firstTouch = false; touch = null; } } function order_bet_fs(){ var _self = this; var parentClass; var _mc = new Object(); var moneyValue = Array(); var errorCode = ""; moneyValue["RMB"] = Array("100","200","500","1,000","2,500","5,000"); moneyValue["HKD"] = Array("130","260","650","1,300","3,250","6,500"); moneyValue["USD"] = Array("20","40","100","200","500","1,000"); moneyValue["MYR"] = Array("60","120","300","600","1,500","3,000"); moneyValue["SGD"] = Array("30","60","150","300","750","1,500"); moneyValue["THB"] = Array("600","1,200","3,000","6,000","15,000","30,000"); moneyValue["GBP"] = Array("20","40","100","200","500","1,000"); moneyValue["JPY"] = Array("2,000","4,000","10,000","20,000","50,000","100,000"); moneyValue["EUR"] = Array("20","40","100","200","500","1,000"); moneyValue["IND"] = Array("200,000","400,000","1,000,000","2,000,000","5,000,000","10,000,000"); _self.classname = "order_bet_fs.js"; _self.paramHash = new Object(); _self.init=function(){ _mc["div_content"] = document.getElementById("div_content"); _mc["div_calc"] = document.getElementById("div_calc"); _mc["div_set"] = document.getElementById("div_set"); _mc["div_bet_title"] = document.getElementById("div_bet_title"); _mc["bet_orderTitle"] = document.getElementById("bet_orderTitle"); _mc["bet_teamDiv"] = document.getElementById("bet_teamDiv"); _mc["set_mask"] = document.getElementById("set_mask"); _mc["set_btn"] = document.getElementById("set_btn"); _mc["set_cancel"] = document.getElementById("set_cancel"); _mc["set_save"] = document.getElementById("set_save"); _mc["order_bet"] = document.getElementById("order_bet"); _mc["minbet"] = document.getElementById("minbet"); _mc["maxbet"] = document.getElementById("maxbet"); _mc["clear_btn"] = document.getElementById("clear_btn"); _mc["clear_order"] = document.getElementById("clear_order"); _mc["bet_credit"] = document.getElementById("bet_credit"); _mc["bet_menutype"] = document.getElementById("bet_menutype"); _mc["bet_score"] = document.getElementById("bet_score"); _mc["bet_league"] = document.getElementById("bet_league"); _mc["bet_teamname"] = document.getElementById("bet_teamname"); _mc["bet_team_h"] = document.getElementById("bet_team_h"); _mc["bet_team_c"] = document.getElementById("bet_team_c"); _mc["bet_con"] = document.getElementById("bet_con"); _mc["bet_con_c"] =document.getElementById("bet_con_c"); _mc["bet_chose_team"] = document.getElementById("bet_chose_team"); _mc["bet_chose_con"] = document.getElementById("bet_chose_con"); _mc["bet_ior"] = document.getElementById("bet_ior"); _mc["bet_gold"] = document.getElementById("bet_gold"); _mc["bet_gold_tt"] = document.getElementById("bet_gold_tt"); _mc["bet_win_gold"] = document.getElementById("bet_win_gold"); _mc["bet_gold2_tt"] = document.getElementById("bet_gold2_tt"); _mc["div_err"] = document.getElementById("div_err"); _mc["err_msg"] = document.getElementById("err_msg"); _mc["bet_better_odds"] = document.getElementById("bet_better_odds"); _mc["bet_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(_top["userData"].maxcredit))); if(_mc["bet_gold"].innerHTML=="") _mc["bet_gold_tt"].style.display = ""; var _min = _mc["minbet"].innerHTML; var _max = _mc["maxbet"].innerHTML; var obj = { "win": window, "dom": document, "targetObj": _mc["bet_gold"], "screen": _mc["div_calc"], "limitArray":moneyValue, "limitCount":4, "currency": _top["userData"].currency, "minbet":_min, "maxbet":_max}; if(_top["calcObj"]==null){ _top["calcObj"] = new dataClass["order_bet"].calc(obj); _top["calcObj"].init(); } dataClass["fs_bet"] = extendsClass(_top["MovieClipClass"], fs_bet); dataClass["fs_bet"].init(); } _self.createTimer=function(){ var ret = _self.clearOVTimer(); if(ret){ if(_.timerObj==null) _.timerObj=new Object(); _.timerObj["ov"] = new CountdownTimer(CONFIG_ORDER_VIEW, 1); _.timerObj["ov"].setParentclass(_self); _.timerObj["ov"].init(); _.timerObj["ov"].setRunHandler(_self.ovTimerRun); _.timerObj["ov"].setFinishHandler(_self.ovTimerFinish); _.timerObj["ov"].startCalcTime(); } } _self.ovTimerRun=function(count){ } _self.ovTimerFinish=function(count){ _self.orderView(); _.timerObj["ov"].stopCalcTime(); _.timerObj["ov"].startCalcTime(); } _self.clearOVTimer=function(){ if(_.timerObj["ov"]!=null){ _.timerObj["ov"].clearObj(); _.timerObj["ov"]=null; } return true; } _self.setData=function(xmlnode, parentParam){ dataClass["order_bet"].initOrderBet(); _self.paramHash["keepwtype"]="FS"; _self.paramHash = mergeHash(_self.paramHash, parentParam); dataClass["order_bet"].setInfoVisible(true); dataClass["order_bet"].setBetNumVisible(false); dataClass["order_bet"].clearGold(); var game_ary = xmlnode.Node(xmlnode.Root[0],"game", false); var game = game_ary["gid"+_self.paramHash[(_self.paramHash["bet_now"]!="SFS")?"gid":"all_gid"]]; var dataHash = new Object(); dataHash["maxcredit"] = _top["userData"].maxcredit; dataHash["showtype"] = (parentParam["showtype"].toLowerCase()!="ft")?_top["LS"]["showtype_"+parentParam["showtype"]]:""; dataHash["league"] = xmlnode.Node(game,"league").innerHTML; dataHash["teamsname"] = (_self.paramHash["bet_now"]!="SFS")?xmlnode.Node(game,"teamsname").innerHTML:""; dataHash["rtype"] = _self.paramHash["rtype"]; dataHash["rtype_name"] = (_self.paramHash["bet_now"]!="SFS")?_self.paramHash["rtype_name"]:_self.paramHash["team"]; dataHash["ioratio"] = _self.paramHash["ioratio"]; dataHash["min_bet"] = ""; dataHash["max_bet"] = ""; var getMenuHash = new Object(); getMenuHash.gid = _self.paramHash["all_gid"]; getMenuHash.showtype = _self.paramHash["showtype"]; getMenuHash.gtype = _self.paramHash["gtype"]; getMenuHash.wtype = _self.paramHash["keepwtype"]; getMenuHash.rtype = _self.paramHash["rtype"]; getMenuHash.ms = ""; getMenuHash.team_h = ""; getMenuHash.team_c = ""; getMenuHash.imp = ""; getMenuHash.ptype = ""; var FTmenutype = getWtypeName(getMenuHash.gid, getMenuHash.showtype, getMenuHash.gtype, getMenuHash.wtype, getMenuHash.rtype, getMenuHash.ms, getMenuHash.team_h, getMenuHash.team_c, getMenuHash.imp, getMenuHash.ptype); dataHash["menutype"] = FTmenutype; _self.setConfirmData(dataHash); } _self.setConfirmData=function(dataHash){ _self.paramHash["showPlayType"]=_top["LS"]["showRtype_fs"]; _mc["bet_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(dataHash["maxcredit"]))) _mc["bet_menutype"].innerHTML = dataHash["menutype"]; _self.paramHash["menutype"] = _mc["bet_menutype"].innerHTML; _mc["bet_league"].innerHTML = showTxt(dataHash["league"]); _mc["bet_teamname"].innerHTML = showTxt(dataHash["teamsname"]); _mc["bet_chose_team"].innerHTML = showTxt(dataHash["rtype_name"]); _mc["bet_ior"].innerHTML = showTxt(chgForm_Single_ratio(dataHash["ioratio"],_self.paramHash["wtype"])); _mc["minbet"].innerHTML = showTxt(formatThousand(dataHash["min_bet"])); _mc["maxbet"].innerHTML = showTxt(formatThousand(dataHash["max_bet"])); _mc["bet_orderTitle"].innerHTML = showLS("bet_slip"); _mc["bet_teamname"].style.display = ""; _mc["bet_teamDiv"].style.display = "none"; _mc["bet_chose_con"].style.display = "none"; dataClass["order_bet"].clearGold(); dataClass["order_bet"].setConDisplay(); dataClass["order_bet"].setBetNumVisible(false); } _self.orderView=function(){ var urlHash = new Array(); urlHash["uid"] = _top["userData"].uid; urlHash["langx"] = _top["userData"].langx; urlHash["gid"] = _self.paramHash["gid"]; urlHash["gtype"] = _self.paramHash["gtype"]; urlHash["wtype"] = _self.paramHash["wtype"]; urlHash["rtype"] = _self.paramHash["rtype"]; urlHash["odd_f_type"] = _self.paramHash["odd_f_type"]; var gtype = _self.paramHash["gtype"].toLowerCase(); var getHTML=new HttpRequest(); getHTML.addEventListener("LoadComplete", _self.orderViewComplete); getHTML.loadURL(gtype+"/"+gtype+"_order_view_fs.php","POST", convertParam(urlHash)); } _self.orderViewComplete=function(xml){ _self.paramHash["errorMsg"] = showConnectMsg(xml); if(alertConnectMsg(_self.paramHash["errorMsg"])) return; var xmdObj = new Object(); xmlnode=parseXml(xml); xmdObj["code"] = xmlnode.Node(xmlnode.Root[0],"code"); if(xmdObj["code"].innerHTML=="531"){ _mc["bet_gold"].className = "txtBlack"; var dataHash = convertNodeToHash(xmlnode.Root[0]); if (_self.paramHash["keepwtype"]="SFS"){ dataHash["teamsname"] = xmlnode.Node(xmlnode.Root[0],"team_name_h").innerHTML+""+xmlnode.Node(xmlnode.Root[0],"team_name_c").innerHTML; } _self.paramHash = mergeHash(_self.paramHash, dataHash); _mc["bet_teamname"].innerHTML = showTxt(dataHash["teamsname"]); _mc["bet_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(_top["userData"].maxcredit))); var isChange = (isChgIor(errorCode))?true:false; _mc["bet_ior"].innerHTML = showTxt(getSWIoratioMore(_self.paramHash["ioratio"],null,isChange,_self.paramHash["wtype"])); _mc["minbet"].innerHTML = showTxt(formatThousand(_self.paramHash["gold_gmin"])); //0423,Leslie,Q291 _mc["maxbet"].innerHTML = showTxt(formatThousand(_self.paramHash["gold_gmax"])); //0423,Leslie,Q291 minBet = _mc["minbet"].innerHTML.replace(",",""); maxBet = _mc["maxbet"].innerHTML.replace(",",""); _mc["bet_score"].style.display = "none"; if(!isChgIor(errorCode)){ dataClass["order_bet"].setErrorMsg(""); dataClass["order_bet"].showErrorMsg(false); }else{ errorCode = ""; } _self.removeEventListener("MouseEvent.CLICK", _mc["order_bet"]); _self.addEventListener("MouseEvent.CLICK", _self.betHandler, _mc["order_bet"]); dataClass["order_bet"].updateEvent(); dataClass["order_bet"].setDataHash(_self.paramHash); }else{ xmdObj["errormsg"] = xmlnode.Node(xmlnode.Root[0],"errormsg"); dataClass["order_bet"].setErrorMsg(xmdObj["errormsg"].innerHTML); dataClass["order_bet"].showErrorMsg(true); if(isBetTryAgain(xmdObj["errormsg"].innerHTML)){ alert(showLS("bet_try_again")); dataClass["order_bet"].setCssVisible("bet", false); } } } _self.betHandler=function(mouseEvent){ var gold = _mc["bet_gold"].innerHTML; var gold_gmin = _self.paramHash["gold_gmin"]*1; var gold_gmax = _self.paramHash["gold_gmax"]*1; var mem_sc = _self.paramHash["mem_sc"]*1; var mem_so = _self.paramHash["mem_so"]*1; var restsinglecredit = _self.paramHash["restsinglecredit"]*1; var gold_res = restsinglecredit*1 + gold*1; var ret = checkFormat(gold); var org = ""; var errorValue = ""; var currency = _self.paramHash["currency"]; if(ret==""){ if(gold < gold_gmin){ ret = "1X004"; if(_top["userData"].langx == "ko-kr"){ errorValue = showLS(currency)+" "+gold_gmin+"입니다."; }else{ errorValue = showLS(currency)+" "+gold_gmin+"."; } }else if(gold > gold_gmax){ if(gold_gmax == mem_so){ ret = "1X031"; if(_top["userData"].langx == "ko-kr"){ errorValue = showLS(currency)+" "+mem_so+"입니다."; }else{ errorValue = showLS(currency)+" "+mem_so+"."; } }else{ ret = "1X030"; if(_top["userData"].langx == "ko-kr"){ errorValue = showLS(currency)+" "+gold_gmax+"입니다."; }else{ errorValue = showLS(currency)+" "+gold_gmax+"."; } } }else if( gold_res > mem_sc ){ ret = "error_mem_max"; org = "error_mem_max1"; errorValue = restsinglecredit; } } if(ret!=""){ dataClass["order_bet"].setErrorMsg(ret,errorValue,org); dataClass["order_bet"].showErrorMsg(true); dataClass["order_bet"].clearGold(); return; } if(_top["betting"]==true) return; _top["betting"]=true; _self.paramHash["golds"] = _mc["bet_gold"].innerHTML; _self.paramHash["autoOdd"] = (_mc["bet_better_odds"].checked) ? "Y":""; dataClass["fs_bet"].bet(_self.paramHash); dataClass["order_bet"].setLoadingBetVisible(true); } _self.setCssVisible=function(type, isShow){ dataClass["order_bet"].clearOVTimer(); dataClass["menu"].setNowBet(type); var isParlay = (_top["bet_now"]=="P")?true:false; if(type=="bet"){ dataClass["menu"].setBetVisible(isShow,isParlay); }else if(type=="finish"){ dataClass["menu"].setFinishVisible(isShow,isParlay); } if(isShow){ if(type=="bet"){ _self.orderView(); _self.createTimer(); } } dataClass["order_bet"].setErrorMsg(""); dataClass["order_bet"].showErrorMsg(false); } _self.setErrorCode=function(error){ errorCode = error; } } function order_bet_p(){ var _self = this; var parentClass; var _mc = new Object(); var moneyValue = Array(); var errorCode = ""; var errorData = ""; var game_xml; var iorAry = new Array(); var org_iorAry = new Array(); moneyValue["RMB"] = Array("100","200","500","1,000","2,500","5,000"); moneyValue["HKD"] = Array("130","260","650","1,300","3,250","6,500"); moneyValue["USD"] = Array("20","40","100","200","500","1,000"); moneyValue["MYR"] = Array("60","120","300","600","1,500","3,000"); moneyValue["SGD"] = Array("30","60","150","300","750","1,500"); moneyValue["THB"] = Array("600","1,200","3,000","6,000","15,000","30,000"); moneyValue["GBP"] = Array("20","40","100","200","500","1,000"); moneyValue["JPY"] = Array("2,000","4,000","10,000","20,000","50,000","100,000"); moneyValue["EUR"] = Array("20","40","100","200","500","1,000"); moneyValue["IND"] = Array("200,000","400,000","1,000,000","2,000,000","5,000,000","10,000,000"); _self.classname = "order_bet_p.js"; _self.paramHash = new Object(); _self.init=function(){ _mc["normal_order_model"] = document.getElementById("normal_order_model"); _mc["parlay_order_model"] = document.getElementById("parlay_order_model"); _mc["div_content"] = document.getElementById("div_content"); _mc["div_calc"] = document.getElementById("div_calc"); _mc["div_set"] = document.getElementById("div_set"); _mc["div_betBtn"] = document.getElementById("div_betBtn"); _mc["bet_orderTitle"] = document.getElementById("bet_orderTitle"); _mc["div_bet_title"] = document.getElementById("div_bet_title"); _mc["bet_teamDiv"] = document.getElementById("bet_teamDiv"); _mc["set_mask"] = document.getElementById("set_mask"); _mc["set_btn"] = document.getElementById("set_btn"); _mc["set_cancel"] = document.getElementById("set_cancel"); _mc["set_save"] = document.getElementById("set_save"); _mc["order_bet"] = document.getElementById("order_bet"); _mc["minbet"] = document.getElementById("minbet"); _mc["maxbet"] = document.getElementById("maxbet"); _mc["clear_btn"] = document.getElementById("clear_btn"); _mc["clear_order"] = document.getElementById("clear_order"); _mc["bet_credit"] = document.getElementById("bet_credit"); _mc["bet_menutype"] = document.getElementById("bet_menutype"); _mc["bet_score"] = document.getElementById("bet_score"); _mc["bet_league"] = document.getElementById("bet_league"); _mc["bet_teamname"] = document.getElementById("bet_teamname"); _mc["bet_team_h"] = document.getElementById("bet_team_h"); _mc["bet_team_c"] = document.getElementById("bet_team_c"); _mc["bet_con"] = document.getElementById("bet_con"); _mc["bet_con_c"] =document.getElementById("bet_con_c"); _mc["bet_chose_team"] = document.getElementById("bet_chose_team"); _mc["bet_chose_con"] = document.getElementById("bet_chose_con"); _mc["bet_ior"] = document.getElementById("bet_ior"); _mc["bet_gold"] = document.getElementById("bet_gold"); _mc["bet_gold_tt"] = document.getElementById("bet_gold_tt"); _mc["bet_win_gold"] = document.getElementById("bet_win_gold"); _mc["bet_gold2_tt"] = document.getElementById("bet_gold2_tt"); _mc["div_err"] = document.getElementById("div_err"); _mc["err_msg"] = document.getElementById("err_msg"); _mc["bet_better_odds"] = document.getElementById("bet_better_odds"); _mc["bet_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(_top["userData"].maxcredit))); if(_mc["bet_gold"].innerHTML=="") _mc["bet_gold_tt"].style.display = ""; var _min = _mc["minbet"].innerHTML; var _max = _mc["maxbet"].innerHTML; var obj = { "win": window, "dom": document, "targetObj": _mc["bet_gold"], "screen": _mc["div_calc"], "limitArray":moneyValue, "limitCount":4, "currency": _top["userData"].currency, "minbet":_min, "maxbet":_max}; if(_top["calcObj"]==null){ _top["calcObj"] = new dataClass["order_bet"].calc(obj); _top["calcObj"].init(); } dataClass["parlay_bet"] = extendsClass(_top["MovieClipClass"], parlay_bet); dataClass["parlay_bet"].init(); } _self.initOrderParlayBet=function(){ if(in_array("loadingMode",_mc["div_betBtn"].classList) && _top["betting"]){ _self.clearParlayBetData(); _top["betting"] = false; _mc["div_betBtn"].classList.remove("loadingMode"); _mc["div_betBtn"].classList.add("bettingMode"); _mc["order_bet"].style.display=""; _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].setBetNum, _mc["bet_gold"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].setBetNum, _mc["bet_gold_tt"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].clearNum, _mc["clear_btn"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].showSet, _mc["set_btn"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].clearBet, _mc["clear_order"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].betHandler, _mc["order_bet"]); } } _self.createTimer=function(){ var ret = _self.clearOVTimer(); if(ret){ if(_.timerObj==null) _.timerObj=new Object(); _.timerObj["ov"] = new CountdownTimer(CONFIG_ORDER_VIEW, 1); _.timerObj["ov"].setParentclass(_self); _.timerObj["ov"].init(); _.timerObj["ov"].setRunHandler(_self.ovTimerRun); _.timerObj["ov"].setFinishHandler(_self.ovTimerFinish); _.timerObj["ov"].startCalcTime(); } } _self.ovTimerRun=function(count){ } _self.ovTimerFinish=function(count){ _self.orderView(); _.timerObj["ov"].stopCalcTime(); _.timerObj["ov"].startCalcTime(); } _self.clearOVTimer=function(){ if(_.timerObj["ov"]!=null){ _.timerObj["ov"].clearObj(); _.timerObj["ov"]=null; } return true; } _self.clearParlayBetData=function(){ dataClass["menu"].setSelectCount(0); for(var i=_top["bet_viewdata"].length-1; i>=0; i--){ _mc[_top["bet_select"][i]] = document.getElementById(_top["bet_select"][i]); if( _mc[_top["bet_select"][i]]!=null){ var org_style = getObjectClass(_mc[_top["bet_select"][i]]); setObjectClass(_mc[_top["bet_select"][i]], org_style.replace(/_up/g, "")); deleteSelectArray(i); } } _top["bet_select"] = new Array(); _top["bet_viewdata"] = new Array(); _top["bet_xml"] = new Object(); _top["bet_now"]="P"; _mc["bet_gold"].innerHTML = ""; _mc["bet_gold2_tt"].innerHTML = "0.00"; _mc["bet_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(_top["userData"].maxcredit))); dataClass["order_bet"].setBetNumVisible(false); dataClass["menu"].setNowBet("bet"); dataClass["menu"].setControlNow(""); dataClass["order_bet"]._calcWinGold(); dataClass["order_bet"].clearOVTimer(); } _self.setData=function(parentParam){ _self.paramHash = mergeHash(_self.paramHash, parentParam); _self.initData("order"); } _self.initData=function(type){ iorAry.splice(0, iorAry.length); var order_show = document.getElementById("parlay_"+type+"_show"); order_show.innerHTML = ""; var tmp_screen = ""; dataClass["order_bet"].setBetNumVisible(false); dataClass["order_bet"].clearGold(); for(var i=0; i<_top["bet_viewdata"].length; i++){ // ex: 581513!POUC,581523!POUH var _id = _top["bet_viewdata"][i]; var game_data = _id.split("!"); var _gid = game_data[0]; var _rtype = game_data[1].toLowerCase(); var _t = getTeamP(_rtype); var _choice = (_t!=null)?_t:_rtype.substr(_rtype.length-1,1); var targetObj = _top["bet_xml"][_id]; game = targetObj["xml"]; if(game!=null){ var div_model = document.getElementById("parlay_"+type+"_model").innerHTML; div_model = div_model.replace("","").replace("","").replace("","").replace("",""); var obj = new Object(); obj["showtype"] = " "; obj["gtype"] = _top["LS"]["order_"+targetObj["gtype"].toUpperCase()].split("/")[0]; var showRtype=""; try{ obj["subtypestr"]=_top["LS"]["showRtype"]; if(checkWtypeIsHalf(targetObj["keepwtype"])){ if (targetObj["gtype"].toUpperCase()=="BS"){ obj["subtypestr"] = _top["LS"]["showRtype_h_s"]; }else{ obj["subtypestr"] = _top["LS"]["showRtype_h"]; } } if (targetObj["keepwtype"].toUpperCase()=="T"){ if (targetObj["show_rtype"]=="EOO" ||targetObj["show_rtype"]=="EOE"){ showRtype="eo"; } }else{ showRtype=targetObj["keepwtype"]; } showRtype = showRtype.toLowerCase(); obj["showPlayType"]=_top["LS"][chgShowName_M("showRtype_"+showRtype,targetObj["gtype"])]; if (targetObj["gtype"]=="TN" && targetObj["keepwtype"].toUpperCase()=="R") obj["showPlayType"]=_top["LS"]["showRtype_"+showRtype+"_p"]; if ((targetObj["gtype"]=="VB" || targetObj["gtype"]=="BS" ||targetObj["gtype"]=="BK") && targetObj["keepwtype"].toUpperCase()=="R") obj["showPlayType"]=_top["LS"]["showRtype_"+showRtype+"_s"]; if(targetObj["gtype"]=="FT" && _top["LS"]["showRtype_"+_rtype.substr(0,3)]!=null && !(checkWtypeIsSingle2016(targetObj["keepwtype"]) || checkWtypeIsDouble2016(targetObj["keepwtype"]))){ obj["showPlayType"]=_top["LS"]["showRtype_"+_rtype.substr(0,3)]; } }catch(e){ obj["showPlayType"]=""; obj["subtypestr"]=""; } var choice_team; var imp = (targetObj["imp"]!=null)?targetObj["imp"]:""; var ptype = (targetObj["ptype"]!=null)?targetObj["ptype"]:""; // 2017-11-15 下注完成單需讀server回傳之數值 _top["ptypeHash"][_gid] = new Object(); _top["ptypeHash"][_gid].keepwtype = targetObj["keepwtype"]; _top["ptypeHash"][_gid].imp = imp; _top["ptypeHash"][_gid].ptype = ptype; _top["ptypeHash"][_gid].ms = showTxt(xmlnode.Node(game,"ms").innerHTML); var team_h = showTxt(xmlnode.Node(game,"team_h").innerHTML); var team_c = showTxt(xmlnode.Node(game,"team_c").innerHTML); var tmp_subtypestr = (obj["subtypestr"]=="")?"":" - "+obj["subtypestr"]; var tmp_menutype = ""; if( imp == "Y" ){ team_h = team_h.replace(targetObj["ptype"],""); team_c = team_c.replace(targetObj["ptype"],""); tmp_menutype = showTxt(obj["gtype"])+" "+ptype+" - "+showTxt(obj["showtype"])+showTxt(obj["showPlayType"])+tmp_subtypestr; }else{ team_h = team_h.replace(" ",""); team_c = team_c.replace(" ",""); tmp_menutype = showTxt(obj["gtype"])+showTxt(obj["showtype"])+showTxt(obj["showPlayType"])+tmp_subtypestr; } if(targetObj["gtype"].toUpperCase()=="BS" && checkWtypeIsWM(targetObj["keepwtype"])){ choice_team = _top["LS"][_rtype+"_"+targetObj["gtype"].toLowerCase()]; }else if(_top["LS"][_rtype]==null){ var Ftype="_F_RF_DC_RDC_"; if (Ftype.indexOf("_"+targetObj["keepwtype"].toUpperCase()+"_")>=0){ f1=targetObj["show_rtype"].toUpperCase().replace(targetObj["keepwtype"].toUpperCase(),"").substr(0,1); f2=targetObj["show_rtype"].toUpperCase().replace(targetObj["keepwtype"].toUpperCase(),"").substr(1,1); choice_team=""; if (f1=="N" ){ choice_team+=_top["LS"]["mn"]; }else{ var choose = xmlnode.Node(game,"team_"+f1).innerHTML.split("-")[0]; if( imp == "Y" ){ choose = choose.replace(ptype,""); }else{ choose = choose.replace(" ","")+ptype; } choice_team+=choose; } choice_team+=" / "; if (f2=="N" ){ choice_team+=_top["LS"]["mn"]; }else{ var choose = xmlnode.Node(game,"team_"+f2).innerHTML.split("-")[0]; if( imp == "Y" ){ choose = choose.replace(ptype,""); }else{ choose = choose+ptype; } choice_team+=choose; } }else{ var choose = xmlnode.Node(game,"team_"+_choice).innerHTML.split("-")[0]; if( imp == "Y" ){ choose = choose.replace(ptype,""); }else{ choose = choose+ptype; } choice_team = choose; } }else{ choice_team = _top["LS"][_rtype]; } var tmp_team = ""; var get_team = getTeamWM(targetObj["show_rtype"]); if(get_team!=null){ tmp_team = showTxt(xmlnode.Node(game,"team_"+get_team).innerHTML)+" - "; } var tmp_date = showTxt(xmlnode.Node(game,"datetime").innerHTML).split(" ")[0]; var tmp_mon = tmp_date.substr(5,2); var tmp_day = tmp_date.substr(8,2); var tmp_league = ""; if(_top["userData"].langx=="zh-tw" || _top["userData"].langx=="zh-cn"){ tmp_league = tmp_day + "-" + tmp_mon + " " + showTxt(xmlnode.Node(game,"league").innerHTML); }else{ tmp_league = tmp_day + "-" + tmp_mon + " " + showTxt(xmlnode.Node(game,"league").innerHTML); } choice_team = choice_team.replace(/\*TEAM_H\*/g,team_h); choice_team = choice_team.replace(/\*TEAM_C\*/g,team_c); div_model = div_model.replace(/\*ID\*/g, showTxt(_id)); div_model = div_model.replace(/\*MENUTYPE\*/g, tmp_menutype); //Leslie 0403 div_model = div_model.replace(/\*LEAGUE\*/g, tmp_league); div_model = div_model.replace(/\*LEAGUE\*/g, showTxt(xmlnode.Node(game,"league").innerHTML)); div_model = div_model.replace(/\*TEAM_H\*/g, team_h); div_model = div_model.replace(/\*TEAM_C\*/g, team_c); div_model = div_model.replace(/\*CHOICE_TEAM\*/g, tmp_team+showTxt(choice_team)); iorAry.push(util_formatNumber(xmlnode.Node(game,"ior_"+_rtype).innerHTML)); //Ricky 2017-11-15 雙盤不走四捨五入邏輯 var bet_wtype = chgTwtype(targetObj["keepwtype"],targetObj["show_rtype"]); div_model = div_model.replace(/\*IORATIO\*/g, showTxt(chgForm_Single_ratio(xmlnode.Node(game,"ior_"+_rtype).innerHTML,targetObj["keepwtype"].toUpperCase()))); var choice_con = switchConRtype(_rtype); //Leslie 0403 choice_con = showConcede(targetObj["keepwtype"],showTxt(xmlnode.Node(game,choice_con).innerHTML)); div_model = div_model.replace(/\*CHOICE_CON\*/g, choice_con); if(checkWtypeIsR(targetObj["keepwtype"])){ var str = (targetObj["keepwtype"].toUpperCase().indexOf("H")==-1)?"strong":"hstrong"; if(xmlnode.Node(game,str).innerHTML=="H"){ div_model = div_model.replace(/\*CON\*/g, showTxt(xmlnode.Node(game,choice_con).innerHTML)); div_model = div_model.replace(/\*CON_C\*/g, ""); div_model = div_model.replace(/\*DISPLAY_CON\*/g, ""); div_model = div_model.replace(/\*DISPLAY_CON_C\*/g, "display:none"); }else{ div_model = div_model.replace(/\*CON\*/g, ""); div_model = div_model.replace(/\*CON_C\*/g, showTxt(xmlnode.Node(game,choice_con).innerHTML)); div_model = div_model.replace(/\*DISPLAY_CON\*/g, "display:none"); div_model = div_model.replace(/\*DISPLAY_CON_C\*/g, ""); } }else{ div_model = div_model.replace(/\*CON\*/g, ""); div_model = div_model.replace(/\*CON_C\*/g, ""); div_model = div_model.replace(/\*DISPLAY_CON\*/g, "display:none"); div_model = div_model.replace(/\*DISPLAY_CON_C\*/g, "display:none"); } tmp_screen+=div_model; } } order_show.innerHTML = tmp_screen; for(var a=0; a<_top["bet_viewdata"].length; a++){ //581513!POUC^581523!POUH^ var _id = _top["bet_viewdata"][a]; _mc["del_"+_id] = document.getElementById("del_"+_id); _mc["del_"+_id].data = _id; _self.addEventListener("MouseEvent.CLICK", _self.deleteBetHandler, _mc["del_"+_id]); var tmp_id = _id.split("!"); _mc["game_"+tmp_id[0]] = document.getElementById("game_"+_id); } _self.setBetGoldEnable(); } _self.resetData=function(type){ var xmdObj = new Object(); var xmlnode=parseXml(game_xml); var game_ary = xmlnode.Node(xmlnode.Root[0],"game", false); var order_show = document.getElementById("parlay_"+type+"_show"); order_show.innerHTML = ""; var tmp_screen = ""; if(type=="order"){ org_iorAry = iorAry.concat(); iorAry.splice(0, iorAry.length); } for(var i=0; i<_top["bet_viewdata"].length; i++){ //581513!POUC,581523!POUH var _id = _top["bet_viewdata"][i]; var game_data = _id.split("!"); var _gid = game_data[0]; var _rtype = game_data[1].toLowerCase(); var _t = getTeamP(_rtype); var _choice = (_t!=null)?_t:_rtype.substr(_rtype.length-1,1); var targetObj = _top["bet_xml"][_id]; var gameXML = targetObj["xml"]; var gameServer = game_ary["gid"+_gid]; var imp = (targetObj["imp"]!=null)?targetObj["imp"]:""; var ptype = (targetObj["ptype"]!=null)?targetObj["ptype"]:""; if(gameServer != null){ var div_model = document.getElementById("parlay_"+type+"_model").innerHTML; div_model = div_model.replace("","").replace("","").replace("","").replace("",""); var getMenuHash = new Object(); getMenuHash.gid = _gid; getMenuHash.showtype = ""; getMenuHash.gtype = targetObj["gtype"]; getMenuHash.wtype = targetObj["keepwtype"]; getMenuHash.rtype = _rtype; getMenuHash.ms = xmlnode.Node(gameXML,"ms").innerHTML; getMenuHash.team_h = xmlnode.Node(gameServer,"team_h").innerHTML; getMenuHash.team_c = xmlnode.Node(gameServer,"team_c").innerHTML; getMenuHash.imp = imp; getMenuHash.ptype = ptype; var FTmenutype = getWtypeName(getMenuHash.gid, getMenuHash.showtype, getMenuHash.gtype, getMenuHash.wtype, getMenuHash.rtype, getMenuHash.ms, getMenuHash.team_h, getMenuHash.team_c, getMenuHash.imp, getMenuHash.ptype); // 下注隊伍 if(targetObj["gtype"].toUpperCase()=="BS" && checkWtypeIsWM(targetObj["keepwtype"])){ choice_team = _top["LS"][_rtype+"_"+targetObj["gtype"].toLowerCase()]; }else if(_top["LS"][_rtype]==null){ var Ftype="_F_RF_DC_RDC_"; if (Ftype.indexOf("_"+targetObj["keepwtype"].toUpperCase()+"_")>=0){ f1=targetObj["show_rtype"].toUpperCase().replace(targetObj["keepwtype"].toUpperCase(),"").substr(0,1); f2=targetObj["show_rtype"].toUpperCase().replace(targetObj["keepwtype"].toUpperCase(),"").substr(1,1); choice_team=""; if (f1=="N" ){ choice_team+=_top["LS"]["mn"]; }else{ var choose = xmlnode.Node(gameServer,"team_"+f1).innerHTML.split("-")[0]; if( imp == "Y" ){ choose = choose.replace(ptype,""); }else{ choose = choose+ptype; } choice_team+=choose; } choice_team+=" / "; if (f2=="N" ){ choice_team+=_top["LS"]["mn"]; }else{ var choose = xmlnode.Node(gameServer,"team_"+f2).innerHTML.split("-")[0]; if( imp == "Y" ){ choose = choose.replace(ptype,""); }else{ choose = choose.replace(" ","")+ptype; } choice_team+=choose; } }else{ var choose = xmlnode.Node(gameServer,"team_"+_choice).innerHTML.split("-")[0]; if( imp == "Y" ){ choose = choose.replace(ptype,""); }else{ choose = choose+ptype; } choice_team = choose; } }else{ choice_team = _top["LS"][_rtype]; choice_team = choice_team.replace(/\*TEAM_H\*/g,xmlnode.Node(gameServer,"team_h").innerHTML); choice_team = choice_team.replace(/\*TEAM_C\*/g,xmlnode.Node(gameServer,"team_c").innerHTML); } var tmp_team = ""; var get_team = getTeamWM(targetObj["show_rtype"]); if(get_team!=null){ tmp_team = showTxt(xmlnode.Node(gameServer,"team_"+get_team).innerHTML)+" - "; if( tmp_team.indexOf(targetObj["ptype"])!=-1 ) tmp_team = tmp_team.replace(ptype,""); } // 多type if( imp == "Y" && choice_team.indexOf(ptype)!=-1 ) { var tmp_ptype = ptype.replace(/\(/g,"\\\(").replace(/\)/g,"\\\)"); choice_team = choice_team.replace(new RegExp(tmp_ptype, 'g'),''); } // 過關下注場次日期 var tmp_date = showTxt(xmlnode.Node(gameServer,"date").innerHTML); var tmp_mon = tmp_date.substr(5,2); var tmp_day = tmp_date.substr(8,2); var tmp_league = ""; if(_top["userData"].langx=="zh-tw" || _top["userData"].langx=="zh-cn"){ tmp_league = tmp_day + "-" + tmp_mon + " " + showTxt(xmlnode.Node(gameServer,"league").innerHTML); }else{ tmp_league = tmp_day + "-" + tmp_mon + " " + showTxt(xmlnode.Node(gameServer,"league").innerHTML); } div_model = div_model.replace(/\*ID\*/g, showTxt(_id)); div_model = div_model.replace(/\*MENUTYPE\*/g, FTmenutype); div_model = div_model.replace(/\*LEAGUE\*/g, tmp_league); div_model = div_model.replace(/\*LEAGUE\*/g, showTxt(xmlnode.Node(gameServer,"league").innerHTML)); div_model = div_model.replace(/\*TEAM_H\*/g, showTxt(xmlnode.Node(gameServer,"team_h").innerHTML)); div_model = div_model.replace(/\*TEAM_C\*/g, showTxt(xmlnode.Node(gameServer,"team_c").innerHTML)); div_model = div_model.replace(/\*CHOICE_TEAM\*/g, tmp_team+showTxt(choice_team)); var tmp_ior = util_formatNumber(xmlnode.Node(gameServer,"ioratio").innerHTML); var isChangeIor = (_gid==errorData && type=="order" && isChgIor(errorCode))?true:false; var isChangeConcede = (_gid==errorData && type=="order" && isChgConcede(errorCode))?true:false; div_model = div_model.replace(/\*IORATIO\*/g, showTxt(getSWIoratioMore(tmp_ior,null,isChangeIor,targetObj["keepwtype"].toUpperCase()))); iorAry.push(util_formatNumber(xmlnode.Node(gameServer,"ioratio").innerHTML)); var strong = xmlnode.Node(gameServer,"strong").innerHTML; var _abs = ""; if(targetObj["keepwtype"]=="W3"){ var chose = _choice.toUpperCase(); if(chose=="N") chose="H"; if(strong==chose){ _abs = "-"; }else{ _abs = "+"; } } var choice_con = showConcede(targetObj["keepwtype"],showTxt(xmlnode.Node(gameServer,"combine").innerHTML)); div_model = div_model.replace(/\*CHOICE_CON\*/g, _abs+choice_con); if(checkWtypeIsR(targetObj["keepwtype"]) && targetObj["keepwtype"].toUpperCase()!="W3"){ if(strong=="H"){ div_model = div_model.replace(/\*CON\*/g, _abs+showTxt(getSWConcedeMore(xmlnode.Node(gameServer,"combine").innerHTML,null,isChangeConcede))); div_model = div_model.replace(/\*CON_C\*/g, ""); div_model = div_model.replace(/\*DISPLAY_CON\*/g, ""); div_model = div_model.replace(/\*DISPLAY_CON_C\*/g, "display:none"); }else{ div_model = div_model.replace(/\*CON\*/g, ""); div_model = div_model.replace(/\*CON_C\*/g, _abs+showTxt(getSWConcedeMore(xmlnode.Node(gameServer,"combine").innerHTML,null,isChangeConcede))); div_model = div_model.replace(/\*DISPLAY_CON\*/g, "display:none"); div_model = div_model.replace(/\*DISPLAY_CON_C\*/g, ""); } }else{ div_model = div_model.replace(/\*CON\*/g, ""); div_model = div_model.replace(/\*CON_C\*/g, ""); div_model = div_model.replace(/\*DISPLAY_CON\*/g, "display:none"); div_model = div_model.replace(/\*DISPLAY_CON_C\*/g, "display:none"); } tmp_screen+=div_model; } } order_show.innerHTML = tmp_screen; for(var a=0; a<_top["bet_viewdata"].length; a++){ //581513!POUC^581523!POUH^ var _id = _top["bet_viewdata"][a]; _mc["del_"+_id] = document.getElementById("del_"+_id); _mc["del_"+_id].data = _id; _self.addEventListener("MouseEvent.CLICK", _self.deleteBetHandler, _mc["del_"+_id]); var tmp_id = _id.split("!"); _mc["game_"+tmp_id[0]] = document.getElementById("game_"+_id); } _mc["bet_orderTitle"].innerHTML = showLS("bet_slipP"); _self.setBetGoldEnable(); setLoadingVisible(false); } _self.orderView=function(){ _self.paramHash["wtype"] = "P3"; _self.paramHash["viewdata"] = _top["bet_viewdata"].join("^"); _self.paramHash["viewdata"] = switchBetRtypeP(_self.paramHash["viewdata"]); var urlHash = new Array(); urlHash["uid"] = _top["userData"].uid; urlHash["langx"] = _top["userData"].langx; urlHash["viewdata"] = _self.paramHash["viewdata"]; urlHash["gtype"] = _self.paramHash["gtype"]; urlHash["wtype"] = _self.paramHash["wtype"]; var gtype = _self.paramHash["gtype"].toLowerCase(); var getHTML=new loadingRequest(); getHTML.addEventListener("LoadComplete", _self.orderViewComplete); getHTML.loadURL(gtype+"/"+gtype+"_order_view_p.php","POST", convertParam(urlHash)); } _self.orderViewComplete=function(xml){ _self.paramHash["errorMsg"] = showConnectMsg(xml); if(alertConnectMsg(_self.paramHash["errorMsg"])) return; var xmdObj = new Object(); xmlnode=parseXml(xml); game_xml = xml; xmdObj["code"] = xmlnode.Node(xmlnode.Root[0],"code"); if(xmdObj["code"].innerHTML=="590"){ _mc["bet_gold"].className = "txtBlack"; _self.resetData("order"); dataClass["order_bet"].updateEvent(); if( !isChgIor(errorCode) && !isChgConcede(errorCode) ){ dataClass["order_bet"].setErrorMsg(""); dataClass["order_bet"].showErrorMsg(false); }else{ errorCode = ""; } }else{ xmdObj["errormsg"] = xmlnode.Node(xmlnode.Root[0],"errormsg"); var msg = xmdObj["errormsg"].innerHTML; dataClass["order_bet"].setErrorMsg(_top["LS"][msg]); dataClass["order_bet"].showErrorMsg(true); _self.scrollToBottom(); if(isBetTryAgain(xmdObj["errormsg"].innerHTML)){ alert(showLS("bet_try_again")); try{ _mc["order_back"].click(); return; }catch(e){ try{ _mc["order_back"].onclick(); return; }catch(ee){} } } } var game_ary = xmlnode.Node(xmlnode.Root[0],"game", false); var dataHash = convertNodeToHash(xmlnode.Root[0]); _self.paramHash = mergeHash(_self.paramHash, dataHash); _mc["bet_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(_top["userData"].maxcredit))); _mc["minbet"].innerHTML = formatThousand(_self.paramHash["gold_gmin"]); _mc["maxbet"].innerHTML = formatThousand(_self.paramHash["gold_gmax"]); _self.paramHash["betdata"] = ""; _self.paramHash["viewdate"] = ""; for(var a=0; a<_top["bet_viewdata"].length; a++){ //75048!PRH,75055!POUC var _id = _top["bet_viewdata"][a]; var tmp = _id.split("!"); var tmp_gid = tmp[0]; var tmp_rtype = tmp[1].toUpperCase(); var tmp_game = game_ary["gid"+tmp_gid]; var strong = xmlnode.Node(tmp_game,"strong").innerHTML; var concede = xmlnode.Node(tmp_game,"concede").innerHTML; var ratio = xmlnode.Node(tmp_game,"ratio").innerHTML; var ioratio = xmlnode.Node(tmp_game,"ioratio").innerHTML; var date = xmlnode.Node(tmp_game,"date").innerHTML; _self.paramHash["betdata"]+=tmp_gid+"!"+tmp_rtype+"!"+strong+"!"+concede+"!"+ratio+"!"+ioratio+"!"+date+"^"; if(_self.paramHash["viewdate"] == ""){ _self.paramHash["viewdate"]+=date; }else{ _self.paramHash["viewdate"]+="^"+date; } } xmdObj["errormsg"] = xmlnode.Node(xmlnode.Root[0],"errormsg"); errorCode = xmdObj["errormsg"].innerHTML; if(xmdObj["errormsg"]!=null){ xmdObj["gids"] = xmlnode.Node(xmlnode.Root[0],"closegid",false); } for(var a=0; a<_top["bet_viewdata"].length; a++){ var _id = _top["bet_viewdata"][a].split("!"); if(xmdObj["gids"]!=null){ if(xmdObj["gids"]["gid"+_id[0]]!=null){ _self.resetData("order"); setObjectClass(_mc["game_"+_id[0]], "ord_main_p close_game"); }else{ if(xmdObj["errormsg"].innerHTML=="1X001" && xmdObj["gids"]["gid"+_id[0]]!=null){ _self.resetData("order"); setObjectClass(_mc["game_"+_id[0]], "ord_main_p close_game"); }else{ setObjectClass(_mc["game_"+_id[0]], "ord_main_p"); } } }else{ setObjectClass(_mc["game_"+_id[0]], "ord_main_p"); } } _self.removeEventListener("MouseEvent.CLICK", _mc["order_bet"]); _self.addEventListener("MouseEvent.CLICK", _self.betHandler, _mc["order_bet"]); _self.setBetGoldEnable(); } _self.setBetGoldEnable=function(){ if(_top["bet_select"].length < _top["limit_min"]){ var tmp_str = showLS("1X032")+_top["limit_min"]+showLS("1X033"); dataClass["order_bet"].clearGold(); dataClass["order_bet"].setErrorMsg(tmp_str); dataClass["order_bet"].showErrorMsg(true); dataClass["order_bet"].setInfoVisible(false); return; } dataClass["order_bet"].setInfoVisible(true); } _self.deleteBetHandler=function(mouseEvent, targetObj){ for(var i=_top["bet_viewdata"].length-1; i>=0; i--){ if(_top["bet_viewdata"][i].indexOf(targetObj.data)!=-1){ _mc[_top["bet_viewdata"][i]] = document.getElementById(_top["bet_viewdata"][i]); if(_mc[_top["bet_viewdata"][i]]){ var org_style = getObjectClass(_mc[_top["bet_select"][i]]); setObjectClass(_mc[_top["bet_select"][i]], org_style.replace(/_up/g, "")); } deleteSelectArray(i); iorAry.splice(i, 1); break; } } dataClass["menu"].setSelectCount(_top["bet_select"].length); if(_top["bet_select"].length==0){ dataClass["order_bet"].clearBet(); dataClass["menu"].setBetVisible(false,true); return; } dataClass["order_bet"]._calcWinGold(); _self.orderView(); } _self.betHandler=function(mouseEvent){ var gold = _mc["bet_gold"].innerHTML; var gold_gmin = _self.paramHash["gold_gmin"]*1; var gold_gmax = _self.paramHash["gold_gmax"]*1; var mem_sc = _self.paramHash["mem_sc"]*1; var mem_so = _self.paramHash["mem_so"]*1; var restsinglecredit = _self.paramHash["restsinglecredit"]*1; var gold_res = restsinglecredit*1 + gold*1; var ret = checkFormat(gold); var org = ""; var errorValue = ""; var currency = _self.paramHash["currency"]; if(_top["bet_select"].length < _top["limit_min"]) return; if(!_self.chkParlayDate()){ ret = "error7D"; } if(ret==""){ if(gold < gold_gmin){ ret = "1X004"; if(_top["userData"].langx == "ko-kr"){ errorValue = showLS(currency)+" "+gold_gmin+"입니다."; }else{ errorValue = showLS(currency)+" "+gold_gmin+"."; } }else if(gold > gold_gmax){ if(gold_gmax == mem_so){ ret = "1X031"; if(_top["userData"].langx == "ko-kr"){ errorValue = showLS(currency)+" "+mem_so+"입니다."; }else{ errorValue = showLS(currency)+" "+mem_so+"."; } }else{ ret = "1X030"; if(_top["userData"].langx == "ko-kr"){ errorValue = showLS(currency)+" "+gold_gmax+"입니다."; }else{ errorValue = showLS(currency)+" "+gold_gmax+"."; } } }else if( gold_res > mem_sc ){ ret = "error_mem_max"; org = "error_mem_max1"; errorValue = restsinglecredit; } } if(ret!=""){ dataClass["order_bet"].setErrorMsg(ret,errorValue,org); dataClass["order_bet"].showErrorMsg(true); dataClass["order_bet"].clearGold(); return; } if(_top["betting"]==true) return; _top["betting"]=true; _self.paramHash["golds"] = _mc["bet_gold"].innerHTML; _self.paramHash["autoOdd"] = (_mc["bet_better_odds"].checked) ? "Y":""; dataClass["parlay_bet"].bet(_self.paramHash); dataClass["order_bet"].setLoadingBetVisible(true); } _self.setCssVisible=function(type, isShow){ dataClass["order_bet"].clearOVTimer(); dataClass["menu"].setNowBet(type); var isParlay = (_top["bet_now"]=="P")?true:false; if(type=="bet"){ dataClass["menu"].setBetVisible(isShow,isParlay); }else if(type=="finish"){ dataClass["menu"].setFinishVisible(isShow,isParlay); } if(isShow){ if(type=="bet"){ _self.orderView(); _self.createTimer(); _self.scrollToBottom(); } } dataClass["order_bet"].setErrorMsg(""); dataClass["order_bet"].showErrorMsg(false); } _self.setErrorCode=function(error){ errorCode = error; } _self.setErrorData=function(gid){ errorData = gid; } _self.calcWinGoldP=function(){ return showTxt(formatThousand(calcWindGoldP(_mc["bet_gold"].innerHTML, iorAry))); } _self.chkParlayDate = function(){ var isOk = true; try{ var dateAry = _self.paramHash["viewdate"].split("^"); dateAry.sort(); var fOD = dateAry[0]; var fD = new Date(fOD); if(isNaN(fD)){ var s = fOD.split("-"); fD = new Date(s[0]+'/'+s[1]+'/'+s[2]); } var lD = new Date(fD); if(isNaN(lD)){ var s = fOD.split("-"); fD = new Date(s[0]+'/'+s[1]+'/'+s[2]); } lD.setDate(fD.getDate()+7); var overDate = lD.getFullYear()+"-"; overDate += (lD.getMonth()+1 < 10)?("0"+(lD.getMonth()+1)+"-"):((lD.getMonth()+1)+"-"); overDate += (lD.getDate() < 10)?("0"+lD.getDate()):lD.getDate(); for(var i=0; i= overDate){ isOk = false; break; } } }catch(E){ console.log("chkParlayDate error"); isOk = false; } return isOk; } _self.scrollToBottom = function(){ _mc["div_content"].scrollTop = _mc["div_content"].scrollHeight; } } function ft_bet(){ var _self = this; _self.classname = "ft_bet.js"; _self.paramHash = new Object(); var _mc = new Object(); var check_ary = new Array("hrh","hrc","hmh","hmc","hreh","hrec","hrmh","hrmc"); var tid = ""; var t_active = ""; _self.init=function(){ _mc["div_bet_finish_title"] = document.getElementById("div_bet_finish_title"); _mc["bet_finish_orderTitle"] = document.getElementById("bet_finish_orderTitle"); _mc["bet_finish_teamDiv"] = document.getElementById("bet_finish_teamDiv"); _mc["div_finish_content"] = document.getElementById("div_finish_content"); _mc["bet_finish_credit"] = document.getElementById("bet_finish_credit"); _mc["bet_finish_menutype"] = document.getElementById("bet_finish_menutype"); _mc["bet_finish_teamname"] = document.getElementById("bet_finish_teamname"); _mc["bet_finish_score"] = document.getElementById("bet_finish_score"); _mc["bet_finish_league"] = document.getElementById("bet_finish_league"); _mc["bet_finish_team_h"] = document.getElementById("bet_finish_team_h"); _mc["bet_finish_team_c"] = document.getElementById("bet_finish_team_c"); _mc["bet_finish_con"] = document.getElementById("bet_finish_con"); _mc["bet_finish_con_c"] =document.getElementById("bet_finish_con_c"); _mc["bet_finish_chose_team"] = document.getElementById("bet_finish_chose_team"); _mc["bet_finish_chose_con"] = document.getElementById("bet_finish_chose_con"); _mc["bet_finish_ior"] = document.getElementById("bet_finish_ior"); _mc["bet_finish_tid"] = document.getElementById("bet_finish_tid"); _mc["bet_finish_gold"] = document.getElementById("bet_finish_gold"); _mc["bet_finish_win_gold"] = document.getElementById("bet_finish_win_gold"); _mc["bet_finish_close"] = document.getElementById("bet_finish_close"); _mc["close_btn"] = document.getElementById("close_btn"); _mc["bet_gold"] = document.getElementById("bet_gold"); _mc["bet_gold_tt"] = document.getElementById("bet_gold_tt"); _mc["clear_btn"] = document.getElementById("clear_btn"); _mc["clear_order"] = document.getElementById("clear_order"); // 2018-03-06 CRM-236加強版手機 - 537.下注單-危險球待確認時 下方綠色確認 幫改成 繼續交易 (crm-248) // 初始化 _mc["bet_finish_close"].innerHTML = showLS("chkBet_confirm"); _self.addEventListener("MouseEvent.CLICK", _self.closeFinish, _mc["div_bet_finish_title"]); _self.addEventListener("MouseEvent.CLICK", _self.closeFinish, _mc["close_btn"]); _self.addEventListener("MouseEvent.CLICK", _self.closeFinish, _mc["bet_finish_close"]); } _self.bet=function(datas){ _self.paramHash = mergeHash(_self.paramHash, datas); var keys = _self.paramHash["gtype"]+"_"+_self.paramHash["gid"]+"_"+_self.paramHash["wtype"].toUpperCase()+"_"+_self.paramHash["rtype"].toUpperCase()+"_"+_self.paramHash["chose_team"].toUpperCase(); _top["betHash"][keys] = new Object(); _top["betHash"][keys].gid = _self.paramHash["gid"]; _top["betHash"][keys].gtype = _self.paramHash["gtype"]; _top["betHash"][keys].wtype = _self.paramHash["wtype"].toUpperCase(); _top["betHash"][keys].rtype = _self.paramHash["rtype"].toUpperCase(); _top["betHash"][keys].showtype = _self.paramHash["showtype"]; var urlHash = new Array(); urlHash["uid"] = _top["userData"].uid; urlHash["langx"] = _top["userData"].langx; urlHash["odd_f_type"] = _top["userData"].odd_f_type; urlHash["golds"] = _self.paramHash["golds"]; urlHash["gid"] = _self.paramHash["gid"]; urlHash["gtype"] = _self.paramHash["gtype"]; urlHash["wtype"] = _self.paramHash["wtype"].toUpperCase(); urlHash["rtype"] = _self.paramHash["rtype"].toUpperCase(); urlHash["chose_team"] = _self.paramHash["chose_team"]; urlHash["ioratio"] = _self.paramHash["ioratio"]; urlHash["con"] = _self.paramHash["con"]; urlHash["ratio"] = _self.paramHash["ratio"]; urlHash["autoOdd"] = _self.paramHash["autoOdd"]; urlHash["timestamp"] = getTimestamp(); urlHash["isRB"] = (isRBWtype(_self.paramHash["wtype"]))?"Y":"N"; urlHash["imp"] = _self.paramHash["imp"]; urlHash["ptype"] = _self.paramHash["ptype"]; urlHash["gwin"] =document.getElementById("bet_win_gold").innerHTML; _self.removeEventListener("MouseEvent.CLICK",_mc["bet_gold"]); _self.removeEventListener("MouseEvent.CLICK",_mc["bet_gold_tt"]); _self.removeEventListener("MouseEvent.CLICK",_mc["clear_btn"]); _self.removeEventListener("MouseEvent.CLICK",_mc["clear_order"]); _mc["bet_gold"].className = "txtGray"; var getHTML=new loadingRequest(); getHTML.addEventListener("LoadComplete", _self.betFinish); getHTML.loadURL("ft/ft_bet.php","POST", convertParam(urlHash)); } _self.delay_bet=function(){ var urlHash = new Array(); urlHash["uid"] = _top["userData"].uid; urlHash["gtype"] = _self.paramHash["gtype"]; urlHash["gid"] = _self.paramHash["gid"]; urlHash["ticket_id"] = tid; urlHash["active"] = t_active; urlHash["langx"] = _top["userData"].langx; urlHash["timestamp"] = getTimestamp(); urlHash["imp"] = _self.paramHash["imp"]; urlHash["ptype"] = _self.paramHash["ptype"]; urlHash["gwin"] = document.getElementById("bet_win_gold").innerHTML; var getHTML=new loadingRequest(); getHTML.addEventListener("LoadComplete", _self.betFinish); getHTML.loadURL("ft/ft_bet.php","POST", convertParam(urlHash)); } _self.delayFinish=function(){ if(_.timerObj != null){ if(_.timerObj["delay_timer"] != null){ _.timerObj["delay_timer"].clearObj(); _.timerObj["delay_timer"] = null; } } } _self.betFinish=function(xml){ var xmdObj = new Object(); var xmlnode=parseXml(xml); xmdObj["code"] = xmlnode.Node(xmlnode.Root[0],"code"); _self.initFinish(); try{ if(xmdObj["code"].innerHTML=="560"){ // 2017-11-02 下注完成單需讀server回傳之數值 var server_gid = xmlnode.Node(xmlnode.Root[0],"gid").innerHTML; var server_gtype = xmlnode.Node(xmlnode.Root[0],"gtype").innerHTML; var server_wtype = xmlnode.Node(xmlnode.Root[0],"wtype").innerHTML; var server_rtype = xmlnode.Node(xmlnode.Root[0],"rtype").innerHTML; var server_type = xmlnode.Node(xmlnode.Root[0],"type").innerHTML; var keys = server_gtype+"_"+server_gid+"_"+server_wtype+"_"+server_rtype+"_"+server_type; console.log(keys); if(_top["betHash"][keys]==null) return; _mc["bet_finish_orderTitle"].innerHTML = showLS("bet_receipt"); var isParlay = (_top["bet_now"]=="P")?true:false; dataClass["menu"].betToFinish(isParlay); var getMenuHash = new Object(); getMenuHash.gid = server_gid; getMenuHash.showtype = _top["betHash"][keys].showtype; getMenuHash.gtype = server_gtype; getMenuHash.wtype = server_wtype; getMenuHash.rtype = server_rtype; getMenuHash.ms = xmlnode.Node(xmlnode.Root[0],"ms").innerHTML; getMenuHash.team_h = xmlnode.Node(xmlnode.Root[0],"team_h").innerHTML; getMenuHash.team_c = xmlnode.Node(xmlnode.Root[0],"team_c").innerHTML; getMenuHash.imp = xmlnode.Node(xmlnode.Root[0],"imp").innerHTML; getMenuHash.ptype = xmlnode.Node(xmlnode.Root[0],"ptype").innerHTML; var FTmenutype = getWtypeName(getMenuHash.gid, getMenuHash.showtype, getMenuHash.gtype, getMenuHash.wtype, getMenuHash.rtype, getMenuHash.ms, getMenuHash.team_h, getMenuHash.team_c, getMenuHash.imp, getMenuHash.ptype); _mc["bet_finish_tid"].innerHTML = showTxt(getTicketType(server_wtype))+showTxt(xmlnode.Node(xmlnode.Root[0],"ticket_id").innerHTML); _mc["bet_finish_menutype"].innerHTML = showTxt(FTmenutype); var score_h = showTxt(xmlnode.Node(xmlnode.Root[0],"score_h").innerHTML)*1; var score_c = showTxt(xmlnode.Node(xmlnode.Root[0],"score_c").innerHTML)*1; var score = ""; if(isNaN(score_h)||isNaN(score_c)){ score = ""; }else{ score = "("+score_h+" - "+score_c+")"; } if(server_wtype=="SP") server_wtype = changeRtypetoWtypeSP(server_rtype); _mc["bet_finish_score"].innerHTML = (needToShowScore(server_wtype))?score:""; _mc["bet_finish_league"].innerHTML = showTxt(xmlnode.Node(xmlnode.Root[0],"league").innerHTML); var imp = showTxt(xmlnode.Node(xmlnode.Root[0],"imp").innerHTML) var ptype = showTxt(xmlnode.Node(xmlnode.Root[0],"ptype").innerHTML) var team_h = showTxt(xmlnode.Node(xmlnode.Root[0],"team_h").innerHTML); var team_c = showTxt(xmlnode.Node(xmlnode.Root[0],"team_c").innerHTML); if( imp == "Y" ){ team_h = team_h.replace(ptype,""); team_c = team_c.replace(ptype,""); }else{ team_h = team_h; team_c = team_c; } _mc["bet_finish_team_h"].innerHTML = team_h; _mc["bet_finish_team_c"].innerHTML = team_c; var strong = showTxt(xmlnode.Node(xmlnode.Root[0],"strong").innerHTML); var strObj = new Object(); if(server_type=="N") server_type = "H"; strObj["H_Y"] = "H"; strObj["C_N"] = "H"; strObj["C_Y"] = "C"; strObj["H_N"] = "C"; //strong = strObj[server_type+"_"+strong]; var ratio = xmlnode.Node(xmlnode.Root[0], "spread").innerHTML; var conObj = getConcedeStr(server_wtype,strong,ratio,false); _mc["bet_finish_con"].innerHTML = conObj["bet_finish_con"]; _mc["bet_finish_con_c"].innerHTML = conObj["bet_finish_con_c"]; try{ var dg = xmlnode.Node(xmlnode.Root[0],"ball_act").innerHTML; if(dg=="Y"){ document.getElementById("bet_finish_dg").style.display =""; setObjectClass(_mc["div_finish_content"].children[0],"betInformation betPending"); _mc["bet_finish_orderTitle"].innerHTML = showLS("bet_slip"); ticket_id = xmlnode.Node(xmlnode.Root[0],"ticket_id").innerHTML; _self.addDangerClick(ticket_id); _self.checkDanger(); _self.createDangerTimer(ticket_id); }else{ setObjectClass(_mc["div_finish_content"].children[0],"betInformation betConfirmed"); document.getElementById("bet_finish_dg").style.display ="none"; } }catch(e){} var chose_team; var _rtype = server_rtype.toLowerCase(); var newRtype = switchTeamName(server_wtype,server_rtype); if(typeof newRtype !="undefined") _rtype = newRtype; if(_top["LS"][_rtype]==null){ var Ftype="_F_RF_DC_RDC_"; if (Ftype.indexOf("_"+_self.paramHash["keepwtype"].toUpperCase()+"_")>=0){ f1=_self.paramHash["rtype"].toUpperCase().replace(_self.paramHash["keepwtype"].toUpperCase(),"").substr(0,1); f2=_self.paramHash["rtype"].toUpperCase().replace(_self.paramHash["keepwtype"].toUpperCase(),"").substr(1,1); chose_team=""; if (f1=="N" ){ chose_team+=_top["LS"]["mn"]; }else{ var choose = xmlnode.Node(xmlnode.Root[0],"team_"+f1.toLowerCase()).innerHTML; if( imp == "Y" ){ choose = choose.replace(ptype,""); } chose_team+=choose; _self.paramHash["show_team"]=true; } chose_team+=" / "; if (f2=="N" ){ chose_team+=_top["LS"]["mn"]; }else{ var choose = xmlnode.Node(xmlnode.Root[0],"team_"+f2.toLowerCase()).innerHTML; if( imp == "Y" ){ choose = choose.replace(ptype,""); } chose_team+=choose; _self.paramHash["show_team"]=true; } }else{ var tmp_type = server_type.substr(-1,1); var choose = xmlnode.Node(xmlnode.Root[0],"team_"+tmp_type.toLowerCase()).innerHTML; if( imp == "Y" ){ choose = choose.replace(ptype,""); } chose_team = choose; } }else{ var team_h = xmlnode.Node(xmlnode.Root[0],"team_h").innerHTML; var team_c = xmlnode.Node(xmlnode.Root[0],"team_c").innerHTML; chose_team = _top["LS"][_rtype]; chose_team = chose_team.replace(/\*TEAM_H\*/g,team_h); chose_team = chose_team.replace(/\*TEAM_C\*/g,team_c); if( imp == "Y" ){ chose_team = chose_team.replace(ptype,""); } } var tmp_team = ""; var get_team = getTeamWM(_rtype.toUpperCase()); if(get_team!=null){ tmp_team = showTxt(xmlnode.Node(xmlnode.Root[0],"team_"+get_team).innerHTML)+" - "; } _mc["bet_finish_chose_team"].innerHTML = tmp_team+showTxt(chose_team); _mc["bet_finish_chose_team"].className = "orderNowTeam"; if(!checkWtypeIsOU(server_wtype) && server_wtype!="W3"){ _mc["bet_finish_chose_con"].innerHTML = ""; _mc["bet_finish_chose_con"].style.display = "none"; }else{ var _abs = ""; if(_self.paramHash["keepwtype"]=="W3"){ var chose = server_type; if(chose=="N") chose="H"; if(strong==chose){ _abs = "-"; }else{ _abs = "+"; } } _mc["bet_finish_chose_con"].innerHTML = _abs + showTxt(xmlnode.Node(xmlnode.Root[0], "spread").innerHTML); _mc["bet_finish_chose_con"].style.display = ""; } _mc["bet_finish_teamname"].style.display = "none"; _mc["bet_finish_teamDiv"].style.display = ""; var tmp_ior = xmlnode.Node(xmlnode.Root[0],"ioratio").innerHTML; var tmp_gold = xmlnode.Node(xmlnode.Root[0],"gold").innerHTML; //Ricky 2017-11-15 雙盤不走四捨五入邏輯 var bet_wtype = chgTwtype(server_wtype,server_rtype); _mc["bet_finish_ior"].innerHTML = showTxt(getSWIoratioMore(tmp_ior,"","",bet_wtype)); _mc["bet_finish_gold"].innerHTML = showTxt(formatThousand(util_formatNumber(tmp_gold))); _mc["bet_finish_win_gold"].innerHTML = showTxt(formatThousand(calcWindGold(tmp_gold,tmp_ior,server_wtype))); _mc["bet_gold"].className = "txtBlack"; dataClass["menu"].getTodayWagersCount(); dataClass["order_bet"].clearOVTimer(); _self.delayFinish(); }else{ xmdObj["errormsg"] = xmlnode.Node(xmlnode.Root[0],"errormsg"); var currency = _self.paramHash["currency"]; var msg = xmdObj["errormsg"].innerHTML; dataClass["order_bet"].setBetNumVisible(false); if(xmdObj["code"].innerHTML=="570"){ msg="betError016"; dataClass["order_bet"].clearOVTimer(); tid = xmlnode.Node(xmlnode.Root[0],"ticket_id").innerHTML; t_active = xmlnode.Node(xmlnode.Root[0],"active").innerHTML; if(_.timerObj["delay_timer"] == null ){ _.timerObj["delay_timer"] = new Timer(5000,1); _.timerObj["delay_timer"].setParentclass(_self); _.timerObj["delay_timer"].init(); _.timerObj["delay_timer"].addEventListener("TimerEvent.TIMER_COMPLETE",_self.delay_bet); _.timerObj["delay_timer"].startTimer(); }else{ _.timerObj["delay_timer"].startTimer(); } dataClass["order_bet"].setErrorCode(msg); dataClass["order_bet"].setErrorMsg(_top["LS"][msg]); dataClass["order_bet"].showErrorMsg(true); return; }else{ dataClass["order_bet"].clearOVTimer(); dataClass["order_bet"].createTimer(); } var tmp = ""; if(msg=="1X020"||msg=="1X019"){ xmdObj["errorvalue"] = xmlnode.Node(xmlnode.Root[0],"errorvalue"); tmp = xmdObj["errorvalue"].innerHTML; tmp = formatThousand(tmp)+_top["LS"]["max"]; } _mc["bet_gold"].className = "txtBlack"; dataClass["order_bet"].setErrorCode(msg); dataClass["order_bet"].setErrorMsg(_top["LS"][msg]+tmp); dataClass["order_bet"].showErrorMsg(true); if(isChgIor(xmdObj["errormsg"].innerHTML) || isChgConcede(xmdObj["errormsg"].innerHTML)){ dataClass["order_bet"].orderView(); }else if(isBetTryAgain(xmdObj["errormsg"].innerHTML)){ alert(showLS("bet_try_again")); dataClass["order_bet"].setCssVisible("bet", false); }else if(xmdObj["errormsg"].innerHTML=="1X018"){ _mc["error_msg"].innerHTML += _self.paramHash["mem_so"]*1; } } }catch(e){ console.log(e); } _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].setBetNum, _mc["bet_gold"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].setBetNum, _mc["bet_gold_tt"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].clearNum, _mc["clear_btn"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].clearBet, _mc["clear_order"]); dataClass["order_bet"].setLoadingBetVisible(false); dataClass["order_bet"]._calcWinGold(); var nowCredit = xmlnode.Node(xmlnode.Root[0],"maxcredit").innerHTML; if(nowCredit!=null) _top["userData"].maxcredit = nowCredit; _mc["bet_finish_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(nowCredit))); dataClass["order_bet"].setBetting(false); } var dg_tid = 0; _self.addDangerClick=function(tid){ var obj = _mc["div_finish_content"].children[0]; obj.addEventListener("click", _self.checkDanger); dg_tid = tid; } _self.createDangerTimer=function(tid){ if(tid==0) return; dg_tid = tid; _.timerObj["dg"] = new Timer(CONFIG_DANGEROUS); _.timerObj["dg"].setParentclass(_self); _.timerObj["dg"].init(); _.timerObj["dg"].addEventListener("TimerEvent.TIMER", _self.dgTimerRun); _.timerObj["dg"].addEventListener("TimerEvent.TIMER_COMPLETE", _self.dgTimerFinish); _.timerObj["dg"].startTimer(); } _self.initFinish=function(){ var dgObj = document.getElementById("bet_finish_dg"); setObjectClass(_mc["div_finish_content"].children[0],"betInformation betConfirmed"); if(dgObj!=null) dgObj.style.display ="none"; } _self.clearDangerTimer=function(){ if(_.timerObj["dg"]!=null){ _.timerObj["dg"].clearObj(); _.timerObj["dg"]=null; } dg_tid = 0; return true; } _self.dgTimerRun=function(count){ _self.checkDanger(); } _self.dgTimerFinish=function(){ } _self.checkDanger=function(){ var par = ""; par+="uid="+_top["userData"].uid; par+="&langx="+_top["userData"].langx; par+="&type=xml"; par+="&from=bet"; par+="&tid="+dg_tid; var getHTML=new loadingRequest(); getHTML.addEventListener("LoadComplete", _self.checkDangerFinish); getHTML.loadURL("app/member/get_dangerous.php","POST", par); } _self.checkDangerFinish=function(xml){ var xmlnode = parseXml(xml); var tickets = xmlnode.Node(xmlnode.Root[0],"tickets"); var ticket = xmlnode.Node(tickets,"ticket", false); if(ticket[dg_tid]!=null){ var _status = showTxt(ticket[dg_tid].innerHTML); _self.chgDangerStatus(_status); } } _self.chgDangerStatus=function(_status){ var body_sty = ""; switch(_status){ case "A": //已確認 body_sty = "betInformation betConfirmed"; // 2018-03-06 CRM-236加強版手機 - 537.下注單-危險球待確認時 下方綠色確認 幫改成 繼續交易 (crm-248) _mc["bet_finish_close"].innerHTML = showLS("chkBet_confirm"); _self.clearDangerTimer(); break; case "R": //新邏輯 被拒絕 body_sty = "betInformation betReject"; // 2018-03-06 CRM-236加強版手機 - 537.下注單-危險球待確認時 下方綠色確認 幫改成 繼續交易 (crm-248) _mc["bet_finish_close"].innerHTML = showLS("chkBet_confirm"); _self.clearDangerTimer(); break; case "N": //確認中 default: body_sty = "betInformation betPending"; // 2018-03-06 CRM-236加強版手機 - 537.下注單-危險球待確認時 下方綠色確認 幫改成 繼續交易 (crm-248) _mc["bet_finish_close"].innerHTML = showLS("chkBet_continue"); break; } var titleObj = document.getElementById("bet_finish_dg"); var bodyObj = _mc["div_finish_content"].children[0]; setObjectClass(bodyObj, body_sty); titleObj.innerHTML = "("+_top["LS_dg"].getLS("order_finish_"+_status)+")"; } _self.closeFinish=function(){ dataClass["order_bet"].setCssVisible("finish", false); dataClass["order_bet"].clearBetData(); dataClass["menu"].setBetShow(true); dataClass["menu"].setFinishShow(false); // 2018-03-06 CRM-236加強版手機 - 537.下注單-危險球待確認時 下方綠色確認 幫改成 繼續交易 (crm-248) // 初始化 setTimeout(function(){ _mc["bet_finish_close"].innerHTML = showLS("chkBet_confirm"); },1000); } } function fs_bet(){ var _self = this; _self.classname = "fs_bet.js"; _self.paramHash = new Object(); var _mc = new Object(); _self.init=function(){ _mc["div_bet_finish_title"] = document.getElementById("div_bet_finish_title"); _mc["bet_finish_orderTitle"] = document.getElementById("bet_finish_orderTitle"); _mc["div_finish_content"] = document.getElementById("div_finish_content"); _mc["bet_finish_credit"] = document.getElementById("bet_finish_credit"); _mc["bet_finish_menutype"] = document.getElementById("bet_finish_menutype"); _mc["bet_finish_teamname"] = document.getElementById("bet_finish_teamname"); _mc["bet_finish_teamDiv"] = document.getElementById("bet_finish_teamDiv"); _mc["bet_finish_score"] = document.getElementById("bet_finish_score"); _mc["bet_finish_league"] = document.getElementById("bet_finish_league"); _mc["bet_finish_team_h"] = document.getElementById("bet_finish_team_h"); _mc["bet_finish_team_c"] = document.getElementById("bet_finish_team_c"); _mc["bet_finish_con"] = document.getElementById("bet_finish_con"); _mc["bet_finish_con_c"] =document.getElementById("bet_finish_con_c"); _mc["bet_finish_chose_team"] = document.getElementById("bet_finish_chose_team"); _mc["bet_finish_chose_con"] = document.getElementById("bet_finish_chose_con"); _mc["bet_finish_ior"] = document.getElementById("bet_finish_ior"); _mc["bet_finish_tid"] = document.getElementById("bet_finish_tid"); _mc["bet_finish_gold"] = document.getElementById("bet_finish_gold"); _mc["bet_finish_win_gold"] = document.getElementById("bet_finish_win_gold"); _mc["bet_finish_close"] = document.getElementById("bet_finish_close"); _mc["close_btn"] = document.getElementById("close_btn"); _mc["bet_gold"] = document.getElementById("bet_gold"); _mc["bet_gold_tt"] = document.getElementById("bet_gold_tt"); _mc["clear_btn"] = document.getElementById("clear_btn"); _mc["clear_order"] = document.getElementById("clear_order"); } _self.bet=function(datas){ _self.paramHash = mergeHash(_self.paramHash, datas); var keys = _self.paramHash["gtype"]+"_"+_self.paramHash["gid"]+"_"+_self.paramHash["wtype"].toUpperCase()+"_"+_self.paramHash["rtype"].toUpperCase(); _top["betHash"][keys] = new Object(); _top["betHash"][keys].gid = _self.paramHash["gid"]; _top["betHash"][keys].gtype = _self.paramHash["gtype"]; _top["betHash"][keys].wtype = _self.paramHash["wtype"].toUpperCase(); _top["betHash"][keys].rtype = _self.paramHash["rtype"].toUpperCase(); _top["betHash"][keys].showtype = _self.paramHash["showtype"]; var urlHash = new Array(); urlHash["uid"] = _top["userData"].uid; urlHash["langx"] = _top["userData"].langx; urlHash["gid"] = _self.paramHash["gid"]; urlHash["gtype"] = _self.paramHash["gtype"]; urlHash["wtype"] = _self.paramHash["wtype"]; urlHash["rtype"] = _self.paramHash["rtype"]; urlHash["odd_f_type"] = _self.paramHash["odd_f_type"]; urlHash["golds"] = _self.paramHash["golds"]; urlHash["ioratio"] = _self.paramHash["ioratio"]; urlHash["autoOdd"] = _self.paramHash["autoOdd"]; urlHash["timestamp"] = getTimestamp(); _self.removeEventListener("MouseEvent.CLICK",_mc["bet_gold"]); _self.removeEventListener("MouseEvent.CLICK",_mc["bet_gold_tt"]); _self.removeEventListener("MouseEvent.CLICK",_mc["clear_btn"]); _self.removeEventListener("MouseEvent.CLICK",_mc["clear_order"]); _mc["bet_gold"].className = "txtGray"; var getHTML=new loadingRequest(); var gtype = _self.paramHash["gtype"].toLowerCase(); getHTML.addEventListener("LoadComplete", _self.betFinish); getHTML.loadURL(gtype+"/"+gtype+"_bet_fs.php","POST", convertParam(urlHash)); } _self.betFinish=function(xml){ var xmdObj = new Object(); var xmlnode=parseXml(xml); xmdObj["code"] = xmlnode.Node(xmlnode.Root[0],"code"); dataClass["ft_bet"].initFinish(); if(xmdObj["code"].innerHTML=="560"){ // 2017-11-02 下注完成單需讀server回傳之數值 var server_gid = xmlnode.Node(xmlnode.Root[0],"gid").innerHTML; var server_gtype = xmlnode.Node(xmlnode.Root[0],"gtype").innerHTML; var server_wtype = xmlnode.Node(xmlnode.Root[0],"wtype").innerHTML; var server_rtype = xmlnode.Node(xmlnode.Root[0],"rtype").innerHTML; var keys = server_gtype+"_"+server_gid+"_"+server_wtype+"_"+server_rtype; if(_top["betHash"][keys]==null) return; _mc["bet_finish_orderTitle"].innerHTML = showLS("bet_receipt"); var isParlay = (_top["bet_now"]=="P")?true:false; dataClass["menu"].betToFinish(isParlay); var getMenuHash = new Object(); getMenuHash.gid = server_gid; getMenuHash.showtype = _top["betHash"][keys].showtype; getMenuHash.gtype = server_gtype; getMenuHash.wtype = server_wtype; getMenuHash.rtype = server_rtype; getMenuHash.ms = ""; getMenuHash.team_h = ""; getMenuHash.team_c = ""; getMenuHash.imp = ""; getMenuHash.ptype = ""; var FTmenutype = getWtypeName(getMenuHash.gid, getMenuHash.showtype, getMenuHash.gtype, getMenuHash.wtype, getMenuHash.rtype, getMenuHash.ms, getMenuHash.team_h, getMenuHash.team_c, getMenuHash.imp, getMenuHash.ptype); _mc["bet_finish_tid"].innerHTML = showTxt(getTicketType(server_wtype))+showTxt(xmlnode.Node(xmlnode.Root[0],"ticket_id").innerHTML); _mc["bet_finish_menutype"].innerHTML = showTxt(FTmenutype); _mc["bet_finish_score"].innerHTML = ""; _mc["bet_finish_score"].style.display = "none"; _mc["bet_finish_league"].innerHTML = showTxt(xmlnode.Node(xmlnode.Root[0],"league").innerHTML); _mc["bet_finish_teamname"].innerHTML = showTxt(xmlnode.Node(xmlnode.Root[0],"teamname").innerHTML); if (_self.paramHash["keepwtype"]="SFS"){ _mc["bet_finish_teamname"].innerHTML+=showTxt(xmlnode.Node(xmlnode.Root[0],"stype_name").innerHTML); } _mc["bet_finish_chose_team"].innerHTML = showTxt(xmlnode.Node(xmlnode.Root[0],"rtype_name").innerHTML); _mc["bet_finish_chose_team"].className = "orderNowTeam_R"; _mc["bet_finish_chose_con"].innerHTML = ""; var tmp_ior = xmlnode.Node(xmlnode.Root[0],"ioratio").innerHTML; var tmp_gold = xmlnode.Node(xmlnode.Root[0],"gold").innerHTML; _mc["bet_finish_teamname"].style.display = ""; _mc["bet_finish_teamDiv"].style.display = "none"; _mc["bet_finish_chose_con"].style.display = "none"; _mc["bet_finish_ior"].innerHTML = showTxt(getSWIoratioMore(tmp_ior,"","",server_wtype)); _mc["bet_finish_gold"].innerHTML = showTxt(formatThousand(util_formatNumber(tmp_gold))); _mc["bet_finish_win_gold"].innerHTML = showTxt(formatThousand(calcWindGold(tmp_gold,tmp_ior,server_wtype))); _mc["bet_gold"].className = "txtBlack"; dataClass["menu"].getTodayWagersCount(); dataClass["order_bet_fs"].clearOVTimer(); }else{ dataClass["order_bet_fs"].clearOVTimer(); dataClass["order_bet_fs"].createTimer(); xmdObj["errormsg"] = xmlnode.Node(xmlnode.Root[0],"errormsg"); _mc["bet_gold"].className = "txtBlack"; dataClass["order_bet_fs"].setErrorCode(xmdObj["errormsg"].innerHTML); dataClass["order_bet"].setErrorMsg(xmdObj["errormsg"].innerHTML); dataClass["order_bet"].showErrorMsg(true); if(isChgIor(xmdObj["errormsg"].innerHTML)){ dataClass["order_bet_fs"].orderView(); }else if(isBetTryAgain(xmdObj["errormsg"].innerHTML)){ alert(showLS("bet_try_again")); dataClass["order_bet_fs"].setCssVisible("bet", false); } } _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].setBetNum, _mc["bet_gold"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].setBetNum, _mc["bet_gold_tt"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].clearNum, _mc["clear_btn"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].clearBet, _mc["clear_order"]); dataClass["order_bet"].setLoadingBetVisible(false); var nowCredit = xmlnode.Node(xmlnode.Root[0],"maxcredit").innerHTML; if(nowCredit!=null) _top["userData"].maxcredit = nowCredit; _mc["bet_finish_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(nowCredit))); dataClass["order_bet"].setBetting(false); } } function other_bet(){ var _self = this; _self.classname = "other_bet.js"; _self.paramHash = new Object(); var _mc = new Object(); var check_ary = new Array("hrh","hrc","hmh","hmc","hreh","hrec","hrmh","hrmc"); var tid = ""; var t_active = ""; _self.init=function(){ _mc["div_bet_finish_title"] = document.getElementById("div_bet_finish_title"); _mc["bet_finish_orderTitle"] = document.getElementById("bet_finish_orderTitle"); _mc["bet_finish_teamDiv"] = document.getElementById("bet_finish_teamDiv"); _mc["div_finish_content"] = document.getElementById("div_finish_content"); _mc["bet_finish_credit"] = document.getElementById("bet_finish_credit"); _mc["bet_finish_menutype"] = document.getElementById("bet_finish_menutype"); _mc["bet_finish_teamname"] = document.getElementById("bet_finish_teamname"); _mc["bet_finish_score"] = document.getElementById("bet_finish_score"); _mc["bet_finish_league"] = document.getElementById("bet_finish_league"); _mc["bet_finish_team_h"] = document.getElementById("bet_finish_team_h"); _mc["bet_finish_team_c"] = document.getElementById("bet_finish_team_c"); _mc["bet_finish_con"] = document.getElementById("bet_finish_con"); _mc["bet_finish_con_c"] =document.getElementById("bet_finish_con_c"); _mc["bet_finish_chose_team"] = document.getElementById("bet_finish_chose_team"); _mc["bet_finish_chose_con"] = document.getElementById("bet_finish_chose_con"); _mc["bet_finish_ior"] = document.getElementById("bet_finish_ior"); _mc["bet_finish_tid"] = document.getElementById("bet_finish_tid"); _mc["bet_finish_gold"] = document.getElementById("bet_finish_gold"); _mc["bet_finish_win_gold"] = document.getElementById("bet_finish_win_gold"); _mc["bet_finish_close"] = document.getElementById("bet_finish_close"); _mc["close_btn"] = document.getElementById("close_btn"); _mc["bet_gold"] = document.getElementById("bet_gold"); _mc["bet_gold_tt"] = document.getElementById("bet_gold_tt"); _mc["clear_btn"] = document.getElementById("clear_btn"); _mc["clear_order"] = document.getElementById("clear_order"); } _self.bet=function(datas){ _self.paramHash = mergeHash(_self.paramHash, datas); var keys = _self.paramHash["gtype"]+"_"+_self.paramHash["gid"]+"_"+_self.paramHash["wtype"].toUpperCase()+"_"+_self.paramHash["rtype"].toUpperCase()+"_"+_self.paramHash["chose_team"].toUpperCase(); _top["betHash"][keys] = new Object(); _top["betHash"][keys].gid =_self.paramHash["gid"]; _top["betHash"][keys].gtype = _self.paramHash["gtype"]; _top["betHash"][keys].wtype = _self.paramHash["wtype"].toUpperCase(); _top["betHash"][keys].rtype = _self.paramHash["rtype"].toUpperCase(); _top["betHash"][keys].showtype = _self.paramHash["showtype"]; var urlHash = new Array(); urlHash["uid"] = _top["userData"].uid; urlHash["langx"] = _top["userData"].langx; urlHash["odd_f_type"] = _top["userData"].odd_f_type; urlHash["golds"] = _self.paramHash["golds"]; urlHash["gid"] = _self.paramHash["gid"]; urlHash["gtype"] = _self.paramHash["gtype"]; urlHash["wtype"] = _self.paramHash["wtype"].toUpperCase(); urlHash["rtype"] = _self.paramHash["rtype"].toUpperCase(); urlHash["chose_team"] = _self.paramHash["chose_team"]; urlHash["ioratio"] = _self.paramHash["ioratio"]; urlHash["con"] = _self.paramHash["con"]; urlHash["ratio"] = _self.paramHash["ratio"]; urlHash["autoOdd"] = _self.paramHash["autoOdd"]; urlHash["timestamp"] = getTimestamp(); urlHash["isRB"] = (isRBWtype(_self.paramHash["wtype"]))?"Y":"N"; urlHash["gwin"] = document.getElementById("bet_win_gold").innerHTML; _self.removeEventListener("MouseEvent.CLICK",_mc["bet_gold"]); _self.removeEventListener("MouseEvent.CLICK",_mc["bet_gold_tt"]); _self.removeEventListener("MouseEvent.CLICK",_mc["clear_btn"]); _self.removeEventListener("MouseEvent.CLICK",_mc["clear_order"]); _mc["bet_gold"].className = "txtGray"; var getHTML=new loadingRequest(); var gtype = _self.paramHash["gtype"].toLowerCase(); getHTML.addEventListener("LoadComplete", _self.betFinish); getHTML.loadURL(gtype+"/"+gtype+"_bet.php","POST", convertParam(urlHash)); } _self.delay_bet=function(){ var urlHash = new Array(); urlHash["uid"] = _top["userData"].uid; urlHash["gtype"] = _self.paramHash["gtype"]; urlHash["gid"] = _self.paramHash["gid"]; urlHash["ticket_id"] = tid; urlHash["active"] = t_active; urlHash["langx"] = _top["userData"].langx; urlHash["timestamp"] = getTimestamp(); urlHash["gwin"] = document.getElementById("bet_win_gold").innerHTML; var getHTML=new loadingRequest(); var gtype = _self.paramHash["gtype"].toLowerCase(); getHTML.addEventListener("LoadComplete", _self.betFinish); getHTML.loadURL(gtype+"/"+gtype+"_bet.php","POST", convertParam(urlHash)); } _self.delayFinish=function(){ if(_.timerObj != null){ if(_.timerObj["delay_timer"] != null){ _.timerObj["delay_timer"].clearObj(); _.timerObj["delay_timer"] = null; } } } _self.betFinish=function(xml){ var xmdObj = new Object(); var xmlnode=parseXml(xml); xmdObj["code"] = xmlnode.Node(xmlnode.Root[0],"code"); dataClass["ft_bet"].initFinish(); try{ if(xmdObj["code"].innerHTML=="560"){ // 2017-11-02 下注完成單需讀server回傳之數值 var server_gid = xmlnode.Node(xmlnode.Root[0],"gid").innerHTML; var server_gtype = xmlnode.Node(xmlnode.Root[0],"gtype").innerHTML; var server_wtype = xmlnode.Node(xmlnode.Root[0],"wtype").innerHTML; var server_rtype = xmlnode.Node(xmlnode.Root[0],"rtype").innerHTML; var server_type = xmlnode.Node(xmlnode.Root[0],"type").innerHTML; var keys = server_gtype+"_"+server_gid+"_"+server_wtype+"_"+server_rtype+"_"+server_type; if(_top["betHash"][keys]==null) return; _mc["bet_finish_orderTitle"].innerHTML = showLS("bet_receipt"); var isParlay = (_top["bet_now"]=="P")?true:false; dataClass["menu"].betToFinish(isParlay); _mc["bet_finish_tid"].innerHTML = showTxt(getTicketType(server_wtype))+showTxt(xmlnode.Node(xmlnode.Root[0],"ticket_id").innerHTML); var getMenuHash = new Object(); getMenuHash.gid = server_gid; getMenuHash.showtype = _top["betHash"][keys].showtype; getMenuHash.gtype = server_gtype; getMenuHash.wtype = server_wtype; getMenuHash.rtype = server_rtype; getMenuHash.ms = xmlnode.Node(xmlnode.Root[0],"ms").innerHTML; getMenuHash.team_h = xmlnode.Node(xmlnode.Root[0],"team_h").innerHTML; getMenuHash.team_c = xmlnode.Node(xmlnode.Root[0],"team_c").innerHTML; getMenuHash.imp = ""; getMenuHash.ptype = ""; var FTmenutype = getWtypeName(getMenuHash.gid, getMenuHash.showtype, getMenuHash.gtype, getMenuHash.wtype, getMenuHash.rtype, getMenuHash.ms, getMenuHash.team_h, getMenuHash.team_c, getMenuHash.imp, getMenuHash.ptype); _mc["bet_finish_menutype"].innerHTML = showTxt(FTmenutype); var score_h = showTxt(xmlnode.Node(xmlnode.Root[0],"score_h").innerHTML)*1; var score_c = showTxt(xmlnode.Node(xmlnode.Root[0],"score_c").innerHTML)*1; var score = ""; if(isNaN(score_h)||isNaN(score_c)){ score = ""; }else{ score = "("+score_h+" - "+score_c+")"; } _mc["bet_finish_score"].innerHTML = ""; _mc["bet_finish_score"].style.display = "none"; _mc["bet_finish_league"].innerHTML = showTxt(xmlnode.Node(xmlnode.Root[0],"league").innerHTML); _mc["bet_finish_team_h"].innerHTML = showTxt(xmlnode.Node(xmlnode.Root[0],"team_h").innerHTML); _mc["bet_finish_team_c"].innerHTML = showTxt(xmlnode.Node(xmlnode.Root[0],"team_c").innerHTML); var strong = showTxt(xmlnode.Node(xmlnode.Root[0],"strong").innerHTML); var strObj = new Object(); strObj["H_Y"] = "H"; strObj["C_N"] = "H"; strObj["C_Y"] = "C"; strObj["H_N"] = "C"; //strong = strObj[server_type+"_"+strong]; var ratio = xmlnode.Node(xmlnode.Root[0], "spread").innerHTML; var conObj = getConcedeStr(server_wtype,strong,ratio,false); _mc["bet_finish_con"].innerHTML = conObj["bet_finish_con"]; _mc["bet_finish_con_c"].innerHTML = conObj["bet_finish_con_c"]; var chose_team; var _rtype = server_rtype.toLowerCase(); var newRtype = switchTeamName(server_wtype,server_rtype); if(typeof newRtype !="undefined") _rtype = newRtype; if(server_gtype.toUpperCase()=="BS" && checkWtypeIsWM(server_wtype)){ chose_team = _top["LS"][_rtype+"_"+server_gtype.toLowerCase()]; }else if(_top["LS"][_rtype]==null){ var Ftype="_F_RF_DC_RDC_"; if (Ftype.indexOf("_"+_self.paramHash["keepwtype"].toUpperCase()+"_")>=0){ f1=_self.paramHash["rtype"].toUpperCase().replace(_self.paramHash["keepwtype"].toUpperCase(),"").substr(0,1); f2=_self.paramHash["rtype"].toUpperCase().replace(_self.paramHash["keepwtype"].toUpperCase(),"").substr(1,1); chose_team=""; if (f1=="N" ){ chose_team+=_top["LS"]["mn"]; }else{ chose_team+=xmlnode.Node(xmlnode.Root[0],"team_"+f1.toLowerCase()).innerHTML; _self.paramHash["show_team"]=true; } chose_team+=" / "; if (f2=="N" ){ chose_team+=_top["LS"]["mn"]; }else{ chose_team+=xmlnode.Node(xmlnode.Root[0],"team_"+f2.toLowerCase()).innerHTML; _self.paramHash["show_team"]=true; } }else{ chose_team = showTxt(xmlnode.Node(xmlnode.Root[0],"team_"+server_type).innerHTML); } }else{ var team_h = xmlnode.Node(xmlnode.Root[0],"team_h").innerHTML; var team_c = xmlnode.Node(xmlnode.Root[0],"team_c").innerHTML; chose_team = _top["LS"][_rtype]; chose_team = chose_team.replace(/\*TEAM_H\*/g,team_h); chose_team = chose_team.replace(/\*TEAM_C\*/g,team_c); } var tmp_team = ""; var get_team = getTeamWM(_rtype.toUpperCase()); if(get_team!=null){ tmp_team = showTxt(xmlnode.Node(xmlnode.Root[0],"team_"+get_team).innerHTML)+" - "; } _mc["bet_finish_chose_team"].innerHTML = tmp_team+showTxt(chose_team); _mc["bet_finish_chose_team"].className = "orderNowTeam"; if(!checkWtypeIsOU(server_wtype) && server_wtype!="W3"){ _mc["bet_finish_chose_con"].innerHTML = ""; _mc["bet_finish_chose_con"].style.display = "none"; }else{ var _abs = ""; if(_self.paramHash["keepwtype"]=="W3"){ var chose = server_type; if(chose=="N") chose="H"; if(strong==chose){ _abs = "-"; }else{ _abs = "+"; } } _mc["bet_finish_chose_con"].innerHTML = _abs + showTxt(xmlnode.Node(xmlnode.Root[0], "spread").innerHTML); _mc["bet_finish_chose_con"].style.display = ""; } _mc["bet_finish_teamname"].style.display = "none"; _mc["bet_finish_teamDiv"].style.display = ""; var tmp_ior = xmlnode.Node(xmlnode.Root[0],"ioratio").innerHTML; var tmp_gold = xmlnode.Node(xmlnode.Root[0],"gold").innerHTML; //Ricky 2017-11-15 雙盤不走四捨五入邏輯 var bet_wtype = chgTwtype(server_wtype,server_rtype); _mc["bet_finish_ior"].innerHTML = showTxt(getSWIoratioMore(tmp_ior,"","",bet_wtype)); _mc["bet_finish_gold"].innerHTML = showTxt(formatThousand(util_formatNumber(tmp_gold))); _mc["bet_finish_win_gold"].innerHTML = showTxt(formatThousand(calcWindGold(tmp_gold,tmp_ior,server_wtype))); _mc["bet_gold"].className = "txtBlack"; dataClass["menu"].getTodayWagersCount(); dataClass["order_bet"].clearOVTimer(); }else{ xmdObj["errormsg"] = xmlnode.Node(xmlnode.Root[0],"errormsg"); var currency = _self.paramHash["currency"]; var msg = xmdObj["errormsg"].innerHTML; dataClass["order_bet"].setBetNumVisible(false); if(xmdObj["code"].innerHTML=="570"){ msg="betError016"; dataClass["order_bet"].clearOVTimer(); tid = xmlnode.Node(xmlnode.Root[0],"ticket_id").innerHTML; t_active = xmlnode.Node(xmlnode.Root[0],"active").innerHTML; if(_.timerObj["delay_timer"] == null ){ _.timerObj["delay_timer"] = new Timer(5000,1); _.timerObj["delay_timer"].setParentclass(_self); _.timerObj["delay_timer"].init(); _.timerObj["delay_timer"].addEventListener("TimerEvent.TIMER_COMPLETE",_self.delay_bet); _.timerObj["delay_timer"].startTimer(); }else{ _.timerObj["delay_timer"].startTimer(); } dataClass["order_bet"].setErrorCode(msg); dataClass["order_bet"].setErrorMsg(_top["LS"][msg]); dataClass["order_bet"].showErrorMsg(true); return; }else{ dataClass["order_bet"].clearOVTimer(); dataClass["order_bet"].createTimer(); } var tmp = ""; if(msg=="1X020"||msg=="1X019"){ xmdObj["errorvalue"] = xmlnode.Node(xmlnode.Root[0],"errorvalue"); tmp = xmdObj["errorvalue"].innerHTML; tmp = formatThousand(tmp)+_top["LS"]["max"]; } _mc["bet_gold"].className = "txtBlack"; dataClass["order_bet"].setErrorCode(msg); dataClass["order_bet"].setErrorMsg(_top["LS"][msg]+tmp); dataClass["order_bet"].showErrorMsg(true); if(isChgIor(xmdObj["errormsg"].innerHTML) || isChgConcede(xmdObj["errormsg"].innerHTML)){ dataClass["order_bet"].orderView(); }else if(isBetTryAgain(xmdObj["errormsg"].innerHTML)){ alert(showLS("bet_try_again")); dataClass["order_bet"].setCssVisible("bet", false); }else if(xmdObj["errormsg"].innerHTML=="1X018"){ _mc["error_msg"].innerHTML += _self.paramHash["mem_so"]*1; } } }catch(e){ console.log(e); } _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].setBetNum, _mc["bet_gold"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].setBetNum, _mc["bet_gold_tt"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].clearNum, _mc["clear_btn"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].clearBet, _mc["clear_order"]); dataClass["order_bet"].setLoadingBetVisible(false); dataClass["order_bet"]._calcWinGold(); var nowCredit = xmlnode.Node(xmlnode.Root[0],"maxcredit").innerHTML; if(nowCredit!=null) _top["userData"].maxcredit = nowCredit; _mc["bet_finish_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(nowCredit))); dataClass["order_bet"].setBetting(false); } } function parlay_bet(){ var _self = this; _self.classname = "parlay_bet.js"; _self.paramHash = new Object(); var errorCode = ""; var errorData = ""; var _mc = new Object(); _self.init=function(){ _mc["div_bet_finish_title"] = document.getElementById("div_bet_finish_title"); _mc["bet_finish_orderTitle"] = document.getElementById("bet_finish_orderTitle"); _mc["bet_finish_teamDiv"] = document.getElementById("bet_finish_teamDiv"); _mc["div_finish_content"] = document.getElementById("div_finish_content"); _mc["bet_finish_credit"] = document.getElementById("bet_finish_credit"); _mc["bet_finish_menutype"] = document.getElementById("bet_finish_menutype"); _mc["bet_finish_teamname"] = document.getElementById("bet_finish_teamname"); _mc["bet_finish_teamDiv"] = document.getElementById("bet_finish_teamDiv"); _mc["bet_finish_score"] = document.getElementById("bet_finish_score"); _mc["bet_finish_league"] = document.getElementById("bet_finish_league"); _mc["bet_finish_team_h"] = document.getElementById("bet_finish_team_h"); _mc["bet_finish_team_c"] = document.getElementById("bet_finish_team_c"); _mc["bet_finish_con"] = document.getElementById("bet_finish_con"); _mc["bet_finish_con_c"] =document.getElementById("bet_finish_con_c"); _mc["bet_finish_chose_team"] = document.getElementById("bet_finish_chose_team"); _mc["bet_finish_chose_con"] = document.getElementById("bet_finish_chose_con"); _mc["bet_finish_ior"] = document.getElementById("bet_finish_ior"); _mc["bet_finish_tid"] = document.getElementById("bet_finish_tid"); _mc["bet_finish_gold"] = document.getElementById("bet_finish_gold"); _mc["bet_finish_win_gold"] = document.getElementById("bet_finish_win_gold"); _mc["bet_finish_close"] = document.getElementById("bet_finish_close"); _mc["parlay_finish_show"] = document.getElementById("parlay_finish_show"); _mc["close_btn"] = document.getElementById("close_btn"); _mc["bet_gold"] = document.getElementById("bet_gold"); _mc["bet_gold_tt"] = document.getElementById("bet_gold_tt"); _mc["clear_btn"] = document.getElementById("clear_btn"); _mc["clear_order"] = document.getElementById("clear_order"); } _self.bet=function(datas){ _self.paramHash = mergeHash(_self.paramHash, datas); _self.paramHash["betdata"] = switchBetRtypeP(_self.paramHash["betdata"]); var viewData = _self.paramHash["viewdata"].split("^"); var viewDate = _self.paramHash["viewdate"].split("^"); var ParlayData = ""; for(var i = 0; i < viewData.length; i++){ ParlayData += viewData[i]+"!"+viewDate[i]+"^"; } if(ParlayData.substr(-1,1)=="^") ParlayData = ParlayData.substr(0,ParlayData.length-1); var keys = _self.paramHash["gtype"]+"_"+_self.paramHash["wtype"]+"_"+ParlayData+"_"+viewData.length; _top["betHash"][keys] = new Object(); _top["betHash"][keys].gtype = _self.paramHash["gtype"]; _top["betHash"][keys].wtype = _self.paramHash["wtype"].toUpperCase(); _top["betHash"][keys].betData = ParlayData; var urlHash = new Array(); urlHash["uid"] = _top["userData"].uid; urlHash["langx"] = _top["userData"].langx; urlHash["betdata"] = _self.paramHash["betdata"]; urlHash["gtype"] = _self.paramHash["gtype"]; urlHash["wtype"] = _self.paramHash["wtype"]; urlHash["golds"] = _self.paramHash["golds"]; urlHash["timestamp"] = getTimestamp(); urlHash["gwin"] = document.getElementById("bet_win_gold").innerHTML; _self.removeEventListener("MouseEvent.CLICK",_mc["bet_gold"]); _self.removeEventListener("MouseEvent.CLICK",_mc["bet_gold_tt"]); _self.removeEventListener("MouseEvent.CLICK",_mc["clear_btn"]); _self.removeEventListener("MouseEvent.CLICK",_mc["clear_order"]); _mc["bet_gold"].className = "txtGray"; var getHTML=new loadingRequest(); var gtype = _self.paramHash["gtype"].toLowerCase(); getHTML.addEventListener("LoadComplete", _self.betFinish); getHTML.loadURL(gtype+"/"+gtype+"_bet_p.php","POST", convertParam(urlHash)); } _self.betFinish=function(xml){ var xmdObj = new Object(); var xmlnode=parseXml(xml); xmdObj["code"] = xmlnode.Node(xmlnode.Root[0],"code"); var order_show = document.getElementById("parlay_finish_show"); order_show.innerHTML = ""; dataClass["ft_bet"].initFinish(); if(xmdObj["code"].innerHTML=="560"){ // 2017-11-15 下注完成單需讀server回傳之數值 var game_ary = xmlnode.Node(xmlnode.Root[0],"game", false); var count_p = xmlnode.Node(xmlnode.Root[0],"count_p").innerHTML; var server_gtype = xmlnode.Node(xmlnode.Root[0],"gtype").innerHTML; var server_wtype = xmlnode.Node(xmlnode.Root[0],"wtype").innerHTML; var ParlayData = ""; for(var i = 0; i < count_p ; i++){ var game = game_ary[i]; var server_gid = showTxt(xmlnode.Node(game,"gid").innerHTML); var server_rtype = showTxt(xmlnode.Node(game,"rtype").innerHTML); var server_date = showTxt(xmlnode.Node(game,"date").innerHTML); ParlayData += server_gid+"!"+server_rtype+"!"+server_date+"^"; } if(ParlayData.substr(-1,1)=="^") ParlayData = ParlayData.substr(0,ParlayData.length-1); var keys = server_gtype+"_"+server_wtype+"_"+ParlayData+"_"+count_p; if(_top["betHash"][keys]==null) return; _mc["bet_finish_orderTitle"].innerHTML = showLS("bet_receiptP"); var isParlay = (_top["bet_now"]=="P")?true:false; dataClass["menu"].betToFinish(isParlay); var tmp_gold = xmlnode.Node(xmlnode.Root[0],"gold").innerHTML; var tmp_win_gold = dataClass["order_bet_p"].calcWinGoldP(); _mc["bet_finish_tid"].innerHTML = showTxt(getTicketType(_self.paramHash["wtype"])+xmlnode.Node(xmlnode.Root[0],"wager_id").innerHTML); _mc["bet_finish_gold"].innerHTML = showTxt(formatThousand(tmp_gold)); //0423,Leslie,Q291 _mc["bet_finish_win_gold"].innerHTML = showTxt(tmp_win_gold); _mc["parlay_finish_show"].innerHTML = ""; var tmp_screen = ""; for(var i=0; i < count_p; i++){ var game = game_ary[i]; var _gid = showTxt(xmlnode.Node(game,"gid").innerHTML); var _rtype = showTxt((switchRtypetoFinish(_top["ptypeHash"][_gid].keepwtype,xmlnode.Node(game,"rtype").innerHTML)).toLowerCase()); var _t = getTeamP(_rtype.toLowerCase()); var _choice = (_t!=null)?_t:_rtype.substr(_rtype.length-1,1); var imp = (_top["ptypeHash"][_gid].imp!=null)?_top["ptypeHash"][_gid].imp:""; var ptype = (_top["ptypeHash"][_gid].ptype!=null)?_top["ptypeHash"][_gid].ptype:""; if(game!=null){ var div_model = document.getElementById("parlay_finish_model").innerHTML; div_model = div_model.replace("","").replace("","").replace("","").replace("",""); var getMenuHash = new Object(); getMenuHash.gid = _gid; getMenuHash.showtype = ""; getMenuHash.gtype = server_gtype; getMenuHash.wtype = _top["ptypeHash"][_gid].keepwtype; getMenuHash.rtype = _rtype; getMenuHash.ms = _top["ptypeHash"][_gid].ms; getMenuHash.team_h = xmlnode.Node(game,"team_h").innerHTML; getMenuHash.team_c = xmlnode.Node(game,"team_c").innerHTML; getMenuHash.imp = imp; getMenuHash.ptype = ptype; var FTmenutype = getWtypeName(getMenuHash.gid, getMenuHash.showtype, getMenuHash.gtype, getMenuHash.wtype, getMenuHash.rtype, getMenuHash.ms, getMenuHash.team_h, getMenuHash.team_c, getMenuHash.imp, getMenuHash.ptype); // 下注隊伍 console.log("Finish->"+_rtype); if(server_gtype.toUpperCase()=="BS" && checkWtypeIsWM(_top["ptypeHash"][_gid].keepwtype)){ chose_team = _top["LS"][_rtype+"_"+server_gtype.toLowerCase()]; }else if(_top["LS"][_rtype]==null){ //0409,Lslie,Q253 var Ftype="_F_RF_DC_RDC_"; if (Ftype.indexOf("_"+ _top["ptypeHash"][_gid].keepwtype.toUpperCase()+"_")>=0){ f1=_rtype.toUpperCase().replace(_top["ptypeHash"][_gid].keepwtype.toUpperCase(),"").substr(0,1); f2=_rtype.toUpperCase().replace(_top["ptypeHash"][_gid].keepwtype.toUpperCase(),"").substr(1,1); choice_team=""; if (f1=="N" ){ choice_team+=_top["LS"]["mn"]; }else{ var choose = xmlnode.Node(game,"team_"+f1).innerHTML.split("-")[0]; if( imp == "Y" ){ choose = choose.replace(ptype,""); }else{ choose = choose+ptype; } choice_team+=choose; } choice_team+=" / "; if (f2=="N" ){ choice_team+=_top["LS"]["mn"]; }else{ var choose = xmlnode.Node(game,"team_"+f2).innerHTML.split("-")[0]; if( imp == "Y" ){ choose = choose.replace(ptype,""); }else{ choose = choose.replace(" ","")+ptype; } choice_team+=choose; } }else{ var choose = xmlnode.Node(game,"team_"+_choice).innerHTML.split("-")[0]; if( imp == "Y" ){ choose = choose.replace(ptype,""); }else{ choose = choose+ptype; } choice_team = choose; } }else{ choice_team = _top["LS"][_rtype]; choice_team = choice_team.replace(/\*TEAM_H\*/g,xmlnode.Node(game,"team_h").innerHTML); choice_team = choice_team.replace(/\*TEAM_C\*/g,xmlnode.Node(game,"team_c").innerHTML); } var tmp_team = ""; var get_team = getTeamWM(_rtype); if(get_team!=null){ tmp_team = showTxt(xmlnode.Node(game,"team_"+get_team).innerHTML)+" - "; if( tmp_team.indexOf(_top["ptypeHash"][_gid].ptype)!=-1 ) tmp_team = tmp_team.replace(_top["ptypeHash"][_gid].ptype,""); } // 多type if( imp == "Y" && choice_team.indexOf(_top["ptypeHash"][_gid].ptype)!=-1 ) { var tmp_ptype = _top["ptypeHash"][_gid].ptype.replace(/\(/g,"\\\(").replace(/\)/g,"\\\)"); choice_team = choice_team.replace(new RegExp(tmp_ptype, 'g'),''); } // 過關下注場次日期 var tmp_date = showTxt(xmlnode.Node(game,"date").innerHTML); var tmp_mon = tmp_date.substr(5,2); var tmp_day = tmp_date.substr(8,2); var tmp_league = ""; if(_top["userData"].langx=="zh-tw" || _top["userData"].langx=="zh-cn"){ tmp_league = tmp_day + "-" + tmp_mon + " " + showTxt(xmlnode.Node(game,"league").innerHTML); }else{ tmp_league = tmp_day + "-" + tmp_mon + " " + showTxt(xmlnode.Node(game,"league").innerHTML); } div_model = div_model.replace(/\*MENUTYPE\*/g, FTmenutype); //Leslie 0403 div_model = div_model.replace(/\*LEAGUE\*/g, tmp_league); div_model = div_model.replace(/\*LEAGUE\*/g, showTxt(xmlnode.Node(game,"league").innerHTML)); div_model = div_model.replace(/\*TEAM_H\*/g, showTxt(xmlnode.Node(game,"team_h").innerHTML)); div_model = div_model.replace(/\*TEAM_C\*/g, showTxt(xmlnode.Node(game,"team_c").innerHTML)); div_model = div_model.replace(/\*CHOICE_TEAM\*/g, tmp_team+showTxt(choice_team)); var tmp_ior = util_formatNumber(xmlnode.Node(game,"ioratio").innerHTML); //Ricky 2017-11-15 雙盤不走四捨五入邏輯 var bet_wtype = chgTwtype(_top["ptypeHash"][_gid].keepwtype,_rtype); div_model = div_model.replace(/\*IORATIO\*/g, showTxt(getSWIoratioMore(tmp_ior,null,false,_top["ptypeHash"][_gid].keepwtype.toUpperCase()))); var strong = xmlnode.Node(game,"strong").innerHTML; var _abs = ""; if(_top["ptypeHash"][_gid].keepwtype=="W3"){ var chose = _choice.toUpperCase(); if(chose=="N") chose="H"; if(strong==chose){ _abs = "-"; }else{ _abs = "+"; } } var choice_con = showConcede(_top["ptypeHash"][_gid].keepwtype,showTxt(xmlnode.Node(game,"combine").innerHTML)); div_model = div_model.replace(/\*CHOICE_CON\*/g, _abs+choice_con); if(checkWtypeIsR(_top["ptypeHash"][_gid].keepwtype) && _top["ptypeHash"][_gid].keepwtype.toUpperCase()!="W3"){ if(strong=="H"){ div_model = div_model.replace(/\*CON\*/g, _abs+showTxt(getSWConcedeMore(xmlnode.Node(game,"combine").innerHTML,null,false))); div_model = div_model.replace(/\*CON_C\*/g, ""); div_model = div_model.replace(/\*DISPLAY_CON\*/g, ""); div_model = div_model.replace(/\*DISPLAY_CON_C\*/g, "display:none"); }else{ div_model = div_model.replace(/\*CON\*/g, ""); div_model = div_model.replace(/\*CON_C\*/g, _abs+showTxt(getSWConcedeMore(xmlnode.Node(game,"combine").innerHTML,null,false))); div_model = div_model.replace(/\*DISPLAY_CON\*/g, "display:none"); div_model = div_model.replace(/\*DISPLAY_CON_C\*/g, ""); } }else{ div_model = div_model.replace(/\*CON\*/g, ""); div_model = div_model.replace(/\*CON_C\*/g, ""); div_model = div_model.replace(/\*DISPLAY_CON\*/g, "display:none"); div_model = div_model.replace(/\*DISPLAY_CON_C\*/g, "display:none"); } tmp_screen+=div_model; } } order_show.innerHTML = tmp_screen; _mc["bet_gold"].className = "txtBlack"; dataClass["order_bet"].clearOVTimer(); dataClass["menu"].getTodayWagersCount(); clearSelectArray(); }else{ xmdObj["errormsg"] = xmlnode.Node(xmlnode.Root[0],"errormsg"); var currency = _self.paramHash["currency"]; var msg = xmdObj["errormsg"].innerHTML; var tmp = ""; if(msg=="1X020"||msg=="1X019"){ xmdObj["errorvalue"] = xmlnode.Node(xmlnode.Root[0],"errorvalue"); tmp = xmdObj["errorvalue"].innerHTML; tmp = formatThousand(tmp)+_top["LS"]["max"]; }else if(msg=="1X005"||msg=="1X006"){ errorData = xmlnode.Node(xmlnode.Root[0],"errorvalue").innerHTML; } _mc["bet_gold"].className = "txtBlack"; errorCode=msg; dataClass["order_bet_p"].setErrorCode(errorCode); dataClass["order_bet_p"].setErrorData(errorData); dataClass["order_bet"].setErrorMsg(_top["LS"][msg]+tmp); dataClass["order_bet"].showErrorMsg(true); dataClass["order_bet_p"].scrollToBottom(); if(isChgIor(xmdObj["errormsg"].innerHTML) || isChgConcede(xmdObj["errormsg"].innerHTML) || xmdObj["errormsg"].innerHTML=="1X001"){ dataClass["order_bet_p"].orderView(); }else if(isBetTryAgain(xmdObj["errormsg"].innerHTML)){ alert(showLS("bet_try_again")); dataClass["order_bet"].setCssVisible("bet", false); } } _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].setBetNum, _mc["bet_gold"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].setBetNum, _mc["bet_gold_tt"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].clearNum, _mc["clear_btn"]); _self.addEventListener("MouseEvent.CLICK", dataClass["order_bet"].clearBet, _mc["clear_order"]); dataClass["order_bet"].setLoadingBetVisible(false); var nowCredit = xmlnode.Node(xmlnode.Root[0],"maxcredit").innerHTML; if(nowCredit!=null) _top["userData"].maxcredit = nowCredit; _mc["bet_finish_credit"].innerHTML = showTxt(formatThousand(Checkorder_credit(nowCredit))); dataClass["order_bet"].setBetting(false); dataClass["menu"].getTodayWagersCount(); } } // 2018-01-15 iphone UC 瀏覽器使用body position:fixed 造成螢幕最下方會有黑色遮住交易單 function bodyPreventDefault(){ var _self = this; var ts = new Object; var bet_content = document.getElementById("div_content"); _self.init = function(){ document.body.addEventListener("touchstart",_self.bodyScroll); document.body.addEventListener("touchmove",_self.bodyScroll); } _self.remove=function(){ document.body.removeEventListener("touchstart",_self.bodyScroll); document.body.removeEventListener("touchmove",_self.bodyScroll); } _self.bodyScroll = function (e){ _self.listenEvent(e,document.getElementById(e.target.id)); } _self.touchObject = function(targetObject, eventObject){ try{ // 取得當下指定物件以下的所有物件 var allobj = targetObject.getElementsByTagName("*"); // 最底層的物件(只有他自己) if (allobj.length==0) return true; for (var i=0;i0){ if (e.type=="touchmove"){ _self.stopBodyDefaultEvent(e); } } } } } _self.stopBodyDefaultEvent = function(e){ e.preventDefault(); e.stopPropagation(); } } /*=======config set=======*/ var CONFIG_BASE = 1000; //單位:秒 var CONFIG_MEMBER_CREDIT = 180*CONFIG_BASE; //會員額度 var CONFIG_LEAGUE_COUNT = 90*CONFIG_BASE; var CONFIG_LEAGUE_LIST = 90*CONFIG_BASE; //聯盟列表(單式) var CONFIG_GAME_LIST = 90*CONFIG_BASE; //球賽列表(單式) var CONFIG_MSG_COUNT = 90*CONFIG_BASE; //公告統計 var CONFIG_GAME_MORE = 90*CONFIG_BASE; //球賽全資料列表(單式) //2017-0206-johnson-37.手機-滾球盤面 更新秒數改為10秒 var CONFIG_LIVE_LEAGUE_LIST = 10*CONFIG_BASE; //聯盟列表(滾球) var CONFIG_LIVE_GAME_LIST = 10*CONFIG_BASE; //球賽列表(滾球) var CONFIG_LIVE_GAME_MORE = 10*CONFIG_BASE; //球賽全資料列表(滾球) // 2017-03-09 43.手機-下注單-更新改為10秒 (CRM-206) var CONFIG_ORDER_VIEW = 10*CONFIG_BASE; //下注預覽 var CONFIG_TODAY_WAGERS = 90*CONFIG_BASE; //交易狀況 var CONFIG_DANGEROUS = 10*CONFIG_BASE; //危險球更新(下注單&交易狀況) var CONFIG_IORATIO = 2; //賠率秀的位數 var CONFIG_SFS_COUNT = 5; //特殊冠軍秀的筆數 var CONFIG_BETGOLD_LENGTH = 10; //下注金額的長度 var CONFIG_FIX_CHECK = true; //跑檢查維護畫面流程 var CONFIG_LOGIN_DOMAIN_CHECK = true; //跑首頁轉導流程 var CONFIG_FIX = 90*CONFIG_BASE; //維護畫面 var CONFIG_MEM_ONLINE = 60*CONFIG_BASE; //線上會員連線 var CONFIG_IP_ENABLE = false; //跑阻擋ip流程 var CONFIG_LIST_TV = 90*CONFIG_BASE; //TV時間表 var CONFIG_GTYPE = new Array("FT","BK","TN","VB","BM","TT","BS","SK","OP"); /*=======config set=======*/ /*=======config set=======*/ var TV_DEBUG = false; //write log var TV_CONSOLE = false; //var TV_LOGPATH = document.location.protocol+"//61.14.172.204"; var TV_LOGPATH = document.location.protocol+"//"+document.domain; /*=======config set=======*/ function fastTemplate(){ var _self=this; var parentClass; var Hashtabl=new Array(); var dataHash=new Array(); var keyHash=new Array(); var SampleTable; var samplelayer; var tempTag; _self.init=function(obj){ SampleTable=obj.innerHTML; } _self.setParentclass=function(parentclass){ parentClass=parentclass; } _self.getThis=function(varible){ return eval(varible); } _self.setPrivate=function(varible,val){ eval(varible+"='"+val+"'"); } _self.addBlock=function(tag){ var s_srt=""; var e_srt=""; var n_start =SampleTable.indexOf(s_srt,0); var n_end =SampleTable.lastIndexOf(e_srt,SampleTable.length); var sampleTag =SampleTable.substring(n_start,n_end); sampleTag =sampleTag.replace(s_srt,""); samplelayer=SampleTable.replace(s_srt+sampleTag+e_srt,"*TAG_"+tag+"*"); if (dataHash[tag]==undefined){ dataHash[tag]=new Array(); keyHash[keyHash.length]=tag; } tempTag=tag; dataHash[tag][dataHash[tag].length]=sampleTag; } _self.replace=function(oldTag,newTag){ dataHash[tempTag][dataHash[tempTag].length-1]=dataHash[tempTag][dataHash[tempTag].length-1].replace(oldTag,newTag); } _self.fastPrint=function(){ var output=samplelayer; for (var i=0;i0||count==null){ eventArr["TimerEvent.TIMER"](count); timerObj = setTimeout(_self.run, frequency); }else{ eventArr["TimerEvent.TIMER_COMPLETE"](count); _self.stopTimer(); } } _self.isRunning=function(){ return running; } //run event _self.TIMER=function(){ alert("run"); } //finish event _self.TIMER_COMPLETE=function(){ alert("finish"); } _self.clearObj=function(){ isClear = true; _self.stopTimer(); _self.removeEventListener("TimerEvent.TIMER"); _self.removeEventListener("TimerEvent.TIMER_COMPLETE"); timerObj = null; frequency = 0; count = 0; } _self.init(); } function DateTimer(type){ var _self=this; var parentClass; var stype = type; var runHandler; var finishHandler; var timer; //-------------------init------------------------- _self.init=function(){ } _self.setParentclass=function(parentclass){ parentClass = parentclass; } _self.getThis=function(varible){ return eval(varible); } _self.setPrivate=function(varible,val){ eval(varible+"='"+val+"'"); } //-------------------init------------------------- _self.startDateTime=function(){ timer = new Timer.Timer(1000); timer.addEventListener("TimerEvent.TIMER", _self.run); timer.addEventListener("TimerEvent.TIMER_COMPLETE", _self.finish); timer.startTimer(); } _self.stopDateTime=function(){ if(timer!=null&&timer!=undefined){ timer.removeEventListener("TimerEvent.TIMER", _self.run); timer.removeEventListener("TimerEvent.TIMER_COMPLETE", _self.finish); timer.stopTimer(); timer = null; } } _self.run=function(){ if(runHandler!=null){ try{ runHandler(_self.showDate()); }catch(e){ //alert(e); _self.clearObj(); } } } _self.setRunHandler=function(eventHandler){ runHandler = eventHandler; } _self.finish=function(){ _self.clearObj(); } _self.setFinishHandler=function(eventHandler){ finishHandler = eventHandler; } _self.showDate=function(){ switch(stype){ case 0: return _self.showAll(); break; default: return _self.showAll(); break; } } //y-m-d h:i:s _self.showAll=function(){ var myDay = new Date(); var y = myDay.getFullYear() var m = myDay.getMonth(); var d = myDay.getDate(); var h = myDay.getHours(); var i = myDay.getMinutes(); var s = myDay.getSeconds(); var dateAry = new Array(); dateAry["date"] = y+"-"+_self.addzero(m+1)+"-"+_self.addzero(d); dateAry["time"] = _self.addzero(h)+":"+_self.addzero(i)+":"+_self.addzero(s); //var str_date = y+"-"+_self.addzero(m+1)+"-"+_self.addzero(d)+" "+_self.addzero(h)+":"+_self.addzero(i)+":"+_self.addzero(s); return dateAry; } _self.addzero=function(code){ if(code*1 < 10) return "0"+code; else return ""+code; } _self.clearObj=function(){ _self.stopDateTime(); finishHandler = null; runHandler = null; } }function CountdownTimer(_second, _showtype){ var _self = this; var parentClass; var frequency = 1000; //frequency(ms) var second = Math.round(_second/1000); var showtype = _showtype; var runHandler; var finishHandler; var showHandler; var timer; var d = 0; //day var h = 0; //hour var m = 0; //minute var s = 0; //second //-------------------init------------------------- _self.init=function(){ } _self.setParentclass=function(parentclass){ parentClass = parentclass; } _self.getThis=function(varible){ return eval(varible); } _self.setPrivate=function(varible,val){ eval(varible+"='"+val+"'"); } //-------------------init------------------------- _self.startCalcTime=function(){ timer = new Timer(frequency, second); timer.addEventListener("TimerEvent.TIMER", _self.run); timer.addEventListener("TimerEvent.TIMER_COMPLETE", _self.finish); timer.startTimer(); _self.run(second); } _self.stopCalcTime=function(){ d = 0; h = 0; m = 0; s = 0; if(timer!=null){ timer.clearObj(); //timer.removeEventListener("TimerEvent.TIMER", _self.run); //timer.removeEventListener("TimerEvent.TIMER_COMPLETE", _self.finish); timer = null; } } _self.run=function(count){ try{ runHandler(_self.showDateFormat(count)); }catch(e){ //alert(e); //_self.clearObj(); } } _self.setRunHandler=function(eventHandler){ runHandler = eventHandler; } _self.finish=function(count){ _self.stopCalcTime(); try{ finishHandler(_self.showDateFormat(count)); }catch(e){ //alert(e); _self.clearObj(); } } _self.setFinishHandler=function(eventHandler){ finishHandler = eventHandler; } _self.setShowHandler=function(eventHandler){ showHandler = eventHandler; } _self.isRunning=function(){ return (timer!=null)?timer.isRunning():false; } _self.showDateFormat=function(count){ if(showHandler!=null) return showHandler(count); switch(showtype){ case 0: return _self.showMinute(count); break; case 1: return _self.showSecond(count); break; case 2: return _self.showAll(count); break; default: return _self.showAll(count); break; } } //hou:min:sec _self.showAll=function(count){ s = count%60; m = ((count-s)/60)%60; h = (((count-s) / 60) -m ) / 60 ; return _self.addzero(h)+":"+_self.addzero(m)+":"+_self.addzero(s); } //min:sec _self.showMinute=function(count){ s = count%60; m = ((count-s)/60)%60; return _self.addzero(m)+":"+_self.addzero(s); } //sec _self.showSecond=function(count){ return _self.addzero(count); } _self.addzero=function(code){ if(code*1 < 10) return "0"+code; else return ""+code; } _self.clearObj=function(){ _self.stopCalcTime(); finishHandler = null; runHandler = null; d = 0; h = 0; m = 0; s = 0; } }function Que(){ var _self = this; var parentclass; var eventAry = new Array(); var queAry = new Array(); var running = false; var total = 0; var count = 0; var time_out = 3000; //second var defaul_path = "/js/"; var defaul_file = ".js"; var file_path = defaul_path; var file_name = defaul_file; //-------------------init------------------------- _self.init=function(){ _self.addEventListener("loadCount", _self.loadCount); _self.addEventListener("loadQueComplete", _self.loadQueComplete); } _self.setParentclass=function(parentclass){ parentClass = parentclass; } _self.getThis=function(varible){ return eval(varible); } _self.setPrivate=function(varible,val){ eval(varible+"='"+val+"'"); } //-------------------init------------------------- //add EventListener _self.addEventListener=function(funName, eventHandler){ eventAry[funName] = eventHandler; } //remove EventListener _self.removeEventListener=function(funName){ eventAry[funName] = null; } _self.setFilePath=function(_path){ file_path = _path; } _self.setFileName=function(_name){ file_name = _name; } _self.setQueAry=function(parAry){ if(typeof(parAry)=="object"){ queAry = parAry total = queAry.length; } //maxlog("1", "setQueAry.total="+total); } _self.addQue=function(filename){ queAry.push(filename); total++; //maxlog("2", "addQue.total="+total); } _self.removeQue=function(par){ if(isNaN(par*1)) _self.removeQueByKey(); else _self.removeQueByIndex(); } _self.removeQueByKey=function(filename){ while(queAry.indexOf(filename) !== -1) { queAry.splice(queAry.indexOf(filename), 1); total--; //maxlog("3", "removeQueByKey.queAry="+queAry.length); } } _self.removeQueByIndex=function(index){ queAry.splice(index, 1); total--; //maxlog("4", "removeQueByIndex.queAry="+queAry.length); } _self.clearQue=function(){ queAry.splice(0, queAry.length); total = 0; count = 0; //maxlog("5", "clearQue.queAry.length="+queAry.length); } _self.loadCount=function(){ count++; //maxlog((count+100)+"", "loadCount.count="+count); if(count>=total){ try{ //maxlog("7", "loadCount.loadQueComplete="+count); eventAry["loadQueComplete"](); }catch(e){ } } } _self.loadQueComplete=function(){ //alert("loadQueComplete"); //maxlog("8", "loadComplete===>"+running); if(running){ running=false; _self.clearQue(); try{ eventAry["loadComplete"](); }catch(e){ } } } _self.start=function(){ //maxlog("9", "start.queAry.length="+queAry.length); if(queAry.length >0) running=true; for(var i=0; i=0;i--){ //if (scriptAry[i].src==url) return; scriptAry[i].parentNode.removeChild(scriptAry[i]); } var src=document.createElement("script"); (document.getElementsByTagName("head")[0] || document.body).appendChild(src); src.id=url; src.src=url; if(loadComplete!=null) src.onload=loadComplete; } _self.isRunning=function(){ return running; } } /** * 選擇多盤口時 轉換成該選擇賠率 * @param odd_type 選擇盤口 * @param iorH 主賠率 * @param iorC 客賠率 * @param show 顯示位數 * @return 回傳陣列 0-->H ,1-->C */ function get_other_ioratio(odd_type, iorH, iorC , showior, iorpoints){ var out=new Array(); if(iorH!="" ||iorC!=""){ out =chg_ior(odd_type,iorH,iorC,showior,iorpoints); }else{ out[0]=iorH; out[1]=iorC; } return out; } /** * 轉換賠率 * @param odd_f * @param H_ratio * @param C_ratio * @param showior * @return */ function chg_ior(odd_f,iorH,iorC,showior, iorpoints){ iorH = Math.floor((iorH*1000)+0.001) / 1000; iorC = Math.floor((iorC*1000)+0.001) / 1000; var ior=new Array(); if(iorH < 11) iorH *=1000; if(iorC < 11) iorC *=1000; iorH=parseFloat(iorH); iorC=parseFloat(iorC); switch(odd_f){ case "H": //香港變盤(輸水盤) ior = get_HK_ior(iorH,iorC); break; case "M": //馬來盤 ior = get_MA_ior(iorH,iorC); break; case "I" : //印尼盤 ior = get_IND_ior(iorH,iorC); break; case "E": //歐洲盤 ior = get_EU_ior(iorH,iorC); break; default: //香港盤 ior[0]=iorH ; ior[1]=iorC ; } ior[0]/=1000; ior[1]/=1000; ior[0]=printf(Decimal_point(ior[0],showior),iorpoints); ior[1]=printf(Decimal_point(ior[1],showior),iorpoints); //alert("odd_f="+odd_f+",iorH="+iorH+",iorC="+iorC+",ouH="+ior[0]+",ouC="+ior[1]); return ior; } /** * 換算成輸水盤賠率 * @param H_ratio * @param C_ratio * @return */ function get_HK_ior( H_ratio, C_ratio){ var out_ior=new Array(); var line,lowRatio,nowRatio,highRatio; var nowType=""; if (H_ratio <= 1000 && C_ratio <= 1000){ out_ior[0]=Math.floor(H_ratio/10+0.0001)*10; out_ior[1]=Math.floor(C_ratio/10+0.0001)*10; //out_ior[0]=H_ratio; //out_ior[1]=C_ratio; return out_ior; } line=2000 - ( H_ratio + C_ratio ); if (H_ratio > C_ratio){ lowRatio=C_ratio; nowType = "C"; }else{ lowRatio = H_ratio; nowType = "H"; } if (((2000 - line) - lowRatio) > 1000){ //對盤馬來盤 nowRatio = (lowRatio + line) * (-1); }else{ //對盤香港盤 nowRatio=(2000 - line) - lowRatio; } if (nowRatio < 0){ highRatio = Math.floor(Math.abs(1000 / nowRatio) * 1000) ; }else{ highRatio = (2000 - line - nowRatio) ; } if (nowType == "H"){ out_ior[0]=Math.floor(lowRatio/10+0.0001)*10; out_ior[1]=Math.floor(highRatio/10+0.0001)*10; //out_ior[0]=lowRatio; //out_ior[1]=highRatio; }else{ out_ior[0]=Math.floor(highRatio/10+0.0001)*10; out_ior[1]=Math.floor(lowRatio/10+0.0001)*10; //out_ior[0]=highRatio; //out_ior[1]=lowRatio; } return out_ior; } /** * 換算成馬來盤賠率 * @param H_ratio * @param C_ratio * @return */ function get_MA_ior( H_ratio, C_ratio){ var out_ior=new Array(); var line,lowRatio,highRatio; var nowType=""; if ((H_ratio <= 1000 && C_ratio <= 1000)){ out_ior[0]=H_ratio; out_ior[1]=C_ratio; return out_ior; } line=2000 - ( H_ratio + C_ratio ); if (H_ratio > C_ratio){ lowRatio = C_ratio; nowType = "C"; }else{ lowRatio = H_ratio; nowType = "H"; } highRatio = (lowRatio + line) * (-1); if (nowType == "H"){ out_ior[0]=lowRatio; out_ior[1]=highRatio; }else{ out_ior[0]=highRatio; out_ior[1]=lowRatio; } return out_ior; } /** * 換算成印尼盤賠率 * @param H_ratio * @param C_ratio * @return */ function get_IND_ior( H_ratio, C_ratio){ var out_ior=new Array(); out_ior = get_HK_ior(H_ratio,C_ratio); H_ratio=out_ior[0]; C_ratio=out_ior[1]; H_ratio /= 1000; C_ratio /= 1000; if(H_ratio < 1){ H_ratio=(-1) / H_ratio; } if(C_ratio < 1){ C_ratio=(-1) / C_ratio; } out_ior[0]=H_ratio*1000; out_ior[1]=C_ratio*1000; return out_ior; } /** * 換算成歐洲盤賠率 * @param H_ratio * @param C_ratio * @return */ function get_EU_ior(H_ratio, C_ratio){ var out_ior=new Array(); out_ior = get_HK_ior(H_ratio,C_ratio); H_ratio=out_ior[0]; C_ratio=out_ior[1]; out_ior[0]=H_ratio+1000; out_ior[1]=C_ratio+1000; return out_ior; } /* 去正負號做小數第幾位捨去 進來的值是小數值 */ function Decimal_point(tmpior,show){ var sign=""; sign =((tmpior < 0)?"Y":"N"); tmpior = (Math.floor(Math.abs(tmpior) * show + 1 / show )) / show; return (tmpior * ((sign =="Y")? -1:1)) ; } /* 公用 FUNC */ function printf(vals,points){ //小數點位數 vals=""+vals; var cmd=new Array(); cmd=vals.split("."); if (cmd.length>1){ for (ii=0;ii<(points-cmd[1].length);ii++)vals=vals+"0"; }else{ vals=vals+"."; for (ii=0;ii"+code); if(code=="621"){ var obj = new Object(); obj["countsMessage"] = xmlnode.Node(xmlnode.Root[0],"counts").innerHTML; _top["msgCount"] = obj["countsMessage"]; _self.setMsgCount(_top["msgCount"]); //2015-07-28 peter 公告個人訊息為被動刷新,故不做計時器 /*try{ dataClass["announcements"].loadMessageComplete(xml); }catch(e){}*/ } } // 2017-12-13 CRM-236加強版手機 - 修改取得公告數量 _self.setMsgCount=function(count){ try{ if(count*1==0 || count==""){ _mc["msg_count"].style.display = "none"; document.getElementById("header_announcements_messages").innerHTML = ""; if(dataClass["announcements"]!=null) dataClass["announcements"].setMsgCount(""); }else if(_mc["header_announcements_messages"] != null && count*1!=0){ _mc["msg_count"].style.display = ""; document.getElementById("header_announcements_messages").innerHTML = count; if(dataClass["announcements"]!=null) dataClass["announcements"].setMsgCount(count); } }catch(e){ console.log(e); } } //init select option _self.initSelectOption=function(obj, odd_f, LS){ obj.options.length = 0; var tmp = odd_f.split(","); for(var i=0; i>"+_top["urlPos"]); alert("back to "+_url); } */ var last_showtype = ""; for(var i=0; i<_top["showtype_array"].length; i++){ var type = _top["showtype_array"][i]; if(_url.indexOf(type)!=-1){ last_showtype = type; } } if(last_showtype!=""){ _top["choice_showtype"] = last_showtype; _self.changeSelect(_top["choice_showtype"]); } } var url = "/tpl/"+_top["userData"].langx+"/"+_url+".html"; //loadHtml_loading(url, true); _self.dispatchEvent("exitEventHandler", url); } _self.goToBackPage=function(){ var _path = _self.parentClass.classname; var url = "/tpl/"+_top["userData"].langx+"/"+_path+".html"; //loadHtml_loading(url, true); _self.dispatchEvent("exitEventHandler", url); } //intoGame _self.intoGame=function(mouseEvent, targetObj){ //alert(targetObj.url); _top["choice_showtype"] = targetObj.showtype; _self.changeSelect(targetObj.showtype); var url = "/tpl/"+_top["userData"].langx+"/"+targetObj.url+".html"; //loadHtml_loading(url, true); _self.dispatchEvent("exitEventHandler", url); } _self.changeSelect=function(showtype){ for(var i=0; i<_top["showtype_array"].length; i++){ var type = _top["showtype_array"][i]; setObjectClass(_mc["header_"+type] ,"header_inplay2"); } setObjectClass(_mc["header_"+showtype] ,"header_inplay2_selected"); } _self.clearSelect=function(){ for(var i=0; i<_top["showtype_array"].length; i++){ var type = _top["showtype_array"][i]; setObjectClass(_mc["header_"+type] ,"header_inplay2"); } } //showMenuHandler _self.showMenuHandler=function(mouseEvent, targetObj){ //alert("showMenu"); var aniobj=_mc["header_movie"]; // 2017-12-04 CRM-236加強版手機 - 347.在菜單頁面-上方“三條線”要亮黃色(Rose) var menuObj = _mc["header_menu"]; var obj_len = "250px"; var runtime=300; if (aniobj.style.display==''){ aniobj.style.display='none'; // 2017-12-04 CRM-236加強版手機 - 347.在菜單頁面-上方“三條線”要亮黃色(Rose) menuObj.className = "dropdown"; }else{ aniobj.style.display=''; // 2017-12-04 CRM-236加強版手機 - 347.在菜單頁面-上方“三條線”要亮黃色(Rose) menuObj.className = "dropdown_up"; } return; /* if (aniobj.style.display==''){ ani=new cssAni(aniobj); aniobj.style["-webkit-animation-name"]="HeightToZero"; ani.setKeyFrame(0, obj_len); ani.setKeyFrame(ani.KeyFrameSize()-1,"0px"); //keyframe ani.finish=function(aniobj){ aniobj.style.display='none'; } ani.play(runtime,1); }else{ ani=new cssAni(aniobj); aniobj.style.display=''; aniobj.style["-webkit-animation-name"]="ZeroToHeight"; ani.setKeyFrame(0,"0px"); ani.setKeyFrame(ani.KeyFrameSize()-1, obj_len); //keyframe ani.finish=function(){ } ani.play(runtime,1); } */ } _self.setBackPage=function(_url,type){ _self.backPage = _url; _mc["header_back"].url = _self.backPage; //alert(_self.parentClass.classname); try{ // Ricky CRM-236 註解header移到menu的id //_mc["header_home"].url = "home"; _mc["header_movie"].style.display="none"; _mc["header_back"].type = "back"; _self.addEventListener("MouseEvent.CLICK", _self.showMenuHandler, _mc["header_menu"]); _self.addEventListener("MouseEvent.CLICK", _self.goToPageHandler, _mc["header_back"]); // Ricky CRM-236 註解header移到menu的id //_self.addEventListener("MouseEvent.CLICK", _self.goToPageHandler, _mc["header_home"]); //if(type=="allsports"){ _mc["header_live"].url = "allsports"; _mc["header_today"].url = "allsports"; _mc["header_early"].url = "allsports"; /*}else{ var gtype = _top["choice_gtype"]; _mc["header_live"].url = gtype+"_live_league"; _mc["header_today"].url = gtype+"_today_league_r"; _mc["header_early"].url = gtype+"_early_league_r"; }*/ _mc["header_live"].showtype = "live"; _mc["header_today"].showtype = "today"; _mc["header_early"].showtype = "early"; if( typeof _top["userData"].enable != 'undefined' && document.getElementById("header_live") && document.getElementById("header_today") && document.getElementById("header_early") && document.getElementById("header_odds") ){ var show = _top["userData"].enable == 'S' ? "header_none":"header_inplay2"; _mc["header_live"].className = show; _mc["header_today"].className = show; _mc["header_early"].className = show; //Ricky 2017-11-06 只能看帳會員-首頁-切換盤口(香港盤)多出一個箭頭,且不能點擊的顏色沒做到 //Ricky 2017-11-08 124.切換上面滾球/今日/早餐盤口沒作用 //var show = _top["userData"].enable == 'S' ? "none_dropdown":"HK_dropdown"; var show2 = _top["userData"].enable == 'S' ? "none_dropdown":"accordion_content_menu"; _mc["header_odds"].disabled = _top["userData"].enable == 'S'? true : false; //Ricky 2017-11-06 只能看帳會員-首頁-切換盤口(香港盤)多出一個箭頭,且不能點擊的顏色沒做到 //Ricky 2017-11-08 124.切換上面滾球/今日/早餐盤口沒作用 //程式原本在 header_odds 那邊有控制換class //因為Rose改不到外面樣式 , 所以把控制的層級往上移 //_mc["header_odds"].className = show; _mc["accordion_content_menu"].className = show2; // 2017-09-20 75.手機會員端-會員為”只能看帳”-首頁-觀看現場請反灰不能點入,且首頁90秒更新後,不應出現盤口畫面 var tvShow = _top["userData"].enable == 'S' ? " hide_tv":""; // Ricky CRM-236 註解header移到menu的id // _mc["header_tv"].className += tvShow; // if(_top["userData"].enable == 'S') _self.removeEventListener("MouseEvent.CLICK",_mc["header_tv"]); if( _top["userData"].enable != 'S' ){ _self.addEventListener("MouseEvent.CLICK", _self.intoGame, _mc["header_live"]); _self.addEventListener("MouseEvent.CLICK", _self.intoGame, _mc["header_today"]); _self.addEventListener("MouseEvent.CLICK", _self.intoGame, _mc["header_early"]); } } var tmp = _self.parentClass.classname.split("_"); var _game = tmp[0]; var _showtype = tmp[1]; if(in_array(_game.toUpperCase(),_top["game_array"])||_game=="allsports"){ if(_game!="allsports") _top["choice_showtype"]=_showtype; _self.changeSelect(_top["choice_showtype"]); } }catch(e){ //alert("header: "+e); } } //logout _self.logoutHandler=function(mouseEvent, targetObj){ parent.logoutEvent(); urlGoToIndex(); } //Ricky 2017-10-30 CRM-236 內頁新增帳號、信用額度 _self.currReload=function(mouseEvent, targetObj){ _mc["acc_credit"].innerHTML = showTxt(formatThousand(_top["userData"].maxcredit)); } } //extends //dataClass["header"] = extendsClass(_top["MovieClipClass"], header); //dataClass["header"].init(); function bottom(){ var _self = this; var parentClass; var _mc = new Object(); _self.classname = "bottom.js"; _self.paramHash = new Object(); var No_orientation = Array("home","help_set_mail") //init _self.init=function(){ _mc["bottom_top"] = document.getElementById("bottom_top"); _self.setGoToTopVisible(false); _self.addEventListener("MouseEvent.CLICK", _self.backToTopHandler, _mc["bottom_top"]); _self.insertTopInput(); try{ _mc["bottom_all"] = document.getElementById("bottom_all"); _mc["bottom_all"].url = "allsports"; _self.addEventListener("MouseEvent.CLICK", _self.goToPageHandler, _mc["bottom_all"]); }catch(e){} //setLoadingVisible(false); window.scrollTo(0, 0); // 2017-12-15 CRM-236加強手機版 - 434.聯盟與外層的盤面-橫向”回到頁首“當畫面長度條件達到,應以靜態固定在下方,轉正向也應判斷 if(isFireFoxBrowser()){ if(!in_array(_top["urlHash"][_top["urlPos"]],No_orientation)) window.addEventListener("orientationchange",_self.checkShowTop); }else{ if(_top["urlHash"][_top["urlPos"]]!="home") window.addEventListener("orientationchange",_self.checkShowTop); } } //back to top _self.backToTopHandler=function(mouseEvent, targetObj){ //window.location.href="#topTag"; //setTimeout(function() { window.scrollTo(1, 1) }, 600); if(isUCBrowser()&&isIPad()&&lowVersion()){ document.getElementById('topInput').style.display=""; document.getElementById('topInput').focus(); }else{ setTimeout(function() { window.scrollTo(0, 0) }, 100); //_mc["bottom_top"].style.display = "none"; } } _self.goToPageHandler=function(mouseEvent, targetObj){ //_self.dispatchEvent("exitEventHandler",targetObj.url); var url = "tpl/"+_top["userData"].langx+"/"+targetObj.url+".html"; //loadHtml_loading(url, true); _self.dispatchEvent("exitEventHandler",url); } _self.setGameBack=function(_url, gtype){ _mc["bottom_game"] = document.getElementById("bottom_game"); _mc["bottom_game"].innerHTML = showTxt(_top["LS"]["title_"+gtype.toUpperCase()]); _mc["bottom_game"].url = _url; _self.addEventListener("MouseEvent.CLICK", _self.goToPageHandler, _mc["bottom_game"]); } _self.setLeagueBack=function(_url, league){ _mc["bottom_league"] = document.getElementById("bottom_league"); _mc["bottom_league"].innerHTML = showTxt(league); _mc["bottom_league"].url = _url; _self.addEventListener("MouseEvent.CLICK", _self.goToPageHandler, _mc["bottom_league"]); } _self.setGoToTopVisible=function(isShow){ _mc["bottom_top"].style.display = (isShow)?"":"none"; } _self.insertTopInput=function(){ if(!document.getElementById('topInput')){ var tmpInput = document.createElement("INPUT"); tmpInput.id = "topInput"; tmpInput.style.display = "none"; tmpInput.onfocus=function(){ setTimeout(function(){document.activeElement.blur();document.getElementById('topInput').style.display='none';},0); } document.body.insertBefore(tmpInput, document.body.childNodes[0]); } //document.body.innerHTML=tmpInput.outerHTML+document.body.innerHTML; } _self.checkShowTop=function(){ //var pos = document.documentElement.scrollTop || document.body.scrollTop; var orientation = window.Math.abs(window.orientation); if(orientation==90 || orientation==0){ _self.setGoToTopVisible(false); var body_h = document.body.scrollHeight; //body height var view_h = document.body.clientHeight; //view height _mc["bottom_top"].style.display = (body_h - view_h >= 50)?"":"none"; } //debugPrint("["+msg+"]\n range="+range+"\n"+document.documentElement.scrollTop+","+document.body.scrollTop+"===>"+pos); } _self.scrollToShowTop=function(){ window.onscroll = function(){ var t = document.documentElement.scrollTop || document.body.scrollTop; // Ricky 2017-11-03 回到頁首的按鈕
多出display: inline;在幫忙拿掉 (Yu) //_mc["bottom_top"].style.display = (t != 0) ? "inline":"none"; _mc["bottom_top"].style.display = (t > 0) ? "":"none"; } } } //extends //dataClass["bottom"] = extendsClass(_top["MovieClipClass"], bottom); //dataClass["bottom"].init(); function changewtype(){ var _self = this; var _mc = new Object(); _self.classname = "changewtype.js"; _self.paramHash = new Object(); var obj_ary = new Array("change_r","change_p","change_fs"); //init _self.init=function(){ _mc["change_r"] = document.getElementById("change_r"); _mc["change_p"] = document.getElementById("change_p"); _mc["change_fs"] = document.getElementById("change_fs"); } _self.setURL=function(){ var gtype = _self.parentClass.paramHash["gtype"]; var menutype = _self.parentClass.paramHash["menutype"]; //var level = _self.parentClass.paramHash["level"]; var level = "league"; var _base = (gtype+"_"+menutype+"_"+level).toLowerCase(); _mc["change_r"].url = (menutype.toLowerCase()=="live")?_base:_base+"_r"; _mc["change_p"].url = _base+"_p"; _mc["change_fs"].url = _base+"_fs"; _mc["change_r"].type = "r"; _mc["change_p"].type = "p"; _mc["change_fs"].type = "fs"; _self.addEventListener("MouseEvent.CLICK", _self.goToPageHandler, _mc["change_r"]); _self.addEventListener("MouseEvent.CLICK", _self.goToPageHandler, _mc["change_p"]); _self.addEventListener("MouseEvent.CLICK", _self.goToPageHandler, _mc["change_fs"]); } //goToPageHandler _self.goToPageHandler=function(mouseEvent, targetObj){ if(targetObj.type=="p"){ if(getLocalStorageItem("rule_p_notshow")=="initFail"){ showPrivateView(); return; } if(!getLocalStorageItem("rule_p_notshow")){ //_self.dispatchEvent("clearTimerHandler", ""); var ret = _self.parentClass.clearTimer(); if(ret){ var url = "tpl/"+_top["userData"].langx+"/rule_p_pop.html"; loadHtml_loading(url, true, function(){ if(dataClass["rule_p_pop"]!=null){ dataClass["rule_p_pop"].setParentclass(_self); dataClass["rule_p_pop"].setBackPage(targetObj.url); } }); } return; } } _self.changeSelect(targetObj); var url = "tpl/"+_top["userData"].langx+"/"+targetObj.url+".html"; //loadHtml_loading(url, true); _self.dispatchEvent("exitEventHandler", url); } _self.changeSelect=function(targetObj){ for(var i=0; i=_mc["imgs"].length) pos=0; _mc["imgs"][pos].style.display=""; */ for(i=0;i<_mc["imgs"].length;i++){ _mc["imgs"][i].style.display="none"; } _mc["imgs"][pos++].style.display=""; if (pos>=_mc["imgs"].length) pos=0; setTimeout(function(){_self.run();}, 100); } //stop _self.stopLoading=function(){ if(_mc["loadingObj"]==null) return; _self.setVisible(false); } //visible _self.setVisible=function(isShow){ if(_mc["loadingObj"]==null) return; /* if(_mc["loadingObj"].id=="loading_league"){ if(!isShow){ setTimeout(function(){_mc["loadingObj"].style.display="none";}, 2000); }else{ _mc["loadingObj"].style.display = (isShow)?"":"none"; } return; } //*/ _mc["loadingObj"].style.display = (isShow)?"":"none"; } _self.isLoading=function(){ if(_mc["loadingObj"]==null) return false; return (_mc["loadingObj"].style.display=="")? true:false; } _self.showLoading=function(isShow){ if(isShow){ //if (_self.isLoading()) return; _self.startLoading(); }else{ _self.stopLoading(); } } } //extends //dataClass["loading"] = extendsClass(_top["MovieClipClass"], loading); //dataClass["loading"].init();