﻿// JScript 文件

//    var xmlHttp;
      function CallBackObject()
    {
        this.xmlHttp = this.GetCallBackObject();
    }
CallBackObject.prototype.GetCallBackObject=function()
{
    var xmlHttp=false;
   /*@cc_on 
    /*@if(@_jscript_version >=5)
    {

        try
       {
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
       }catch(e)
       {
            try
           {
                xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
           }
           catch(e)
           {
                xmlHttp=false;
           } 
       }
    }
   /*@else
    xmlHttp=false;
  @end  @*/
    
    if(!xmlHttp && typeof XMLHttpRequest != 'undefined')
      {
        try
        { 
            xmlHttp=new XMLHttpRequest();
        }catch(e)
        {
            xmlHttp=false;
        }   
     }
   
    return xmlHttp;
}

CallBackObject.prototype.DoCallBack=function(url,types,tongbu)
{
   // alert(url);
    if(this.xmlHttp)
    {
        if(this.xmlHttp.readyState==4 || this.xmlHttp.readyState==0)
       {
           var othis = this;
           this.xmlHttp.open(types, url, tongbu);
           this.xmlHttp.onreadystatechange=function()
           {
            othis.ReadyStateChange();
           } 
           this.xmlHttp.send();
       } 
       
    }
}
CallBackObject.prototype.AbortCallBack=function()
{
    if(this.xmlHttp)
    {
       this.xmlHttp.abort();
       //alert("请求关闭了");
    }
}
CallBackObject.prototype.OnLoading=function()
{
    //alert("请求正在加载");
}

CallBackObject.prototype.OnLoaded=function()
{
    //alert("请求已加载");
}

CallBackObject.prototype.OnInteractive=function()
{
  //  alert("交互中");
}

CallBackObject.prototype.OnAbort=function()
{
    //alert("取消中:");
}

CallBackObject.prototype.OnComplete=function(responseText,responseXML,element)
{
   // alert("加载完成");
}

CallBackObject.prototype.OnError=function(status,statusText)
{
    alert("出错了,请与管理员联系"+statusText+status);
}

CallBackObject.prototype.ReadyStateChange=function()
{
   if(this.xmlHttp.readyState==1)
  {
    this.OnLoading();
  }
  if(this.xmlHttp.readyState==2)
  {
    this.OnLoaded();
  } 
  if(this.xmlHttp.readyState==3)
  {
    this.OnInteractive();
  } 
  if(this.xmlHttp.readyState==4)
  {
    if(this.xmlHttp.status==0)
    {
        this.OnAbort();
    }
    else if(this.xmlHttp.status ==200 && this.xmlHttp.statusText=="OK")
    {
        this.OnComplete(this.xmlHttp.responseText,this.xmlHttp.responseXML);
    }
    else
    {
        this.OnError(this.xmlHttp.status,this.xmlHttp.statusText,this.xmlHttp.responseText);
    }
}
}

String.prototype.trim = function() {
    return this.replace(/(^\s*)|(\s*$)/g, "");
}

String.prototype.Insert = function(index, str) {
    return this.substring(0, index) + str + this.substr(index);
}

function getBrowserType() {
    var Sys = {};
    var ua = navigator.userAgent.toLowerCase();
    var s;
    (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] : (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] : (s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] : (s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] : (s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0;
    return Sys;
}

function isDate(data) {
    var reg = /^((\d{2}(([02468][048])|([13579][26]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|([1-2][0-9])))))|(\d{2}(([02468][1235679])|([13579][01345789]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))(\s(((0?[0-9])|(1[0-9])|(2[0-3]))\:(([0-5][0-9])|([0-9]))(((\s)|(\:(([0-5][0-9])|([0-9]))))?)))?$/;
    if (reg.test(data))
        return true;
    return false;
}
function isEmail(eMail) {
    var reg = /\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/;
    if(reg.test(eMail))
        return true;
    return false;
}
function isNumber(num) {
    var reg = /^\d+/;
    if (reg.test(num))
        return true;
    return false;
}
function isHanZhi(message) {
    var reg = /[u4e00-u9fa5]/;
    if (reg.test(message))
        return true;
    return false;
}
function isEnAndNumber(message) {
    var reg = /^[A-Za-z0-9_-]+$/;
    if (reg.test(message))
        return true;
    return false;
}
function $(obj) {
    if (typeof obj == "string")
        return document.getElementById(obj);
    return obj;
}

function Ajax(url, callback_f, submittype, errorf) {
    if (submittype.toLowerCase() != "get" && submittype.toLowerCase() != "post") {
        submittype = "get";
    }
    var cbo = new CallBackObject();
    cbo.OnComplete = callback_f;    //请求成功后执行的方法
    cbo.OnError = errorf;
    cbo.DoCallBack(url, submittype,true);//true为不同步,false为同步
}

/*
callback_f method template
*/
function result(responseText, responseXML) {
    alert(responseText);
}

/*js 跨域*/
function GetResultByJS(script_e, url, callback_f) {
    if (typeof script_e == "string") {
        script_e = document.getElementById("script_e");
    }
    if (!script_e) {
        document.body.appendChild(script_e = document.createElement("script"));
    }
    if (!callback_f) {
        callback_f = function() { };
    }
    script_e.onload = function() {
        callback_f();
    }
    script_e.onreadystatechange = function() {
        if (script_e.readyState == "loaded") {
            callback_f();
        }
    }

    script_e.src = url;
}

function GetSrcEvent() {
    var event = window.event || arguments.callee.caller.arguments[0];
    return event;
}
function getSrcElement() {
    var e = window.event || arguments.callee.caller.arguments[0];
    if (e == null || e == undefined)
        return null;
    var element = e.srcElement || e.target;
    return element;
}

Array.prototype.inArray = function(value) 
{
    var i; for (i = 0; i < this.length; i++) {
        // Matches identical (===), not just similar (==).
        if (this[i] == value) {
            return true;
        }
    } return false;
}

var temp;
var checkName = false;
var checkT = true;
var checkPayTypes = false;
var tempuser;
var checkRegion=false;
var temRid;
function choose(id, name) {
    $("pd_FrpId").value = id;
    $("payType").innerHTML = name;
    $("spPay").innerHTML = name;
    if (temp) {
        temp.style.backgroundColor = "";
    }

    temp = getSrcElement();
    temp.style.backgroundColor = "#ccc";
}

function checkUsers() {
    checkName = false;
    if (getSrcElement() == $("txtUserName1")) {
        return;
    }
    var pwd1 = $("txtUserName1").value;
    var pwd2 = $("txtUserName2").value;
    $("spaccount").innerHTML = "";
    var reg = /^[a-zA-Z0-9]{6,20}$/;
    if (!reg.test(pwd1)) {
        $("spusername1").innerHTML = "用户名为6到20位之间的数字字母组合";
        return;
    }
    $("spusername1").innerHTML = "";
    if (!reg.test(pwd2)) {
        $("spusername2").innerHTML = "用户名为6到20位之间的数字字母组合";
        return;
    }

    if (pwd1 != pwd2) {
        $("spusername2").innerHTML = "两次输入的用户名不一致";
        $("submitOne").disabled = "disabled";
        return;
    }
    //checkName = true;
    $("spusername1").innerHTML = "";
    $("spusername2").innerHTML = "";
    $("spaccount").innerHTML = pwd1;
    checkRegion = false;
    var check = document.getElementById("r2").checked ? "1" : "0";
    var rid;
    if (check == "1") {
        var obj = document.getElementById("gameregion");
        rid = obj.options[obj.selectedIndex].value;
        
    }

    if (tempuser == pwd1 && (rid == temRid && check=="1"))
        return;
    tempuser = pwd1;
    
    //alert(check);return;
    Ajax("../Ajax/Code.ashx?action=user&username=" + pwd1 + "&check=" + check + "&rid=" + rid+"&date="+new Date(), Exists_Complete, "post", Exists_Error);
    $("submitOne").value = "正在确账号...";
}

function Exists_Error(status, statusText) {
    //$("spusername2").style.color = "black";
    $("spexists").innerHTML = "验证过程中发生错误,请重试";
}

function Exists_Complete(responseText, responseXML) {
    //responseText返回 1:用户名已经存在,-1:数据验证错误 0:为可用
    var check = document.getElementById("r2").checked ? "1" : "0";

    switch (responseText) {
        case "1":
            $("spexists").innerHTML = "";
            checkName = true;
checkRegion = true;
            $("submitOne").disabled = "";
            $("submitOne").value = " 确 定 ";
            break;
        case "-1":
            $("spexists").innerHTML = "数据验证错误";
            break;
        case "0":
            //$("spUserName").style.color = "green";
            $("spexists").innerHTML = "用户名不存在";
            break;
        case "2":
            $("spexists").innerHTML = "";
            alert("检测到你还没有激活当前选择的游戏区,请注意选择!!")
            checkName = true;
            checkRegion = true;
            $("submitOne").disabled = "";
            $("submitOne").value = " 确 定 ";
            break;
        default:
            $("spexists").innerHTML = "验证过程中发生错误,请重试";
            break;
    }
    
}


function checkTel(value) {
    $("spTels").innerHTML = "";
    if (value.trim().length == 0) {
        checkT = true;
        return;
    }
    checkT = false;
    var reg = /^1\d{10}$/;
    if (!reg.test(value)) {
        $("spTel").innerHTML = "手机格式不正确";
        return;
    }
    $("spTel").innerHTML = "";
    checkT = true;
    $("spTels").innerHTML = value;
}
function checkMsg() {
    var t;
    /*
    if (!checkName) {
        checkUsers();
        t= setTimeout(checkMsg(), 1000);
    }
    */
    var check = document.getElementById("r2").checked ? "1" : "0";
    if (check == "1" && checkRegion==false) {
        checkUsers();
        return;
    }
    clearTimeout(t);
    if (!checkT) {
        checkTel($("txtTel").value);
    }
    
    if (checkName && checkT && checkPayTypes) {
        if (confirm("确定要提交吗!")) {
            $("panelSelect").style.display = "none";
            $("panelOrder").style.display = "block";
        }
        return;
    }
    if (!checkPayTypes) {
        alert("您还没选择充值到哪里!");
        return;
    }

    alert("数据验证没有通过,请重新输入");
}

function showaddpint(obj) {
    if (obj == "divpt") {
        $(obj).style.display = "block";
        $("divGame").style.display = "none";
        //$("gameregion").options.length = 0;
        $("gameid").value = "0";
        $("spgamename").innerHTML = "";
        $("sptarget").innerHTML = "充值到平台";
        tempid = 0;
        checkRegion = false;
    }
    else {
        $(obj).style.display = "block";
        $("divpt").style.display = "none";
        $("sptarget").innerHTML = "游戏";
checkRegion=false;
    }
    changeSelect(2);
    checkPayTypes = true;
}

function changeTotal(obj) {
    var price = obj.options[obj.selectedIndex].value;
    var text = obj.options[obj.selectedIndex].text;
    var mult = obj.getAttribute("mult");
    $("sppoints").innerHTML = parseInt(price) * parseInt(mult);
    $("sptotal").innerHTML = price;
}

function changeRegion(obj) {
    $("sptarget").innerHTML = $("spgamename").innerHTML +" - "+ obj.options[obj.selectedIndex].text;
}


/*login function*/
var usernames = false;
var userpwds = false;
var logincode = false;
function checkUserNames() {
    usernames = false;
    var pwd1 = $("txtUserName").value;
    $("spaccount").innerHTML = "";
    var reg = /^[a-zA-Z0-9]{6,20}$/;
    if (!reg.test(pwd1)) {
        $("spaccount").innerHTML = "用户名为6到20位之间的数字字母组合";
        return;
    }
    usernames = true;
    $("spaccount").innerHTML = "";
}
function checkLoginPwd() {
    userpwds = false;
    var pwd1 = $("txtPwd1").value;
    if (pwd1.length < 6) {
        $("sppwds").innerHTML = "密码为6到20位数字字母组合";
        return;
    }
    userpwds = true;
    $("sppwds").innerHTML = "";
}
function checkLoginCode() {
    logincode = false;
    var pwd1 = $("txtCode").value;
    if (isNaN(pwd1)) {
        $("spcode").innerHTML = "验证码输入有误";
        return;
    }
    logincode = true;
    $("spcode").innerHTML = "";
}

function checkLogin() {
    //if (usernames && userpwds && logincode)
    if (!usernames) {
        checkUserNames();
    }
    if (!userpwds) {
        checkLoginPwd();
    }
    if (!logincode) {
        checkLoginCode();
    }
    if (usernames && userpwds && logincode)
        return true;
    alert("您的数据输入不正确,请检查");
    return false;
}

/*feipei*/
function checkPoint(point) {
    var sp = $("spangame");
    sp.innerHTML = "";
    var totalp = $("sppoints").innerHTML;
    if (!isNumber(point) || parseInt(point)<10) {
        sp.innerHTML = "输入的不是有效的点数,一次最少分配10点";
        return;
    }
    if (parseInt(point) > parseInt(totalp)) {
        sp.innerHTML = "您的点数不足";
        return;
    }
    var obj = $("ddlGames");
    switch (obj.options[obj.selectedIndex].text) {
        case "封神争霸":
            sp.innerHTML = "与封神争霸的兑换比率为1:1,您在游戏中将获得的点数为: "+point;
            return;
        case "精武门":
            sp.innerHTML = "与精武门的兑换比率为1:10,您在游戏中将获得的点数为: " + parseInt(point) * 10;
            return;
    }
}

function changeSelect(val) {
    var sel = $("select");
    if (val == "6") {
        for (var i = 0; i < sel.options.length; i++) {
            var v = sel.options[i].value;
            sel.options[i].text = v + "元兑换" + (parseInt(v) * 100) + "点";
        }
        sel.setAttribute("mult", "100");
    }
    else {
        for (var i = 0; i < sel.options.length; i++) {
            var v = sel.options[i].value;
            sel.options[i].text = v + "元兑换" + (parseInt(v) * 10) + "点";
        }
        sel.setAttribute("mult", "10");
    }
    changeTotal(sel);
}

function changeGame(obj) {
    var val = obj.options[obj.selectedIndex].value;
    if ($("txtPoints")) {
        checkPoint($("txtPoints").value);
    }
    if ($("select")) {
        changeSelect(val);
    }
    Ajax("/Ajax/Code.ashx?action=game&gameid=" + val, changeGameRegion, "post", changGameError);
}

function changGameError(status, statusText) {
    alert(status + " " + statusText);
}

function changeGameRegion(responseText, responseXML) {
    var arlist = new Array(responseText.split('|'));
    var sel = $("gameregion");
    sel.options.length = 0;
    for (var i = 0; i < responseText.split('|').length; i++) {
        if (responseText.split('|')[i] = "")
            continue;
        var opt = document.createElement("OPTION");
        opt.setAttribute("value", responseText.split('|')[i].split(',')[0]);
        opt.text = responseText.split('|')[i].split(',')[1];
        sel.options.add(opt);
    }
    //$("sptarget").innerHTML = $("spgamename").innerHTML;
    //$("sptarget").innerHTML = $("spgamename").innerHTML + " - " + sel.options[sel.selectedIndex].text;
}

function confirmSubmit() {
    var sel = $("ddlGames");
    var region = $("gameregion");
    var points = $("sppoints").innerHTML;
    var fenpei = $("txtPoints").value;
    if (!isNumber(fenpei)) {
        alert("请输入要分配的点数");
        return false;
    }
    if (parseInt(fenpei) > parseInt(points)) {
        alert("您的点数不足");
        return false;
    }
    var game = sel.options[sel.selectedIndex].text;
    var gregion = region.options[region.selectedIndex].text;
    return confirm("确定要将 "+fenpei+"点 分配到\n\n" + game + " " + gregion);
    
}
