var curAchieveSubCategory='0',curAchieveCategory=curAchieve=hoverAchieve=jumptoachieve=blockachieve=false,achieveData=[];
function achievecate(ID){
	if(curAchieveCategory!=ID){
		excategory(ID);
		achievesLoad(ID);
	}else if($('achievecate_'+ID).innerHTML!=''&&$('achievecate_'+ID).style.display=='block'&&curAchieveSubCategory!='0'){
		achievesLoad(ID);
		$('achive_'+ID+'.'+curAchieveSubCategory).className='';
		curAchieveSubCategory='0';
	}
}
function excategory(ID){
	if(curAchieveCategory!=ID){
		if(curAchieveCategory){$('achive_'+curAchieveCategory).className='';$('achievecate_'+curAchieveCategory).style.display='none';if(curAchieveSubCategory!='0'){$('achive_'+curAchieveCategory+'.'+curAchieveSubCategory).className='';curAchieveSubCategory='0'}}
		$('achievecate_'+ID).style.display='block';
		$('achive_'+ID).className='cur';
		curAchieveCategory=ID;
	}
}
function achievesubcate(ID){if(curAchieveSubCategory!=ID){exsubcate(ID);achievesLoad(ID);}}
function exsubcate(ID){
	if(curAchieveSubCategory!=ID){
		if(curAchieveSubCategory!='0'){$('achive_'+curAchieveCategory+'.'+curAchieveSubCategory).className=''}
		$('achive_'+curAchieveCategory+'.'+ID).className='cur';
		curAchieveSubCategory=ID;
	}
}
function achievesLoad(ID){
	$('achievement_list_main').innerHTML='<p align="center" style="color:#fff;padding:20px">Êý¾ÝÔØÈëÖÐ</p>';
	achieveSetScroll();
	curAchieve=hoverAchieve=false;
	if(achieveData[ID]){
		$('achievement_list_main').innerHTML=achieveData[ID];
		achieveSetScroll();
		if(jumptoachieve){achieveLight(jumptoachieve);}
	}else{
		var al=new lJS('utf-8');
		al.onsuccess=function(){
			$('achievement_list_main').innerHTML=achieveData[ID];
			achieveSetScroll();
			if(jumptoachieve){achieveLight(jumptoachieve);}
		}
		al.onfailure=function(){achievesLoad(ID)};
		al.load('data/achievement/achieves_'+ID+'.js');
	}
}
function jumpto(s){
	atlasOline_hi();
	if(s!=''){
		s=s.substr(1);
		if(s.indexOf(':')!=-1){
			s=s.split(':');
			if(s[0]==curAchieveCategory&&s[1]==curAchieveSubCategory){
				if(s.length>1){
					blockachieve=curAchieve;
					jumptoachieve=s[2];
					achieveLight(s[2]);
				}
			}else{
				if(curAchieve){blockachieve=curAchieve;curAchieve=false;};
				excategory(s[0]);
				if(s[1]!='0'){exsubcate(s[1]);};
				if(s.length>1){jumptoachieve=s[2];};
				if(s[1]!='0'){achievesLoad(s[1])}else{achievesLoad(s[0])};
			}
		}else{
			excategory(s);
			achievesLoad(s);
		}
	}
}
function achieveSetScroll(){
	var scrollWidth=$('achievement_list').offsetWidth-$('achievement_list').clientWidth;
	scrollWidth=(scrollWidth==0)?0:scrollWidth+3;
	$('achievement_list_bg').style.backgroundPosition=(447-scrollWidth)+'px top';
}
function achieveLight(ID){
	if(curAchieve!=ID){
		if(ID==blockachieve){
			blockachieve=false;
		}else{
			if(curAchieve){$('achieve_'+curAchieve).className='achieve delight';};
			$('achieve_'+ID).className='achieve cur';
			var t=ID;
			curAchieve=ID;
			if(jumptoachieve){
				$('achievement_list').scrollTop=$('achieve_'+ID).offsetTop;
				jumptoachieve=false;
			}else{
				if($('achieve_'+ID).offsetTop<$('achievement_list').scrollTop){
					$('achievement_list').scrollTop=$('achieve_'+ID).offsetTop;
				}else if($('achieve_'+ID).offsetTop+$('achieve_'+ID).offsetHeight>452+$('achievement_list').scrollTop){
					$('achievement_list').scrollTop=$('achieve_'+ID).offsetTop+$('achieve_'+ID).offsetHeight-452;
				}else if(bIE){if($('achievement_list').scrollTop==0){$('achievement_list').scrollTop=1;$('achievement_list').scrollTop=0;}else{$('achievement_list').scrollTop--;$('achievement_list').scrollTop++;};$('achieve_'+ID).className='achieve cur';}
				location.href='#'+curAchieveCategory+':'+curAchieveSubCategory+':'+ID;
			}
		}
	}
}
function achieveHover(ID){
	if((curAchieve&&curAchieve!=ID)||!curAchieve){
		if(!hoverAchieve){
			$('achieve_'+ID).className='achieve delight hover';
			hoverAchieve=ID;
		}else if(hoverAchieve!=ID){
			if(hoverAchieve!=curAchieve){$('achieve_'+hoverAchieve).className='achieve delight'};
			hoverAchieve=false;
		}
	}
}
function achieveOut(){
	if(hoverAchieve&&((curAchieve&&curAchieve!=hoverAchieve)||!curAchieve)){
		$('achieve_'+hoverAchieve).className='achieve delight';
		hoverAchieve=false;
	}
}
function achievement(ID,name,icon,point,des,criteria,reward){
	return '<div id="achieve_'+ID+'" class="achieve delight" onclick="achieveLight(\''+ID+'\')" onmouseover="achieveHover(\''+ID+'\')" onmouseout="achieveOut()"><span><span><span><div><div><table><tbody><tr><td><img src="images/achievement/achieve_icon.gif" style="background-image:url(http://wow.gamespot.com.cn/Atlas/icon/46/'+icon+'.jpg)" /></td><th><b>'+name+'</b><p>'+des+'</p>'+criteria+'</th><td><u'+((point=='0')?' class="nopoint">':'>'+point)+'</u></td></tr></tbody>'+((reward)?'<tfoot><tr><td colspan="3">'+reward+'</td></tr></tfoot>':'')+'</table></div></div></span></span></span></div>';
}
if(bIE){
	lCSS("http://wow.gamespot.com.cn/style/achievement-ie.css");
	setInterval(function(){if(curAchieve){$('achieve_'+curAchieve).className='achieve cur';}},500);if(bIE6){lCSS("http://wow.gamespot.com.cn/style/achievement-ie6.css?2")}}