﻿function tocookie(o){
	var s="";
	for(var e in o){
		if(s.length>0) s+=",";
		var t="\""+e+"\"";
		if(typeof(o[e])=="object") s+=t+":"+tocookie(o[e]);
		else if(typeof(o[e])=="string") s+=t+":\""+o[e]+"\"";
		else s+=t+":"+o[e];
	}
	return "{"+s+"}";
}
function visit(){
	F.call("/index.visit","",function(p){
		if(!p||p.length==0) return;
		var o=$("visit"),a=[];
		if(!o) return;
		for(var i=0;i<p.length;i++){
			a.push(p[i][0]+" is placing order ... "+p[i][1]+"<br/>");
		}
		o.innerHTML=a.join('');
	});
}
function format(v,len){
	if(v==void(0)||v==null) return "";
	v=(Math.round(parseFloat(v)*100)/100).toString();
	var p=v.indexOf(".");
	if(p==-1) v+=".00";
	else if(p==v.length-2) v+="0";
	else v=v.substring(0,p+3);
	if(len){var m=len-v.length;for(var i=0;i<m;i++)v="&nbsp;"+v;}
	return v;
}
var cartpara={cur:"USD"},curgold=null;
var couponrate=0;
function getrate(){
	var p=parseInt(Cookie.get("rate"))||0; 
	return Math.max(p,couponrate);
}
function check_coupon(){
	var v=$("coupon").value;
	if(!v) return alert("Please input coupon code first!");
	var p = F.call("pay.coupon",v);
	if(p.success){
		couponrate=p.rate?p.rate:couponmin;
		calbonus();
	}
	else{
		couponrate=0;
		$("coupon").value="";
	}
}
function pchoose(o){
	$$(F.top(o),"INPUT")[0].checked=true;
}
function finish(){
	var r=$$$("pradio"),num=0;
	for(var i=0;i<r.length;i++){
		if(!r[i].checked) continue;
		num++;
		if(i==2){
			okdata("WestUnion");
			location="/westunion.htm";
		}
		else okpaypal();
	}
	if(num==0) alert("Please choose one of the payment methods above.");
}
function okdata(pay){
	var cc=$("yourcur").getAttribute("data"),pr=(100-getrate()),s=[];
	if(!cc) cc="USD";
	if(order.type=="Gold"){
		s.push("<row");
		s.push(" order_coupon=\"" + F.xmlIn(order.coupon) + "\"");
		s.push(" order_no=\"" + order.number + "\"");
		s.push(" order_gameid=\"" + order.gid + "\"");
		s.push(" order_sid=\"" + order.sid + "\"");
		s.push(" order_tid=\"" + order.tid + "\"");
		s.push(" order_server=\"" + F.xmlIn(order.server) + "\"");
		s.push(" order_name=\"" + F.xmlIn(order.name) + "\"");
		s.push(" order_char=\"" + F.xmlIn(order.char) + "\"");
		s.push(" order_email=\"" + F.xmlIn(order.email) + "\"");
		s.push(" order_tel=\"" + F.xmlIn(order.tel) + "\"");
		s.push(" order_country=\"" + F.xmlIn(order.country) + "\"");
		s.push(" order_money=\"" + format(order.price*pr/100) + "\"");
		s.push(" order_num=\"" + order.num + "\"");
		s.push(" order_note=\"" + F.xmlIn(order.note) + "\"");
		s.push(" order_pay=\"" + pay + "\"");
		s.push("/>");
		var ret=F.callxml("/pay.gold","<data>"+s.join("")+"</data>");
		if(!ret||!ret.success) throw {message:"Sorry! Server is Busy, Please Try Later."};
	}
	else if(order.type=="Powerleveling"){
		s.push("<row");
		s.push(" order_coupon=\"" + F.xmlIn(order.coupon) + "\"");
		s.push(" order_no=\"" + order.number + "\"");
		s.push(" order_gameid=\"" + order.gid + "\"");
		s.push(" order_server=\"" + F.xmlIn(order.server) + "\"");
		s.push(" order_char=\"" + F.xmlIn(order.char) + "\"");
		s.push(" order_profession=\"" + F.xmlIn(order.profession) + "\"");
		s.push(" order_login=\"" + F.xmlIn(order.account) + "\"");
		s.push(" order_pwd=\"" + F.xmlIn(order.password) + "\"");
		s.push(" order_level_start=\"" + order.start + "\"");
		s.push(" order_level_now=\"" + order.start + "\"");
		s.push(" order_level_end=\"" + order.end + "\"");
		s.push(" order_email=\"" + F.xmlIn(order.email) + "\"");
		s.push(" order_tel=\"" + F.xmlIn(order.tel) + "\"");
		s.push(" order_country=\"" + F.xmlIn(order.country) + "\"");
		var t=[];
		if(order.skill)t.push("Skill : "+order.skill);
		if(order.honor)t.push("Honor : "+order.honor);
		if(order.quest)t.push("Quest : "+order.quest);
		if(order.pack)t.push(order.pack);
		if(t.length>0)s.push(" order_pack=\"" + F.xmlIn(t.join(" | ")) + "\"");
		s.push(" order_money=\"" + format(order.price*pr/100) + "\"");
		s.push(" order_note=\"" + F.xmlIn(order.note) + "\"");
		s.push(" order_pay=\"" + pay + "\"");
		s.push("/>");
		var ret=F.callxml("/pay.level","<data>"+s.join('')+"</data>");
		if(!ret||!ret.success) throw {message:"Sorry! Server is Busy, Please Try Later."};
	}
}
function okgoogle(){
try{
	var pr=(100-getrate());
	var cc=$("yourcur").getAttribute("data");
	if(!cc) cc="USD";
	if(cc!="USD"){
		alert("Google Checkout only support U.S. dollars,please change your Currency or Pay Method!");
		var y=$("yourcur");
		y.setAttribute("data",(cartpara.cur=cc="USD"));
		var a=y.getElementsByTagName("A");
		for(var j=0;j<a.length;j++)a[j].className=a[j].innerHTML==cc?"focus":"";
		myhot(total);
		return;
	}
	okdata("Google");
	var r=rate[cc];

	var g=$("form_google"),count=0,price=0;
	for(var e in order){
		var o=order[e];
		count++;
		price+=o.price;
		g.appendChild(create("item_name_"+count,o.number));
		g.appendChild(create("item_description_"+count,o.game+" | "+ o.num+" "+o.item));
		g.appendChild(create("item_quantity_"+count,1));
		g.appendChild(create("item_price_"+count,format(o.price*pr/100/r[0])));
		g.appendChild(create("item_currency_"+count,cc));
	}
	for(var e in cart){
		var o=cart[e];
		count++;
		price+=o.price;
		
		var lvl="",s=[];
		
		if(o.start>0) lvl="Level : "+o.start+" to "+o.end + " | ";
		if(o.skill) s[s.length]="Skill : "+o.skill;
		if(o.honor) s[s.length]="Honor : "+o.honor;
		if(o.quest) s[s.length]="Quest : "+o.quest;
		if(o.pack) s[s.length]=o.pack;

		if(s.length>0) lvl+=s.join(" | ");
		if(lvl>"") lvl=" | " + lvl;

		g.appendChild(create("item_name_"+count,o.number));
		g.appendChild(create("item_description_"+count,o.game+lvl));
		g.appendChild(create("item_quantity_"+count,1));
		g.appendChild(create("item_price_"+count,format(o.price*pr/100/r[0])));
		g.appendChild(create("item_currency_"+count,cc));
	}
	Cookie.set("order","");
	Cookie.set("cart","");
	Cookie.set("cart","");
	$("form_google").submit();
}catch(e){alert(e.message);}
}
function okpaypal(){
try{
	var pr=(100-getrate());
	okdata("PayPal");
	var cc=$("yourcur").getAttribute("data");
	if(!cc) cc="USD";
	var r=rate[cc];
	var p=$("form_paypal");
	if(order.type=="Gold"){
		p.appendChild(create("item_number_1",order.number));
		p.appendChild(create("item_name_1",order.server));
		p.appendChild(create("on0_1",order.item));
		p.appendChild(create("os0_1",order.num));
		p.appendChild(create("amount_1",format(order.price*pr/100/r[0])));
	}
	else if(order.type=="Powerleveling"){
		var lvl="",s=[];	
		p.appendChild(create("item_number_1",order.number));
		p.appendChild(create("item_name_1",order.server));
		p.appendChild(create("amount_1",format(order.price*pr/100/r[0])));
		if(order.start>0){
			p.appendChild(create("on0_1","Level"));
			p.appendChild(create("os0_1",order.start+" to "+order.end));
			lvl="Level : "+order.start+" to "+order.end + " | ";
		}
		if(order.skill) s.push("Skill : "+order.skill);
		if(order.honor) s.push("Honor : "+order.honor);
		if(order.quest) s.push("Quest : "+order.quest);
		if(order.pack) s.push(order.pack);

		if(s.length>0){
			p.appendChild(create("on1_1","Detail"));
			p.appendChild(create("os1_1",s.join(" | ")));
			lvl+=s.join(" | ");
		}
		if(lvl>"") lvl=" | " + lvl;
	}
	p.appendChild(create("currency_code",cc));
	p.appendChild(create("notify_url","http://www.oofay.com.cn/monitor.ashx"));

	Cookie.set("cur","");
	$("form_paypal").submit();
}catch(e){alert(e.message);}
}
function create(n,v){
	var o=document.createElement("INPUT");
	o.type="hidden";
	o.name=n;
	o.value=v;
	return o;
}