/* 2007-07-10 */
loadXML = function(method,url,is_async){
  if(window.XMLHttpRequest) _req = new XMLHttpRequest();
  else _req = new ActiveXObject("Microsoft.XMLHTTP");
  _req.open(method,url,is_async);
  _req.onreadystatechange=newsProcessReqChange;
  _req.send(null);
}

newsProcessReqChange = function(){
  if (_req.readyState == 4){
    if (_req.status == 200){
      drawXML(_req.responseXML);
    }
  }
}

_len = 0;
drawXML = function(xml){
  xmlDoc = xml.documentElement;
  timeline = "";
  date = []; url = [], editdate = [];
  _len = xmlDoc.getElementsByTagName("DATE").length;
  var dateElement =xmlDoc.getElementsByTagName("DATE");
  var urlElement = xmlDoc.getElementsByTagName("URL");
  topUrl = parent.location.href;
  cssName = [];
  if(_len >= 3) {
	for(i=0;i<_len;i++) {
	  editdate[i] = getNodeValue(dateElement[i]);
	  date[i] = editdate[i].substring(4,6) +"월" + editdate[i].substring(6,8) + "일";
	  url[i] = getNodeValue(urlElement[i]); 
		cssName[i] = (topUrl == url[i])? 'b' : '';
		timeline = timeline + '<li'+' class=\"day' +cssName[i]+'\"><span>|</span><a href='+url[i]+'>'+date[i]+'</a></li>';
	}

	latestCss = ((topUrl.indexOf("index_")<0))? 'b' : '';
	latestUrl = topUrl.substring(0,topUrl.lastIndexOf("/")+1)
    timeline += '<li class=\"latest '+latestCss+'\"><span>|</span><a href="'+latestUrl+'">최신</a></li>';

	document.getElementById('iTL_slideArea').innerHTML = '<div id="iTL_slide"><ul id="iTL_ul">'+timeline+'</div></ul>';
	if(_len > 8)  printSlideNavi();
	else	document.getElementById("iTL_navi").innerHTML = '<br class="clb" />';
  }
}

UI.Move=function(id) {
	this.id=id;
	this.div=UI.$(id);
	this.x= parseInt(UI.getStyle(this.div,'left'))||0;
	this.y= parseInt(UI.getStyle(this.div,'top'))||0;
};
UI.Move.prototype={
	slide : function(pos) {
		this.pos = pos;
		this.pos_n = 0;
		this.speed=0.3;
		this.inteval = 8;
		this.setPos();
		this.playing =true;
		var self=this;
		this.tid=setInterval(function(){self.play()}, this.inteval);
	},
	play : function() {
		this.x += (this.x2-this.x)*this.speed;		
		this.y += (this.y2-this.y)*this.speed;
		this.set(this.x,this.y);
		if(Math.round(this.x)==this.x2 && Math.round(this.y)==this.y2)
		{
			this.x=Math.round(this.x);
			this.y=Math.round(this.y);
			this.set(this.x,this.y);

			if(this.pos_n>=this.pos.length)	{this.playing=false; clearInterval(this.tid)}
			else this.setPos();
		}
	},
	setPos:function(){
		var arr=this.pos[this.pos_n].split(",");
		this.x2 = arr[0];
		this.y2 = arr[1];
		this.pos_n++;
	},
	set:function(x,y){
		this.div.style.left = x+"px";
		this.div.style.top = y+"px";
	}
};

//Sliding
var pos_n = 0;
move_slide =function(type) {
  if(slid_ul.playing) return;
  if(type=="prev" && pos_n>0) {
    slid_ul.slide(pos[--pos_n]);
  }else if(type=="next" && pos_n<pos.length-1) {
      slid_ul.slide(pos[++pos_n]);
  }else{
    if(type=="prev" && pos_n==0)
      alert("처음 저장된 내용입니다.");
    else if(type=="next" && pos_n==pos.length-1)
      alert("마지막 저장된 내용입니다.");
  }
}

var slid_ul, pos;
printSlideNavi = function(){
  slid_ul = new UI.Move("iTL_ul");
  slid_ul.speed=0.05;
  _posgap = 57;
  playnum = (_len - 8)+1;
  pos = new Array;
  var posgap = 4;
  for (i=0; i < playnum;i++ ){
    pos[i] = ["-"+posgap+",0"];
    posgap +=_posgap;
  }
  pos_n = playnum-1;
  slid_ul.slide(pos[pos_n]);
  document.getElementById("iTL_navi").innerHTML = '<p class="pre"><a href="#" onclick="move_slide(\'prev\');return false;" title="이전"><span>이전</span></a></p><p class="next"><a href="#" onclick="move_slide(\'next\');return false;" title="다음"><span>다음</span></a></p>';
}