﻿/**

*	ajax

* strUrl : 发送的地址

* runName: 要返回至要显示数据的对像名称

* functionName: 调用函数的名称

* runType: 返回的类型;类型有:select/innerHTML/;默认为innerHTML

*/

function getRequest( strURL, runName, functionName, runType ){ 	

	var req;

	//~ alert(strURL);

 //if( runType == '' ) runType = "innerHTML";

	if( runType == '' ) runType = "innerHTML";

	if( typeof functionName == 'undefined' ) functionName = "this";



	// branch for native XMLHttpRequest object

	

	if(window.XMLHttpRequest){ // For Mozilla, Safari, ...

		var req = new XMLHttpRequest();

	}else if(window.ActiveXObject){ // For Internet Explorer

		var req = new ActiveXObject("Microsoft.XMLHTTP");

	}

	//~ alert(strURL);
	req.open('GET', strURL, true);
	req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

	req.onreadystatechange = function(){

			var objName = document.getElementById(runName);

			

				if (req.readyState == 4){ // only if "OK"



					if (req.status == 200){

						var xmlResult = req.responseText;//~ alert( xmlResult );

						/** 选择函数 **/

							switch( functionName ){

								case "this":

									runResponseTxt( objName, xmlResult, runType );

								break;

								case "runResponseTxt":									

									runResponseTxt( objName, xmlResult, runType );

								break;

								case "selectServer":

									selectServer( xmlResult );

								break;

								case "discountList":		//折扣列表

									discountList( xmlResult );

								break;

								case "modifySuccess":

									modifySuccess( xmlResult );

								break;

								default:

									runResponseTxt( objName, xmlResult, runType );

								break;

						}//end switch

					}else{

						alert("An error  was encountered in attaining data!\nMake sure your network connected well;or contact adminstrator,thanks.:\n" + req.statusText);

						

					}

				}else{

					

					if( runType != 'select' ){

						//objName.innerHTML = "data downloading......";

					}

					

				}//end if

	};  //Once the state changed,the function "processReqChange" will be excuted.



	//req.open("GET", strURL, true);

	req.send(strURL);

}



/**

*	写入返回内容

*/

function runResponseTxt( objName, xmlResult, runType  ){

		//var root = xmlResult.documentElement;

		//alert(xmlResult);

		var NavName=navigator.appName;           //浏览器类型   

    var vers=navigator.appVersion;     //浏览器版本号   

		

		var strOption = '';

		

		switch( runType ){

			case "innerHTML":

				objName.innerHTML= xmlResult;

				break;

				case 'select':		//写入input 的select    		

    		

				var option_node = document.createElement("OPTION");

				var strc = xmlResult;

				strc = eval('(' + strc + ')');				

				

				//先删除数据

				var c;				

				

				for( c = 0; c < objName.length; c++ ){

															

      		if( NavName == 'Microsoft Internet Explorer'){      		

						objName.options.remove(c);

					}else{

						objName.remove(c);

					}

				}

				

				if( strc != -1 ){

					//如果有数据执行

					//c.results数据总数

					for( var i = 0; i < strc.results; i++  ){

						objName.options[i] = new Option(strc.rows[i].k,strc.rows[i].i);
						if(i == 1)objName.options[i].selected = true;

					}

				}

				break;

			default:

				objName.innerHTML = xmlResult;

				break;

		}

}//end function 



/**

*	得到单价

* baseUrl: 发送信息地址

* serverid: 服务器ID

*/

function getUnitPrice( serverid, strURL, jg){


	if( typeof jg == 'undefined' ) jg = 0;
	
	var strSveName = document.getElementById("servername").value;		//服务器值//~ alert(strSveName);

	var strFtnName = document.getElementById("faction").value;			//派别	

	var intTdeNum = document.getElementById("trade_num").value;			//数量

	var check = 1;

	var objRadio = document.getElementById("orderOption");
	
	var int_server_id = document.getElementById("servername").value;		//服务器ID
	//var strBaseUrl = 'http://192.168.1.202/';	//基本地址
	var strBaseUrl = 'http://www.vcpit.com/';	//基本地址
	var strShowJDT = '';	//进度条内容
	var intTotal = serverName[int_server_id];
	var intNumJDT = Math.round( intTotal / 3000 );
	var intTimeTotal = serverNameTime[int_server_id];
	var intTimeNumJDT = Math.round( intTimeTotal / 6 );


	//如果服务或者派别数值为零时提示

	var showUnitPrice1 = document.getElementById("showUnitPrice1");

	var showTotalPrice1 = document.getElementById("showTotalPrice1");
	var intNum = 20;
	
	
	//如果为空先查看是是什么区域
	if( ( document.getElementsByName("game_id")[0].value == 1 )  && jg == 2 ){
		
		serverArea = document.getElementsByName("serverarea");
		
		for(var i=0;i<serverArea.length;i++){				
			if(serverArea[i].checked){
				var g = serverArea[i].value;
				break;
			}

		}
		//~ alert( g );
		//~ alert(typeof g);
		if( g == '100' ){
			strSveName = 1;
		}else{
			strSveName = 673;
		}

		
	}


	if( strSveName == 0 || strFtnName == -1){

		if (showUnitPrice1!=null) showUnitPrice1.value = "Choose your realm and faction";

		if (showTotalPrice1!=null) showTotalPrice1.value = "Choose your realm and faction";
		

		for( var i=intNum; i >= 0; i-- ){
			if (document.getElementById("tx"+i) != null){
				document.getElementById("tx"+i).value = "0.0000";
			}
		}
		
		document.getElementById("storeLen").innerHTML = 0;
		document.getElementById("SendTime").innerHTML = 0;
		/*document.getElementById("storeJDT").style.width= "0px";
		document.getElementById("zeros").style.display= "";
		document.getElementById("haveCut").style.display= "none";		
		document.getElementById("s16show").style.display= "";*/
		/*
		*	存取条
		*/
		strShowJDT = '<table width="100%" border="0" cellpadding="1" cellspacing="1"><tr>';
		for( var i = 1; i <= 10; i++  ){				
			strShowJDT = '<td><img src="'+strBaseUrl+'images/ant.gif" width="34" height="7" /></td>';			
		}		
		strShowJDT = '</tr></table>';
		document.getElementById("storeYJdt").innerHTML = strShowJDT;
		
		return 0;

	}else{

		if (showUnitPrice1!=null) showUnitPrice1.value = "Loading...";

		if (showTotalPrice1!=null) showTotalPrice1.value = "Loading...";

	}



	var strURL = strURL+strSveName+"/"+intTdeNum;



	document.getElementById("server_id").value = strSveName;	//serverid;	//把数据放入server_id表单

	

	//得到 Ordering Options值	



	if( objRadio.checked == false){

		check = 2

	}
	
	
	if( jg == 0 ){
		
		document.getElementById("storeLen").innerHTML = serverName[int_server_id];
		document.getElementById("SendTime").innerHTML = serverNameTime[int_server_id];
		
		//发货条
		strShowJDT = '<table width="100%" border="0" cellpadding="1" cellspacing="1"><tr>';
		
		for( var i = 1; i <= 10; i++  ){
			if( i <= intNumJDT  ){
				strShowJDT += ' <td><img src="'+strBaseUrl+'images/mit.gif" width="34" height="7" /></td>';
			}else{
				strShowJDT += '<td><img src="'+strBaseUrl+'images/ant.gif" width="34" height="7" /></td>';
			}
		}		
		strShowJDT += '</tr></table>';		
		document.getElementById("storeYJdt").innerHTML = strShowJDT;
		
		//发货时间条
		strShowJDT = '';
		strShowJDT = '<table width="100%" border="0" cellpadding="1" cellspacing="1"><tr>';
		for( var i = 1; i <= 10; i++  ){
			if( i < intTimeNumJDT  ){
				strShowJDT += ' <td><img src="'+strBaseUrl+'images/mit.gif" width="34" height="7" /></td>';
			}else{
				strShowJDT += '<td><img src="'+strBaseUrl+'images/ant.gif" width="34" height="7" /></td>';
			}
		}		
		strShowJDT += '</tr></table>';		
		document.getElementById("showSendTime").innerHTML = strShowJDT;
		
		//库存条parseInt(Math.random()*(上限-下限+1)+下限); 
		//~ document.getElementById("storeLen").innerHTML = '1000';
		/*var rdm = Math.floor(Math.random()*20001+10000);
		document.getElementById("storeLen").innerHTML = rdm;
		document.getElementById("storeJDT").style.width= rdm/(30000/470)+"px";
		document.getElementById("zeros").style.display= "none";
		document.getElementById("haveCut").style.display= "";
		document.getElementById("storeJDT").style.display= "";
		document.getElementById("s16show").style.display= "none";*/
		
	}
	
	getRequest( strURL+"/price/"+check+"/"+strFtnName, 'showUnitPrice', 'selectServer' );				//总数

	getRequest( strURL+"/discount/"+check+"/"+strFtnName, 'showUnitPrice', 'discountList' );		//折扣



}



/**

*	输出返回派别

* strUrl : 地址

* iupName: 名称

*/

function outputFaction( strUrl, iupName ){

	

	var obj = document.getElementById("servername");

	var serCode = obj.value;	//服务器代号	

	var serName = document.getElementById("servername").options[obj.selectedIndex].text;	//服务器名称

	

	strUrl += serCode+"/"+serName;

	

	getRequest( strUrl, iupName, 'runResponseTxt', 'select' );

}





/**

* 选择服务器，后得单价

*/

function selectServer( reqTxt ){

	var strUnit = '';

	if( reqTxt == "error_001" ) alert("服务选择有误!");

	if( reqTxt == "error_002" ) alert("数量选择有误!");

	

	var arTxt = reqTxt.split('@');

	var er = '';

	
	var url = location.href; 
	var paraString = url.split("/");  
	//alert(paraString);
	var oldValue = arTxt[1];
	//var oldValue1 = arTxt[3];
	var match = /^(\d+(\.\d)?)(\d*)$/;
	var ok = match.test(oldValue);
	//var ok1 = match.test(oldValue1);
	var oldValue = RegExp.$1;
	//var oldValue1 = RegExp.$1;
	

	strUnit = getUnitString( paraString[6] );	//得到单位
	document.getElementById( "showUnitPrice1" ).value = "$"+arTxt[0]+strUnit;		//单价

	document.getElementById( "showTotalPrice1" ).value = "$"+oldValue+" USD"+arTxt[3];		//总价
	
	

	document.getElementById( "showUnitPrice" ).value = arTxt[0];		//单价

	document.getElementById( "showTotalPrice" ).value = arTxt[1];		//总价

	/*

	er = document.getElementById( "exchangeRate" );			

	er.innerHTML = "$"+arTxt[1]+"EU";		//总价

	er.style.display = '';

	*/

	//document.getElementById( "showDiscount" ).innerHTML = arTxt[2];		//折扣

}


/**
* 得到数据单位
*/
function getUnitString( gid ){
	var str;
	switch( parseFloat(gid) ){
		case 1:
			str = "USD/gold";
		break;
		case 2:
			str = "USD/GOLD";
		break
		case 3:
			str = "USD/Million Gil";
		break;
		case 4:
			str = "USD/Million Adena";
		break;
		default:
			str = "USD/gold";
		break;
	}//end switch
	
	return str;
}


/**

*	得到折扣列表

* reqTxt: 返回的数组

* 格式: reqTxt[i].key input名称

* reqTxt[i].value  数值

*/

function discountList( reqTxt ){	

	//~ alert(reqTxt);
	
	var ojbStrc = eval('(' + reqTxt+ ')');
	//~ alert( ojbStrc.results );
	//~ alert( ojbStrc.tx1);

	var intNum = ojbStrc.results;
	var i, id_name, tx_value;

	for(i=0; i<intNum; i++){
		id_name = 'tx' + i;
		eval('tx_value = ojbStrc.tx' + (intNum - i) + ';');
		
		document.getElementById(id_name).value = parseFloat(tx_value).toFixed(2);
	}

}



/**

* 修改电话号码

*/

function modifyPhone( strUrl ){

	var strpn = document.getElementById("phoneNum").value;

	strUrl += "/"+strpn;

	getRequest( strUrl, 'load', 'modifySuccess' );

}

/**

*	修改成功

*/

function modifySuccess( reqTxt ){

	document.getElementById("load").innerHTML = '';

	alert( reqTxt );

}



/** 回车提交 **/

 function submitFormOnLog(event){ 	

 		var strEmail = '';

 		var strPassword = ''; 		

 		

    if( event.keyCode == 13 ) {

    	

    	strEmail = document.getElementById("customers_email_address").value;

 	strPassword = document.getElementById("customers_password").value;

 		  

    	if( strEmail != '' ){    		

    		if( strPassword != '' ){

      		document.getElementById('customer').submit();

      	}else{

      		alert('Required');

      	}

      }else{

      	alert('Incorrect Email Address');

      }

    }

}

/** 提交登录表单 **/

function submitloginForm(){

	var strEmail = '';

 	var strPassword = '';

 	

	strEmail = document.getElementById("customers_email_address").value;

 	strPassword = document.getElementById("customers_password").value;

 	

	if( strEmail != '' ){

    	if( strPassword != '' ){

      	document.getElementById('customer').submit();

      }else{

      	alert('Required');

    	}

  }else{

      alert('Incorrect Email Address');

  }

}



/**

*	提交Email 到 http://www.aweber.com/scripts/addlead.pl

***/

function submitEmailToAweber( strUrl, Validator ){

	

	var objFrom = document.getElementById("formEmail");

	var intOk = Validator.Validate(objFrom,3);

	var blnSubmit = '';

	

	if( intOk ){

		

		//提交到aweber

		objFrom.method="post";

		objFrom.action="http://www.aweber.com/scripts/addlead.pl";

		objFrom.target="_new";

		blnSubmit = objFrom.submit();

		

		//alert(blnSubmit);

		

		//提交到自己数据库

		postAjaxRequest( strUrl, 'formEmail' );

		return true;

	}

	

	return false;	

}
/**
*	保留小数点
*  num ：保留小数点后的几位数
*/
  //~ Number.prototype.toFixed=function(num)
   //~ {
	   //~ //重新构造toFixed方法,IE5.0+
	   //~ with(Math)this.NO=round(this.valueOf()*pow(10,num))/pow(10,num);
	   //~ return String(/\./g.exec(this.NO)?this.NO:this.NO+"."+String(Math.pow(10,num)).substr(1,num));
   //~ }