/* 文字コードはUTF-8 */
feedreader = function(html_func){
	this.loading_html = '<div style="font-size:12px;color:#bbb;">読込中...</div>';
	this.error_html = '<div style="font-size:12px;color:#bbb;">データが読み込めませんでした。</div>';
	this.no_item_html = '<div style="font-size:12px;color:#bbb;">現在、準備中です。</div>';
	this.init = function(tid, xml_url){
		this.limit = (typeof(arguments[2]) != 'undefined' ? arguments[2] : 10);
		this.link_type = (typeof(arguments[3]) != 'undefined' ? arguments[3] : '_self');
		var dateobj = new Date();
		var tobj = $('#' + tid).eq(0);
		tobj.html(this.loading_html);
		var self = this;
		$.get(xml_url, {}, function(xml, textStatus){
			var html = '';
			if(textStatus == 'success'){
				if($(xml).find('item').length > 0){
					var items = new Array();
					var items_obj = $(xml).find('item');
					var count = (items_obj.length < self.limit ? items_obj.length : self.limit);
					var i = 0;
					items_obj.each(function(){
						var title = $(this).find('title').text();
						var link = self.check_link($(this).find('link').text());
						var pubDate = $(this).find('pubDate').text();
						var pubtime = Date.parse(pubDate);
						dateobj.setTime(pubtime);
						var year = dateobj.getFullYear();
						var month = dateobj.getMonth() + 1;
						var day = dateobj.getDate();
						var date_str = year + '/' + (month < 10 ? '0' : '') + month + '/' + (day < 10 ? '0' : '') + day;
						var description = $(this).find("[nodeName=content:encoded]").text() || '';
						var image = $(this).find("[nodeName=xstep:image]").text() || '';
						image = self.check_link(image);
						var catlabel = $(this).find("[nodeName=xstep:label][labelCategory='cat']").attr('labelId') || '';
						items.push({title:title, link:link, pubtime:pubtime, date_str:date_str, description:description, image:image, catlabel:catlabel});
						i++;
						if(i >= count){
							return false;
						}
					});
					html += self.build_html(items);
				}
				else{
					html += self.no_item_html;
				}
			}
			else{
				html += self.error_html;
			}
			tobj.html(html);
		});
	}
	this.check_link = function(link){
		return link.replace(/http:\/\/www\.nissan\-global\.com\//, '/');
	}
	this.build_html = function(items){
		var html = '';
		var count = items.length;
		if(count > 0){
			html += '<dl>';
			for(var i = 0; i < count; i++){
				var item = items[i];
				html += '<dt>' + item.date_str + '</dt><dd><a href="' + item.link + '" target="' + this.link_type + '">' + item.title + '</a></dd>';
			}
			html += '</dl>';
		}
		return html;
	}
	if(typeof(html_func) == 'function'){
		this.build_html = html_func;
	}
}

subcategory_list = function(items){
	var html = '';
	var count = items.length;
	if(count > 0){
		html += '<ul class="subcategory">';
		for(var i = 0; i < count; i++){
			var item = items[i];
			html += '<li>';
			html += '<div class="list">';
			if(item.image){
				html += '<div class="leadimage"><a href="' + item.link + '" target="' + this.link_type + '"><img src="' + item.image + '" alt="" /></a></div>';
			}
			html += '<div class="title"><a href="' + item.link + '" target="' + this.link_type + '">' + item.title + '</a></div>';
			if(item.description){
				html += '<div class="lead">' + item.description + '</div>';
			}
			html += '</div>';
			html += '</li>';
		}
		html += '</ul>';
	}
	return html;
}


topic_topnew = function(items){
	var html = '';
	var count = items.length;
	if(count > 0){
		html += '';
		for(var i = 0; i < count; i++){
			var item = items[i];
			html += '<div class="topics-unit">';
				if(item.image){
					html += '<div class="topics-img"><a href="' + item.link + '" target="' + this.link_type + '"><img src="' + item.image + '" alt="'+item.title+'" /></a></div>';
				}

				html += '<div class="topics-txt">';
					html += '<div class="topics-header">';
						html += '<h4>' + item.date_str + '</h4>'
						html += '<a href="' + item.link + '" target="' + this.link_type + '"><h3>' + item.title + '</h3></a>'
					html += '</div>'
				if(item.description){
					html += '<p>' + item.description + '</p>';
					html += '<p class="read-more"><a href="'+ item.link +'">続きを読む...</a></p>'
				}
				html += '</div>';

			html += '</div>';
		}
		html += '';
	}
	return html;
}

top_magazine_new = function(items){
	var html = '';
	var count = items.length;
	if(count > 0){
		html += '';
		for(var i = 0; i < count; i++){
			var item = items[i];
			html += '<div class="slides_container"><div>';

			html += '<div class="slides-header">';
			html += '<div class="slides-num"><h4>' + item.title.slice(0,3) + '</h4></div>';
			//html += '<div class="slides-num"><h4>' + '019' + '</h4></div>';
			html += '<div class="slides-title"><a href="'+item.link+'">';
			html += '<h3>' + item.title.slice(4) + '</h3>';
			html += '</a></div>';
			if(item.description){
				html += '<p>' + item.description + '</p>';
			}
			html += '</div>';

			if(item.image){
				html += '<div class="slides-img"><a href="' + item.link + '" ><img src="' + item.image + '" alt="'+item.title+'" /></a></div>';
			}
			html += '</div></div>';

		}
		html += '';
	}
	return html;
}

rside_ntm_update = function(items){
	var html = '';
	var count = items.length;
	if(count > 0){
		html += '';
		for(var i = 0; i < count; i++){
			var item = items[i];

			if(item.image){
				html += '<div class="slides-img"><a href="'+item.link+'" target="_blank"><img src="' + item.image + '" alt="'+item.title+'" /></a></div>';
			}
			html += '<h4>' + item.title.slice(0,3) + '</h4>';

			html += '<a href="'+item.link+'" target="_blank">';
			html += '<h3>' + item.title.slice(4) + '</h3>';
			html += '</a>';

			if(item.description){
				html += '<p>' + item.description + '</p>';
			}
		}
		html += '';
	}
	return html;
}

news_list_load = function(selector){
	if($(selector + ' div.news_list_item').length > 0){
		$(selector + ' div.news_list_item').each(function(index,elem){
			if($(elem).html() == ''){
				var params = $(elem).attr('rel').split(';');
				var id = 'news_list_item-' + index;
				$(elem).attr('id',id);
				(new feedreader()).init(id, params[0], params[1], params[2]);
			}
		});
	}
}

top_cat_list = function(items){
	var html = '';
	var count = items.length;
	if(count > 0){
		html += '<div class="tns-nt clearfix">';
		for(var i = 0; i < count; i++){
			var item = items[i];
			html += '<div class="tn-nt"' + (i % 4 == 3 ? ' style="margin-right:0;"' : '') + '>';
			if(item.image){
				if(item.catlabel == 'future'){
					html += '<a href="' + item.link + '"><div class="xxx"><div class="yyy" style="background:url(' + item.image + ') no-repeat center center;"><img src="' + item.image + '" alt="" width="135" height="135" style="opacity: 0;" /></div></div></a>';
				}
				else{
					html += '<a href="' + item.link + '"><img src="' + item.image + '" alt="" width="135" height="135" /></a>';
				}
			}
			html += '<a href="' + item.link + '"><h3>' + item.title + '</h3></a>';
			if(item.description){
				html += '<p>' + item.description + '</p>';
			}
			html += '</div>';
		}
		html += '</div>';
	}
	return html;
}

