function trim(str){
return  str.replace(/(^\s*)|(\s*$)/g,"");
}
var showFlag=false;
$(document).ready(function(){

$("#usServerType").focus(function(){
$("#usServerType").val("");
var currentMoneyType=$("#currentMoneyType").val();
initBaseUSPrice(currentMoneyType,"World Of Warcraft - US","1000");
initBaseEUPrice(currentMoneyType,"World Of Warcraft - EU","1000");
initNumberPrice("World Of Warcraft - US",currentMoneyType);
});
$("#euServerType").focus(function(){
$("#euServerType").val("");
var currentMoneyType=$("#currentMoneyType").val();
initBaseSecondEUPrice(currentMoneyType,"World Of Warcraft - EU","1000");
initBaseSecondUSPrice(currentMoneyType,"World Of Warcraft - US","1000");
initNumberPrice("World Of Warcraft - EU",currentMoneyType);
});
$("#usServerType").keyup(function(){
   var serverName=$("#usServerType").val();
   if(serverName.length>=2){
     showServerName("US",serverName);
    }
    $("#euServerType").val("");
});
$("#euServerType").keyup(function(){
   var serverName=$("#euServerType").val();
   if(serverName.length>=2){
    showServerName("EU",serverName);
    }
     $("#usServerType").val("");
});
initBaseUSPrice("USD","World Of Warcraft - US","1000");
initBaseEUPrice("USD","World Of Warcraft - EU","1000");
initNumberPrice("World Of Warcraft - US","USD");

$("#goldNumberPrice").click(function(){
          if($("#goldNumberContent").css("display")=="block"){
             $("#goldNumberContent").hide("slow");
             showFlag=false;
          }
          if($("#goldNumberContent").css("display")=="none"){
             $("#goldNumberContent").show("slow");
             showFlag=true;
          }
   });
   $("#goldNumberPriceValue").click(function(){
          if($("#goldNumberContent").css("display")=="block"){
             $("#goldNumberContent").hide("slow");
             showFlag=false;
          }
          if($("#goldNumberContent").css("display")=="none"){
             $("#goldNumberContent").show("slow");
             showFlag=true;
          }
   });
   $("#couponCodeApply").click(function(){
      checkCouponCode();
   });
    $("#usTransfer").click(function(){
       transferMoneyType("USD","World Of Warcraft - US","1000")
   });
    $("#euTransfer").click(function(){
       transferMoneyType("EUR","World Of Warcraft - EU","1000")
   });
   
});

function initBaseUSPrice(moneyType,gameName,goldNumber){
var  searchUrl="../wow_gold/showPerGoldPrice.jsp?gameName="+gameName+"&goldNumber="+goldNumber+"&moneyType="+moneyType;
var initNumber=10000;
$.ajax({
		type: "post",
		url: searchUrl,
		success: function(msg){	
		if(moneyType=="USD"){
		   moneyFlag="$";
		}else if(moneyType=="EUR"){
		   moneyFlag="&euro;";
		}
		var priceValue=trim(msg)
		var result=moneyFlag+priceValue;
	    $("#usPrice").html(result);
	    //$("#euPrice").html(result);
	    var currentPrice=0.0;
	    if(result!=""){
	      currentPrice=(parseFloat(priceValue)/1000)*initNumber;
	    }
	    var defaultPrice=$("#defaultPrice").text();
	    var goldNumber=$("#goldNumber").text();
	    if(defaultPrice==""||goldNumber==""){
	     $("#defaultPrice").html(moneyFlag+currentPrice.toFixed(2));
	     goldNumber=initNumber;
	    }else{
	      var tempGoldNumber=trim(goldNumber.substring(0,goldNumber.lastIndexOf("Gold")));
	       currentPrice=(parseFloat(priceValue)/1000)*tempGoldNumber;
	       goldNumber=tempGoldNumber;
	     }
	     $("#defaultPrice").html(moneyFlag+currentPrice.toFixed(2));
	     $("#goldNumber").html(goldNumber+" Gold");
	     $("#defaultTotalPrice").html(moneyFlag+currentPrice.toFixed(2));
	     $("#orderPrice").html(moneyFlag+currentPrice.toFixed(2));
	     $("#currentMoneyType").val(moneyType);
	     $("#currentOrderPrice").val(currentPrice.toFixed(2));
		}
	});
}

function initBaseEUPrice(moneyType,gameName,goldNumber){
var  searchUrl="../wow_gold/showPerGoldPrice.jsp?gameName="+gameName+"&goldNumber="+goldNumber+"&moneyType="+moneyType;
var initNumber=10000;
$.ajax({
		type: "post",
		url: searchUrl,
		success: function(msg){	
		if(moneyType=="USD"){
		   moneyFlag="$";
		}else if(moneyType=="EUR"){
		   moneyFlag="&euro;";
		}
		var priceValue=trim(msg)
		var result=moneyFlag+priceValue;
	    $("#euPrice").html(result);
		}
	});
}


function initBaseSecondEUPrice(moneyType,gameName,goldNumber){
var  searchUrl="../wow_gold/showPerGoldPrice.jsp?gameName="+gameName+"&goldNumber="+goldNumber+"&moneyType="+moneyType;
var initNumber=10000;
$.ajax({
		type: "post",
		url: searchUrl,
		success: function(msg){	
		if(moneyType=="USD"){
		   moneyFlag="$";
		}else if(moneyType=="EUR"){
		   moneyFlag="&euro;";
		}
		var priceValue=trim(msg)
		var result=moneyFlag+priceValue;
	    //$("#usPrice").html(result);
	    $("#euPrice").html(result);
	    var currentPrice=0.0;
	    if(result!=""){
	      currentPrice=(parseFloat(priceValue)/1000)*initNumber;
	    }
	    var defaultPrice=$("#defaultPrice").text();
	    var goldNumber=$("#goldNumber").text();
	    if(defaultPrice==""||goldNumber==""){
	     $("#defaultPrice").html(moneyFlag+currentPrice.toFixed(2));
	     goldNumber=initNumber;
	    }else{
	      var tempGoldNumber=trim(goldNumber.substring(0,goldNumber.lastIndexOf("Gold")));
	       currentPrice=Math.round((((parseFloat(priceValue)/1000)*tempGoldNumber)*100))/100;
	       goldNumber=tempGoldNumber;
	     }
	     $("#defaultPrice").html(moneyFlag+currentPrice.toFixed(2));
	     $("#goldNumber").html(goldNumber+" Gold");
	     $("#defaultTotalPrice").html(moneyFlag+currentPrice.toFixed(2));
	     $("#orderPrice").html(moneyFlag+currentPrice.toFixed(2));
	     $("#currentMoneyType").val(moneyType);
	     $("#currentOrderPrice").val(currentPrice.toFixed(2));
		}
	});
}

function initBaseSecondUSPrice(moneyType,gameName,goldNumber){
var  searchUrl="../wow_gold/showPerGoldPrice.jsp?gameName="+gameName+"&goldNumber="+goldNumber+"&moneyType="+moneyType;
var initNumber=10000;
$.ajax({
		type: "post",
		url: searchUrl,
		success: function(msg){	
		if(moneyType=="USD"){
		   moneyFlag="$";
		}else if(moneyType=="EUR"){
		   moneyFlag="&euro;";
		}
		var priceValue=trim(msg)
		var result=moneyFlag+priceValue;
	    $("#usPrice").html(result);
		}
	});
}


function  showServerName(serverType,serverName){
var  searchUrl="../wow_gold/loadWowServer.jsp?serverType="+serverType+"&serverName="+serverName;
$.ajax({
		type: "post",
		url: searchUrl,
		success: function(msg){	
		var result=trim(msg);
	       if(serverType=="US"){
	       if($("#euServerContent").css("display")=="block"){
	           $("#euServerContent").hide();
	           showFlag=false;
	       }
	       if(result!=""){
	       showFlag=true;
	        $("#usServerContent").fadeIn("slow");
	        $("#usServerContent").html(result);
	       }else if(result==""){
	          $("#usServerContent").hide();
	       }
	       }else if(serverType=="EU"){
	              if($("#usServerContent").css("display")=="block"){
	                 $("#usServerContent").hide();
	                 showFlag=false;
	             }
	            if(result!=""){
	               $("#euServerContent").fadeIn("slow");
	               $("#euServerContent").html(result);
	               showFlag=true;
	             }else if(result==""){
	                $("#euServerContent").hide();
	                 showFlag=false;
	            }
	       }
		}
	});
}

function setServerNameValue(serverType,serverName){
var  serverFlag=serverType+"ServerType";
var  serverContent=serverType+"ServerContent";
$("#"+serverFlag).val(serverName);
$("#"+serverContent).hide("slow");
if(serverName.indexOf("-")!=-1){
   $("#orderServerName").html(serverName.replace("-",":"));
}else{
   $("#orderServerName").html(serverName);
 }
 $("#currentServerName").val(serverName);
 showFlag=false;
}
function  initNumberPrice(gameName,moneyType){
var  searchUrl="../wow_gold/loadingGoldNumberPrice.jsp?gameName="+gameName+"&moneyType="+moneyType;
$.ajax({
		type: "post",
		url: searchUrl,
		success: function(msg){	
	       var result=trim(msg);
	       $("#goldNumberContent").html(result);
		}
	});
}

function setGoldNumberValue(goldNumber,goldUnit,priceFlag,priceValue){
$("#goldNumber").html(goldNumber+" "+goldUnit);
$("#defaultPrice").html(priceFlag+priceValue);
$("#orderGoldNumber").html(goldNumber);
$("#orderGoldUnit").html(goldUnit);
$("#orderPrice").html(priceFlag+priceValue);
$("#defaultTotalPrice").html(priceFlag+priceValue);
$("#currentGoldNumber").val(goldNumber);
$("#currentGoldUnit").val(goldUnit);
var moneyType="USD";
if(priceFlag=="$"){
moneyType="USD"
}else{
moneyType="EUR"
}
$("#currentMoneyType").val(moneyType);
$("#currentOrderPrice").val(priceValue);
$("#goldNumberContent").hide();
 showFlag=false;
}





function  checkCouponCode(){
var  couponCode=$("#couponCode").val();
var  currentOrderPrice=$("#currentOrderPrice").val();
var  searchUrl="../wow_gold/golddisaccount.jsp?couponCode="+couponCode+"&currentOrderPrice="+currentOrderPrice;
$.ajax({
		type: "post",
		url: searchUrl,
		success: function(msg){	
	       var result=trim(msg);
	      var moneyType=$("#currentMoneyType").val();
	       if(moneyType=="USD"){
		   moneyFlag="$";
		    }else if(moneyType=="EUR"){
		      moneyFlag="&euro;";
		    }
	       $("#orderPrice").html(moneyFlag+result);
		}
	});

}



function isemail(v){
    return /\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/.test(v);
}
function changeRadio(objId){
var flag=true;
var  selectRadio=document.getElementsByName(objId);
for(var k=0;k<selectRadio.length;k++){
   if(selectRadio[k].checked){
    flag=false;
    break;
   }
}
return flag;
}

function  checkUserInfo(){
var gameCharacter=$("#gameCharacter").val();
var firstName=$("#firstName").val();
var lastName=$("#lastName").val();
var userEmail=$("#userEmail").val();
var rbtnIsAccept=$("#rbtnIsAccept").attr("checked");
if(gameCharacter==""||gameCharacter.length==0){
alert("Please Input Character Name!");
}else if(firstName==""||firstName.length==0){
alert("Please Input First name!");
}else if(lastName==""||lastName.length==0){
alert("Please Input Last name!");
}else if(userEmail==""||userEmail.length==0){
alert("Please Input Email!");
}else if(!isemail(userEmail)){
alert("Email format is incorrect,Please Input Email again!");
}else if(checkTelephone()){
  alert("Please fill in your telephone number!");
}else if(changeRadio('paymentMethod')){
alert("Please Select Payment Methods!");
}else if(!rbtnIsAccept){
alert("Please check the box about terms and conditions!");
}else{
document.goldForm.submit();
}
}

function  checkTelephone(){
var flag=true;
var countryCode=$("#countryCode").val();
var not_use_tel=$("#not_use_tel").val();
var usa_tel1=$("#usa_tel1").val();
var usa_tel2=$("#usa_tel2").val();
var usa_tel3=$("#usa_tel3").val();
if(countryCode=="1"){
  if(usa_tel1!=""&&usa_tel2!=""&&usa_tel3!=""){
   flag=false;  
  }else{
    flag=true;
  }
}else{
if(countryCode==""){
flag=true;
}else if(not_use_tel==""){
flag=true;
}else{
flag=false;
}
}
return flag;
}



function  transferMoneyType(moneyType,gameName,goldNumber){
initBaseUSPrice(moneyType,"World Of Warcraft - US",goldNumber);
initNumberPrice(gameName,moneyType);
initBaseEUPrice(moneyType,"World Of Warcraft - EU",goldNumber);
}

$(document).click(function(){
if(showFlag){
if($("#usServerContent").css("display")=="block"){
$("#usServerContent").hide();
}
if($("#euServerContent").css("display")=="block"){
$("#euServerContent").hide();
}
if($("#goldNumberContent").css("display")=="block"){
$("#goldNumberContent").hide();
}
}
});

function  paymentSelect(objId,value){
var  selectRadio=document.getElementsByName(objId);
for(var k=0;k<selectRadio.length;k++){
   if(selectRadio[k].value==value){
    selectRadio[k].checked="true";
    break;
   }
}
}


