var i, n, elem, node;
var newsStage, pickUpStage, presentStage, ecCheckStage, prStage, rankingStage, twitterStage;
var newsNode, pickUpContentsNode, presentNode, ecCheckNode, prNode, rankingNode, twitterNode;
//ハッピープール特集-変数定義 start
//ハッピープール特集-変数定義 end
var baseXml, pickupXml, newsXml, twitterXml;
var xmlURL = "/data.xml";
var newsXmlURL = "/nursery/api/news";
var twitterURL = "/getRss.php";
var twitterInt;
var twitterIdx = 0;

function init(){
	/*
	 * 画像ロールオーバー
	 */
	overImgs = jQuery("img.imgover");
	overImgs.each(function(idx){
		var img = jQuery(this);
		var src = img.attr("src");
		var prefix = src.substr(0, src.lastIndexOf("."));
		var postfix = src.substring(src.lastIndexOf("."));
		img.attr({
			"src_out":src,
			"src_over":prefix + "_o" + postfix
		});
	});
	overImgs.bind("mouseover",onOverImgOver);
	overImgs.bind("click", onOverImgOut);
	overImgs.bind("mouseout",onOverImgOut);

	/*
	 * fancybox
	 */
	if(jQuery(".popWin").length > 0){
		jQuery(".popWin").fancybox({
			showCloseButton:true,
			type:"iframe",
			titleShow:false
		});
	}
	if(jQuery(".popImg").length > 0){
		jQuery(".popImg").fancybox({
			showCloseButton:true,
			type:"image",
			titleShow:false
		});
	}


	/*
	 * トップに戻るボタン
	 */
	jQuery("#backToTop").bind("click",onPageTopLinkClick);

	/*
	 * リンク選択時の枠線消去
	 */
	jQuery("a").bind("focus",function(idx){
		jQuery(this).blur();
	});

	/*
	 * Ajax表示用html要素の指定
	 */
	newsStage = jQuery("#sideNewsArea");
	pickUpStage = jQuery("#pickUpContents");
	presentStage = jQuery("#sidePresentArea");
	//ハッピープール特集-Ajax表示用html要素の指定 start
	//ハッピープール特集-Ajax表示用html要素の指定 end
	ecCheckStage = jQuery("#sideEcCheckArea");
	prAStage = jQuery("#sidePrAArea");
	prBStage = jQuery("#sidePrBArea");
	rankingStage = jQuery("#sideRankingArea");
	twitterStage = jQuery("#head_news");

	/*
	 * xml読み込み
	 */
	//Ajaxの初期化
	jQuery.ajaxSetup({cache:false});
	//base.xmlの読み込み開始
	jQuery.ajax({
		url:xmlURL,
		dataType:"xml",
		success:onXmlLoadSuccess
	});
	//happy newsの読み込み開始
	if(newsStage.length > 0){
		jQuery.ajax({
			url:newsXmlURL,
			dataType:"xml",
			success:onNewsXmlLoadSuccess
		});
	}
	//twitterの読み込み開始
	if(twitterStage.length > 0){
		jQuery.ajax({
			url:twitterURL,
			dataType:"xml",
			success:onTwitterXmlLoadSuccess
		});
	}
}

/*
 * イベントハンドラ
 */

//
function onXmlLoadSuccess(data,dataType){
	var _img, _ul, _ol, _li, _p, _title, _href;
	//XMLデータの受け取り
	baseXml = data;
	//データノードの指定
	pickUpContentsNode = jQuery("pickUpContents",baseXml);
	presentNode = jQuery("present",baseXml);
	ecCheckNode = jQuery("ecCheck",baseXml);
	prANode = jQuery("prA",baseXml);
	prBNode = jQuery("prB",baseXml);
	rankingNode = jQuery("ranking",baseXml);

        //pickUp Contents
	if(pickUpStage.length > 0){
		pickUpStage.empty();
		jQuery("item",pickUpContentsNode).each(function(idx){
			_divHP = jQuery("<div id='happyPresent'>");
			pickUpStage.append(_divHP);
			_href = jQuery(this).attr("href");
			switch(_href){
				case "#":
					_img = jQuery("<div class='pickupImg'><img src='"+jQuery(this).attr("src")+"' width='58' height='58' alt='' /></div>");
					break;
				default:
					_img = jQuery("<div class='pickupImg'><a href='"+jQuery(this).attr("href")+"' target='"+jQuery(this).attr("target")+"'><img src='"+jQuery(this).attr("src")+"' width='58' height='58' alt='' /></a></div>");
					break;
			}
			_title = jQuery("<h3><a href='"+jQuery(this).attr("href")+"' target='"+jQuery(this).attr("target")+"'>"+jQuery("title",this).text()+"</a></h3>");
			_p = jQuery("<p>"+jQuery("text",this).text()+"</p>");
			_divHPR = jQuery("<div id='happyPresentR'>");
			_divHPR.append(_title);
			_divHPR.append(_p);

			_divHP.append(_img);
			_divHP.append(_divHPR);
		});
	}

	//happy present
	if(presentStage.length > 0){
		presentStage.empty();
		jQuery("item",presentNode).each(function(idx){
			_divHP = jQuery("<div id='happyPresent'>");
			presentStage.append(_divHP);
			_href = jQuery(this).attr("href");
			switch(_href){
				case "#":
					_img = jQuery("<div class='pickupImg'><img src='"+jQuery(this).attr("src")+"' width='58' height='58' alt='' /></div>");
					break;
				default:
					_img = jQuery("<div class='pickupImg'><a href='"+jQuery(this).attr("href")+"' target='"+jQuery(this).attr("target")+"'><img src='"+jQuery(this).attr("src")+"' width='58' height='58' alt='' /></a></div>");
					break;
			}
			_title = jQuery("<h3><a href='"+jQuery(this).attr("href")+"' target='"+jQuery(this).attr("target")+"'>"+jQuery("title",this).text()+"</a></h3>");
			_p = jQuery("<p>"+jQuery("text",this).text()+"</p>");
			_divHPR = jQuery("<div id='happyPresentR'>");
			_divHPR.append(_title);
			_divHPR.append(_p);

			_divHP.append(_img);
			_divHP.append(_divHPR);
		});
	}

	//ハッピープール特集-XMLデータの受け取り start
	//ハッピープール特集-XMLデータの受け取り end

	//ecCheck
	if(ecCheckStage.length > 0){
		ecCheckStage.empty();
		jQuery("item",ecCheckNode).each(function(idx){
			_divHP = jQuery("<div id='ecCheck'>");
			ecCheckStage.append(_divHP);
			_href = jQuery(this).attr("href");
			switch(_href){
				case "#":
					_img = jQuery("<div class='pickupImg'><img src='"+jQuery(this).attr("src")+"' width='58' height='58' alt='' /></div>");
					break;
				default:
					_img = jQuery("<div class='pickupImg'><a href='"+jQuery(this).attr("href")+"' target='"+jQuery(this).attr("target")+"'><img src='"+jQuery(this).attr("src")+"' width='58' height='58' alt='' /></a></div>");
					break;
			}
			_title = jQuery("<h3><a href='"+jQuery(this).attr("href")+"' target='"+jQuery(this).attr("target")+"'>"+jQuery("title",this).text()+"</a></h3>");
			_p = jQuery("<p>"+jQuery("text",this).text()+"</p>");
			_divHPR = jQuery("<div id='ecCheckR'>");
			_divHPR.append(_title);
			_divHPR.append(_p);

			_divHP.append(_img);
			_divHP.append(_divHPR);
		});
	}
	
	//PR
	if(prAStage.length > 0){
		prAStage.empty();
		_ul = jQuery("<ul>");
		prAStage.append(_ul);
		jQuery("item",prANode).each(function(idx){
			_li = jQuery("<li>");
			_ul.append(_li);
			_href = jQuery(this).attr("href");
			switch(_href){
				case "#":
					_img = jQuery("<div class='pickupImg'><img src='"+jQuery(this).attr("src")+"' alt='' /></div>");
					break;
				default:
					_img = jQuery("<div class='pickupImg'><a href='"+jQuery(this).attr("href")+"' target='"+jQuery(this).attr("target")+"'><img src='"+jQuery(this).attr("src")+"' width='58' height='58' alt='' /></a></div>");
					break;
			}
			_title = jQuery("<h4><a href='"+jQuery(this).attr("href")+"' target='"+jQuery(this).attr("target")+"'>"+jQuery("title",this).text()+"</a></h4>");
			_p = jQuery("<p>"+jQuery("text",this).text()+"</p>");
			_li.append(_img);
			_li.append(_title);
			_li.append(_p);
		});
	}
	if(prBStage.length > 0){
		prBStage.empty();
		_ul = jQuery("<ul>");
		prBStage.append(_ul);
		jQuery("item",prBNode).each(function(idx){
			_li = jQuery("<li>");
			_ul.append(_li);
			_href = jQuery(this).attr("href");
			_p = jQuery("<a href='"+jQuery(this).attr("href")+"' target='"+jQuery(this).attr("target")+"'>"+jQuery(this).text()+"</a>");
			_li.append(_p);
		});
	}
	//今月のaccess ranking TOP5
	if(rankingStage.length > 0){
		rankingStage.empty();
		_ol = jQuery("<ol>");
		rankingStage.append(_ol);
		jQuery("item",rankingNode).each(function(idx){
			_href = jQuery(this).attr("href");
			switch (_href) {
				case "#":
					_li = jQuery("<li class='rank"+idx+"'>"+jQuery(this).text()+"</li>");
					break;
				default:
					_li = jQuery("<li class='rank"+idx+"'><a href='"+jQuery(this).attr("href")+"' target='"+jQuery(this).attr("target")+"'>"+jQuery(this).text()+"</a></li>");
					break;
			}
			_ol.append(_li);
		});
	}
}
function onNewsXmlLoadSuccess(data, dataType){
	var _img, _ul, _ol, _li, _p, _title, _href;
	//XMLデータの受け取り
	newsXml = data;
	newsStage.empty();
	_ul = jQuery("<ul>");
	newsStage.append(_ul);
	jQuery("item",newsXml).each(function(idx){
		if(idx < 5){
			_href = jQuery(this).attr("href");
			switch(_href){
				case "#":
					_li = jQuery("<li>"+jQuery(this).text()+"</li>");
					break;
				default:
					jQuery(this).attr("href","http://www.happy-pool.jp"+jQuery(this).attr("href"));
					_li = jQuery("<li><a href='"+jQuery(this).attr("href")+"' target='"+jQuery(this).attr("target")+"'>"+jQuery(this).text()+"</a></li>");
					break;
			}
			_ul.append(_li);
		}

	});
}
function onTwitterXmlLoadSuccess(data, dataType){
	var _img, _ul, _ol, _li, _p, _title;
	//XMLデータの受け取り
	twitterXml = data;
	twitterStage.empty();
	_ul = jQuery("<ul>");
	twitterStage.append(_ul);
	//html要素の生成と配置
	jQuery("item",twitterXml).each(function(idx){
		//テキストの取得
		var txt = jQuery("title",this).text();
		var splitted = txt.split(":");
		splitted = splitted.slice(1);
		txt = splitted.join(":");
		//長い文字列への対応
		var maxLen = 39;
		if(txt.length > maxLen){
			txt = txt.slice(0,(maxLen-1));
			txt += "...";
		}
		//タグの生成
		_li = jQuery("<li><a href='"+jQuery("link",this).text()+"' target='_blank'>"+txt+"</a></li>");
		_ul.append(_li);
		_li.hide();
	});
	//タイマー処理開始
	nextTwit();
	twitterInt = setInterval(nextTwit, 6000);
}
function nextTwit(){
	jQuery("li",twitterStage).each(function(idx){
		if(idx == twitterIdx){
			jQuery(this).fadeIn();
		}else{
			jQuery(this).hide();
		}
	});
	twitterIdx++;
	
	var limit = Math.min(3, jQuery("li",twitterStage).length);
	if(twitterIdx >= limit){
		twitterIdx = 0;
	}
}

//画像ロールオーバー
function onOverImgOver(e){
	jQuery(this).attr("src",jQuery(this).attr("src_over"));
}
function onOverImgOut(e){
	jQuery(this).attr("src",jQuery(this).attr("src_out"));
}

//ページトップ
function onPageTopLinkClick(e){
	jQuery("html,body").animate({ scrollTop: 0 }, 500);
	return false;
}

jQuery(document).ready(init);

