// ------------------------------------------------------------
// ボルサソベラナ用
// ------------------------------------------------------------

(function($)
{
	// --------------------------------------------------------
	// RSSの取得と表示
	// --------------------------------------------------------
	
	$.fn.rssList = function(options)
	{
		var opts;
		var xmlArray = [];
		var listNum = 0;
		var container;
		
		opts = $.extend($.fn.rssList.defaults, options);
		
		function loadXML()
		{
			$.ajax({
				type: "GET",
				url: opts.path,
				dataType: "xml",
				success: xmlLoadComplete,
				error: xmlLoadError
			});
		}
		
		function xmlLoadError(XMLHttpRequest, textStatus, errorThrown)
		{
			$("<p>新着情報が読み込めませんでした</p>").appendTo(container);
		}

		function xmlLoadComplete(xml)
		{
			if($(xml).find("item").length != 0)
			{
				var cnt = 0;
				
				$(xml).find("item").each(function()
				{
					var t = $(this);
					var date;
					var title = t.find("title").text();
					var url = t.find("link").text();
					
					t.children().each(function()
					{
						if($(this)[0].tagName == "dc:date"){
							var y = $(this).text().substr(0,4);
							var m = $(this).text().substr(5,2);
							var d = $(this).text().substr(8,2);
							date = y + "." + m + "." + d;
						}else if($(this)[0].tagName == "pubDate"){
							var pdate = new Date($(this).text());
							var y = pdate.getFullYear();
							var m = pdate.getMonth() + 1;
							var d = pdate.getDate();
							date = y + "." + m + "." + d;
						}
					});
					
					if(!title.match(/^PR:/)){
						xmlArray[parseInt(cnt)] = [date, title, url];
						cnt++;
						if(cnt >= opts.listNum) return false;
					}
				});
				
				listNum = cnt;
				createList();
			}else{
				$("<p>記事はありません</p>").appendTo(container);
			}
		}
		
		function createList()
		{
			var list = $("<ul class=\"" + opts.className + "\"></ul>").appendTo(container);
			var i = 0;
			for(i; i<listNum; i++)
			{
				var li = $("<li></li>")
				.appendTo(list);
				
				$("<div><span>" + xmlArray[i][0] + "</span></div>")
				.appendTo(li);
				
				$("<div><a href=\"" + xmlArray[i][2] + "\" target=\"" + opts.targetWindow + "\">" + xmlArray[i][1] + "</a></div>")
				.appendTo(li);
			}
			
			list.children("li:odd").addClass(opts.oddClassName);
			list.children("li:last").addClass(opts.lastClassName);
		}
		
		return this.each(function()
		{
			container = $(this);
			loadXML();
		});
	}
	
	$.fn.rssList.defaults =
	{
		className: "rssList",
		oddClassName: "alter",
		lastClassName: "last",
		path: "http://www.sovelana.com/wp/wp-content/connect.php?url=http://feedblog.ameba.jp/rss/ameblo/bolsasovelana",
		listNum: 3,
		targetWindow: "_blank"
	}
	
		
})(jQuery);
