var fstrs=new Array();
var arrClass=new Array();;

function InitClasses(){
	if(arrClass.length>0) return true;
	this.addc=function(id){
		try{
			var cstr=eval("c"+id);
			if(cstr){
				arrClass.push(id+","+cstr);
				var cs = cstr.split(",");
				for(var i=0; i<cs.length; i++){
					var c=cs[i];
					var carr = c.split(":");
					if(carr.length==2)addc(carr[0]);
				}
			}
		}catch(e){}
	}
	addc(0);
}

function EchoClass(nav, opt, cid, selid)
{
	var c;
	var clist;
	for(var i=0; i<arrClass.length; i++){
		if(arrClass[i].indexOf(cid+",")==0){
			clist=arrClass[i].split(",");
			clist.shift();
			if(cid>0){
				opt.options.length=clist.length+1;
				opt.selectedIndex=-1;
				opt.options[0].value=GetFatherID(cid);
				opt.options[0].text="*** 返回上级分类 *** ";
				opt.options[0].style.color="green";
				for(var i=0; i<clist.length; i++){
					c=clist[i].split(":");
					opt.options[i+1].value=c[0];
					opt.options[i+1].text=c[1];
					if(selid==c[0])opt.selectedIndex=i+1;
				}
			}else{
				opt.options.length=clist.length;
				opt.selectedIndex=-1;
				for(var i=0; i<clist.length; i++){
					c=clist[i].split(":");
					opt.options[i].value=c[0];
					opt.options[i].text=c[1];
					if(selid==c[0])opt.selectedIndex=i;
				}
				try{opt.options[0].style.color="";}catch(e){}
			}
			return true;
		}
	}
	return false;
}

function GetClassName(cid){
	if(cid==0)return "顶级分类";
	var s,cs,c;
	for(var i=0; i<arrClass.length; i++){
		s=arrClass[i];
		if(s.indexOf(","+cid+":")>-1){
			cs=s.split(",");
			cs.shift();
			for(var j=0; j<cs.length; j++){
				c=cs[j].split(":");
				if(c[0]==cid)return c[1];
			}
			break;
		}
	}
	return null;
}

function GetFatherID(cid){
	var s,cs,fid;
	for(var i=0; i<arrClass.length; i++){
		s=arrClass[i];
		if(s.indexOf(","+cid+":")>-1){
			cs=s.split(",")
			fid=cs.shift();
			return fid;
		}
	}
	return 0;
}

function HaveSubClass(cid){
	for(var i=0; i<arrClass.length; i++){
		if(arrClass[i].indexOf(cid+",")==0) return true;
	}
	return false;
}

function Initfstr(cid){
	var id, fid;
	fstrs.splice(0, fstrs.length);
	id=cid;
	while(id>0){
		fid=GetFatherID(id);
		if(fid>0){
			id=fid;
			fstrs.unshift(fid);
		}else{
			break;
		}
	}
	if(HaveSubClass(cid)==true)fstrs.push(cid);
	try{if(fstrs.length==0||fstrs[0]!=0)fstrs.unshift(0);}catch(e){fstrs.unshift(0);}
}

function ChangeLocation(selid)
{	
	InitClasses();
	var SelLeastC=false;
	var opt=document.getElementById("classopt");
	var nav=document.getElementById("classnav");
	var SelectedClassID=document.getElementById("SelectedClassID");
	if(typeof(selid) == "undefined"){
		var cid=opt[opt.selectedIndex].value;
		var topic=opt[opt.selectedIndex].text;
		var fid;
		if(topic=="*** 返回上级分类 *** "){
			fid=fstrs.pop();
			EchoClass(nav, opt, cid, fid);
		}else{
			if(EchoClass(nav, opt, cid, 0)){
				fstrs.push(cid);
			}else{
				SelLeastC=true;
			}
		}
	}else{
		var cid=selid;
		var topic=GetClassName(selid);
		Initfstr(cid);
		if(HaveSubClass(cid)==false){
			SelLeastC=true;
			EchoClass(nav, opt, GetFatherID(cid), cid);
		}else{
			EchoClass(nav, opt, cid, 0);
		}
	}
	SelectedClassID.value=cid;

	var s="";
	var cname;
	for(var i=0; i<fstrs.length; i++){
		cname=GetClassName(fstrs[i]);
		if(!cname)cname="分类名称未知"
		s=s+"<a href='javascript:ChangeLocation(" + fstrs[i] + ");'>" + cname + "</a> >>> ";
	}
	if(SelLeastC==true)s=s+topic;
	nav.innerHTML=s;
}

function check_askform(obj)
{
  if(!IsLogined()){
    ShowLogin('请登录后再次提交问题', 'top.document.ftiwen.send.click();');
    return false;
  }
  
  if(obj.title.value =="" || obj.title.value.length ==0){
    alert("请输入问题标题");obj.title.focus();return false;
  }
  
  var len = obj.title.value.length;
  if(len<4){
    ls_str = "问题标题不详细，请重新输入";
    alert(ls_str);
    obj.title.focus();
    return false;    
   }  
  if (len>100){
    ls_str = "问题标题字数限定在100个汉字以内，请缩短提问字数";
    obj.title.focus();
    return false; 
  }

  var content_length = obj.content.value.length;
  if(content_length<5){
    ls_str = "请填写问题说明，说明越详细，解答就越有针对性";
    alert(ls_str);
    obj.content.focus();
    return false;
  }
  if ( content_length >4000){
    ls_str = "问题说明字数限定在4000字以内，请缩短字数";
    alert(ls_str);
    obj.content.focus();
    return false;
  }


  if(obj.SelectedClassID.value=="" || GetFatherID(obj.SelectedClassID.value)==0){
    alert("请选择问题分类\n\n注意：不能在顶级分类中发表问题"); return false;
  }
}
