// JavaScript Document

// ページのロード時に呼び出される関数initをセット
window.onload = init;

//RSSのURIを入れてください
var url_blog = "./blog/index.xml";


//RSSを表示する件数
var ITEM_COUNT = 5;

// ページのロード時に呼び出される関数
function init()
{  
  
  // RSSフィードをリクエスト
  sendRequest( url_blog, writeData, 'GET', '' );
}

// レスポンスデータを表示
function writeData( req ){
  var rss = req.responseXML;
  //rss1.0 2.0
  var channel = rss.getElementsByTagName("channel"); 
  
  if( channel[0] && channel[0].childNodes ){
	  var title = channel[0].getElementsByTagName("title");
	  var items = rss.getElementsByTagName("item");
  	
		//var divElem = document.getElementById("rss");
  		var olElem = document.getElementById("rss_blog");
	 		
    	//createTitle(channel[0].childNodes,divElem,"rss");
    	createLinkTitle(items,olElem,"rss");
　}
  
}

function createTitle(children,divElem,version){
	
    var aElem = createLink(children,version);
    var h3Elem = document.createElement("h3");
       h3Elem.appendChild(aElem);		
       divElem.appendChild(h3Elem);
}

function createLinkTitle(items,olElem,version){

//RSSのタイトルを出力

	for(var j=0; j < items.length && j<ITEM_COUNT ; j++){
		
    	var aElem = createLink(items[j].childNodes,version);
    	var liElem = document.createElement("li");
    	liElem.appendChild(aElem);
		
		var date_txt = createDate(items[j].childNodes,version);
		liElem.appendChild(date_txt);
		olElem.appendChild(liElem);
		
  	}
}

function createLink(children,version){

　//RSSのタイトルや項目を出力
  var title,url,pubdate;
  for(var i=0; i<children.length; i++){
    if( children[i].tagName == "title" ){
      title = children[i].firstChild.nodeValue;
    }
    else if( children[i].tagName == "link" &&
             children[i].getAttribute("rel") == "alternate" &&
              version == "Atom"){
	　//atom1.0
      url = children[i].getAttribute("href");
    }
    else if( children[i].tagName == "link" && version == "rss"){
	  //rss1.0 2.0
      url = children[i].firstChild.nodeValue;
    }
	
    
  }
  // title要素とlink要素の値を使ってリンクを出力
  var txt = document.createTextNode(title);
  
  var aElem = document.createElement('a');
  aElem.setAttribute("href",url);
  aElem.appendChild(txt);
  
  return(aElem);
}

function createDate(children,version){
 var pubdate;	
 for(var i=0; i<children.length; i++){
	
	if( children[i].tagName == "pubDate" && version == "rss"){
	  //rss1.0 2.0
      pubdate = children[i].firstChild.nodeValue;

    } 
 }
 	  var dd = new Date(pubdate);
	  var txt = document.createTextNode("("+dd.toLocaleString()+")");
 
 return(txt);
}
//備考：IEではclass属性ではなく、className属性を使用するのでテーブルにはid属性を使用した。