﻿function warn_init(n){
	var d=document.getElementById("warn_"+n);
	if(!d) return;
	d.className="warn_finish";
	var s=d.getAttribute("finish");
	d.innerHTML=s?s:d.old;
}
function game_init(n){
	var o=document.getElementById(n);
	o.length=parseInt(o.getAttribute("min"));
	for(var e in game) o.options[o.length]=new Option(game[e],e);
	if(!o.onchange)o.onchange=o.inbox=function(v){
		warn_init(this.name);
		type_init(this.getAttribute("next_type"),v?v:o.value);
		server_init(this.getAttribute("next_server"),v?v:o.value);
	}
}
function other_fill(n,l){
	var o=document.getElementById(n);
	if(!o||!l) return;
	for(var e in l) o.options[o.length]=new Option(l[e][2],e);
}
function level_fill(n,v){
	var o=document.getElementById(n);
	if(!o) return;
	o.length=parseInt(o.getAttribute("min"));
	var l=level[v];if(!l)return;
	for(var e in l) o.options[o.length]=new Option(e,e);
}
function level_skill(p,n){
	var o=document.getElementById(n);
	if(!o) return;
	o.length=parseInt(o.getAttribute("min"));
	var l=skill[p.value]; if(!l) return;
	for(var e in l) o.options[o.length]=new Option(l[e][2],e);
}
function level_init(n){
	var o=document.getElementById(n);
	o.length=parseInt(o.getAttribute("min"));
	for(var e in game) o.options[o.length]=new Option(game[e],e);
	if(!o.onchange)o.onchange=o.inbox=function(v){
		warn_init(this.name);
		kind_init(this.getAttribute("next"),v?v:o.value);
	}
}
function kind_init(n,v){
	var o=document.getElementById(n);
	if(!o) return;
	o.length=parseInt(o.getAttribute("min"));
	var l=kind[v];if(!l)return;
	for(var e in l) o.options[o.length]=new Option(l[e],e);
	if(!o.onchange)o.onchange=function(){warn_init(o.name)}
}
function type_init(n,v){
	var o=document.getElementById(n);
	if(!o) return;
	o.length=parseInt(o.getAttribute("min"));
	var l=type[v];
	for(var e in l) o.options[o.length]=new Option(l[e],e);
	if(!o.onchange)o.onchange=function(){	warn_init(o.name)}
}
function server_init(n,v){
	var o=document.getElementById(n);
	if(!o) return;
	o.length=parseInt(o.getAttribute("min"));
	var l=server[v];
	for(var e in l) o.options[o.length]=new Option(l[e],e);
	if(!o.onchange)o.onchange=function(){warn_init(o.name)}
	document.body.focus();
	//server_map(n,l);
}
function server_map(n,l){
	var next=document.getElementById(n).getAttribute("next");
	if(!next) return;
	var c=document.getElementById(next);
	if(!c) return;
	var tmp={},num=0;
	for(var id in l){
		var a=l[id].substring(0,1).toUpperCase();
		if(!tmp[a]) { tmp[a]=[]; num++}
		var arr=tmp[a];
		arr[arr.length]=[l[id],id];
		num++;
	}
	if(num<=2) return c.innerHTML="";
	var max=(num-1)/3+1;
	var s=["<table width=100% cellspacing=5><tr>"],index=0;
	for(var e in tmp){
		if(index==0)s[s.length]="<td valign=top>";
		s[s.length]="<div class=letter>"+e+"</div><div class=line></div>";
		index++;
		for(var i=0;i<tmp[e].length;i++){
			if(index==0)s[s.length]="<td valign=top>";
			s[s.length]="<a href='#' onclick=\"return server_sel('"+n+"',"+tmp[e][i][1]+")\">"+tmp[e][i][0]+"</a><br>";
			index++;
			if(index>=max){
				s[s.length]="</td>";
				index=0;
			}
		}
	}
	s[s.length]="</tr></table>";
	c.innerHTML=s.join("");
}
function ser(v){
	var o=document.getElementById("server");
	if(!o) return;
	o.value=v;
	set_server();
	return false;
}