
var SHOW_NUM = 4;

function addListener(target, event, func) {
    if (target.addEventListener) { // for W3C DOM
      target.addEventListener(event, func, false);
    } else if (target.attachEvent) { // for IE
      target.attachEvent("on" + event, func);
    }
}

function itemRecommend() {
	getItemRecommend();
}

function getItemRecommend() {
	var newItemId = getThisItemId();
	if (!newItemId) {
		return;
	}

	var url = "/dap/sv/use010901";
	var pars = "itemId=" + newItemId;
	pars = pars + "&t=" + (new Date().getTime());
	
	var myAjax = new Ajax.Request(url, {
			method: 'get', 
			parameters: pars, 
			onComplete: getItemInfo
		});
}

function getThisItemId() {
	if (!document.myform) {
		return;
	} else if (!document.myform.seq_exhibit_id) {
		return;
	}
	return document.myform.seq_exhibit_id.value;
}

function getItemInfo(req, obj) {
	var value = req.responseText;
	if (!value) {
		var categId = document.myform.rankCategId.value;
		var url = "/ranking/rankingCateg" + categId + ".txt";
		var pars = pars + "&t=" + (new Date().getTime());
		var myAjax = new Ajax.Request(url, {
				method: 'get', 
				parameters: pars, 
				onComplete: getRankingInfo
			});
	}
	var url = "/dap/sv/use010701";
	var pars = "itemId=" + value + "&num=" + SHOW_NUM + "&random=Y";
	pars = pars + "&t=" + (new Date().getTime());
	
	var myAjax = new Ajax.Request(url, {
			method: 'get', 
			parameters: pars, 
			onComplete: showResponseForItemRecommend
		});
}


function showResponseForItemRecommend(req, obj) {
	var xmlObj = req.responseXML;
	var e = document.getElementById("itemRecom");
	e.innerHTML = toHtmlForItemRecommend(xmlObj);
}

function toHtmlForItemRecommend(xmlObj) {
	var param = document.getElementById("itemRecom").getAttribute("param");
	var rootNode = xmlObj.getElementsByTagName("data")[0];
	if (rootNode.hasChildNodes()) {
		var items = rootNode.getElementsByTagName('item');
		var retString = "<div id=\"item_recommends\"><div style=\"display: block;\" id=\"item_recommend\"><div class=\"item_recommend_title\">この商品を見た人はこんな商品も見ています</div>";
		for (var i = 0; i < items.length; i++) {
			var historyCount = items[i].getElementsByTagName('historyCount')[0].firstChild.nodeValue;
			var itemUrl = items[i].getElementsByTagName('itemUrl')[0].firstChild.nodeValue + "?" + param;
			var imageUrl = items[i].getElementsByTagName('smlImageUrl')[0].firstChild.nodeValue;
			var itemTitle = items[i].getElementsByTagName('itemTitle')[0].firstChild.nodeValue;
			var supName = items[i].getElementsByTagName('supName')[0].firstChild.nodeValue;
			
			retString = retString + "<div class=\"productcheck r" + historyCount + " item\"><ul class=\"productconnect\"><li class=\"product_image\"><a href=\"" + itemUrl + "\"><img src=\"" + imageUrl + "\" class=\"product_image\" alt=\"" + itemTitle + "\"></a></li><li class=\"name\"><a href=\"" + itemUrl + "\">" + itemTitle + "</a></li><li class=\"spec1\">" + supName + "</li></ul></div>";
		}

		return retString + "<div class=\"contEnd\"><hr></div></div></div>";
	}
	return "<div class=\"contEnd\"><hr></div></div></div>";
}


function getRankingInfo(req, obj) {
	var value = req.responseText;
	if (!value) {
		return;
	}
	var url = "/dap/sv/use010701";
	var pars = "itemId=" + value + "&num=" + SHOW_NUM;
	pars = pars + "&t=" + (new Date().getTime());
	
	var myAjax = new Ajax.Request(url, {
			method: 'get', 
			parameters: pars, 
			onComplete: showResponseForCategRanking
		});
}

function showResponseForCategRanking(req, obj) {
	var xmlObj = req.responseXML;
	var e = document.getElementById("itemRecom");
	e.innerHTML = toHtmlForCategRanking(xmlObj);
}

function toHtmlForCategRanking(xmlObj) {
	var param = document.getElementById("itemRecom").getAttribute("param");
	var rootNode = xmlObj.getElementsByTagName("data")[0];
	if (rootNode.hasChildNodes()) {
		var items = rootNode.getElementsByTagName('item');
		var retString = "<div id=\"item_recommends\"><div style=\"display: block;\" id=\"item_ranking\"><div class=\"item_recommend_title\">週間ランキング</div>";
		for (var i = 0; i < items.length; i++) {
			var historyCount = items[i].getElementsByTagName('historyCount')[0].firstChild.nodeValue;
			var itemUrl = items[i].getElementsByTagName('itemUrl')[0].firstChild.nodeValue + "?" + param;
			var imageUrl = items[i].getElementsByTagName('smlImageUrl')[0].firstChild.nodeValue;
			var itemTitle = items[i].getElementsByTagName('itemTitle')[0].firstChild.nodeValue;
			var supName = items[i].getElementsByTagName('supName')[0].firstChild.nodeValue;
			
			retString = retString + "<div class=\"productcheck r" + historyCount + " item\"><ul class=\"productconnect\"><li class=\"product_image\"><a href=\"" + itemUrl + "\"><img src=\"" + imageUrl + "\" class=\"product_image\" alt=\"" + itemTitle + "\"></a></li><li class=\"name\"><a href=\"" + itemUrl + "\">" + itemTitle + "</a></li><li class=\"spec1\">" + supName + "</li></ul></div>";
		}

		return retString + "<div class=\"contEnd\"><hr></div></div></div>";
	}
	return "<div class=\"contEnd\"><hr></div></div></div>";
}


addListener(window, "load", itemRecommend);


