//@utf-8

/*
  RSSデータ読込、テーブル表示
  tabName    : タブ要素のID
  feedUrl    : フィードのURL
  rowNum     : 表示行数
  snippetNum : 本文表示文字数
  */
function rssRead(tabName, feedUrl, rowNum, snippetNum) {
  //フィード取得
  jQuery.getFeed({
  url: feedUrl,
  success: function(feed) {
    
    var container = document.getElementById(tabName);
    restoreElement(container);
	
    //RSSタイトル
	/**
    var divRssTitle = document.createElement("div");
    divRssTitle.className = "rssTitle";
    var aRssTitle = document.createElement("a");
	
    var title = feed.title;
    aRssTitle.href = feed.link;
    aRssTitle.appendChild(document.createTextNode(title));
    divRssTitle.appendChild(aRssTitle);
    container.appendChild(divRssTitle);
	/**/
	
    var divRssEntry = document.createElement("div");
    divRssEntry.className = "rssEntry";
    
    for(var rowCount = 0; rowCount < feed.items.length && rowCount < rowNum; rowCount++) {
      //取出し
      var item = feed.items[rowCount];
      
      var divRssEntryTitle = document.createElement("div");
      divRssEntryTitle.className = "rssEntryTitle";
      var aRssEntryTitle = document.createElement("a");
      
      var divRssEntrySnippet = document.createElement("div");
      divRssEntrySnippet.className = "rssEntrySnippet";
      
      //タイトル
      var publishedDate = new Date(item.updated);
      var title = item.title + "(" + publishedDate.getFullYear() + "/" + (publishedDate.getMonth()+ 1) + "/" + publishedDate.getDate() + ")";
      
      aRssEntryTitle.href = item.link;
      aRssEntryTitle.appendChild(document.createTextNode(title));
      divRssEntryTitle.appendChild(aRssEntryTitle);
      
      divRssEntry.appendChild(divRssEntryTitle);
      
      //本文
      var snippet = removeTag(item.description);
      divRssEntrySnippet.appendChild(document.createTextNode(snippet.substring(0,snippetNum)+"..."));
      
      divRssEntry.appendChild(divRssEntrySnippet);
    }
    container.appendChild(divRssEntry);
  }
  });
}

function restoreElement(mailElement) {
  var childElement;
  
  while (mailElement.childNodes.length > 0) {
    childElement = mailElement.lastChild;
    mailElement.removeChild(childElement);
  }
}

function removeTag(str)
{
  var regExp01 = new RegExp(/\n/g);
  var strTemp01 = str.replace(regExp01, "");
  
  var regExp02 = new RegExp(/>(.*?)</g);
  var strTemp02 = strTemp01.replace(regExp02, ">\n$1\n<");
  
  var regExp03 = new RegExp(/<("[^"]*"|'[^']*'|[^'">])*>/g);
  var strTemp03 = strTemp02.replace(regExp03, "");

  return strTemp03;
}

$(function() {
	rssRead('tabs-rss-1-rss', 'blog/battle/index.xml', 1, 100);
});

