var g_link_url		= null;

function vl_ranking_link(category,site_name,url,linkurl)
{
	g_link_url			= linkurl;

	var param			= "category=" + category + "&url=" + url + "&site_name=" + site_name;

	var ajaxrequest = new Ajax.Request('http://shizuokatimes.net/ranking/dom/ranking_link_proc.php',
								{
									method:"post",
									parameters:param,
									onComplete:vl_ranking_link_proc,
									asynchronous:false
								});
								
	// dom_getResult("ranking_link_proc.php",vl_ranking_link_proc,"category=" + category + "&url=" + url + "&site_name=" + site_name);
}
function vl_ranking_link_proc(request)
{
	// 直接リンクする場合
	//location.href	= g_link_url;

	// 別ウインドウで開く場合
	window.open(g_link_url);
}

function MovePage(page)
{
	// 現在のURLを取得
	var url			= location.href;

	// ページャー情報の取得
	var page_index		= url.indexOf("page=");

	// ページャー情報が存在しているかチェックする(存在していない場合は１ページ目を表示中と判断する)
	if (page_index != -1)
	{
		// ページャー情報の区切り文字を見つける
		var page_end_index		= url.indexOf("&",page_index + 1);

		// 区切り文字が見つからない場合を判定(ページャー情報がGETパラメータの最後についている場合を判定)
		if (page_end_index == -1)
		{
			// URLからページャー情報を削除する
			url		= url.substring(0,page_index - 1);
		}
		else
		{
			// URLからページャー情報を削除する
			url		= (url.substring(0,page_index) + url.substring(page_end_index + 1));
		}
	}

	// パラメータが存在するかチェック
	if (url.indexOf("?") != -1)
	{
		// パラメータが存在する場合はページャー情報を&で結合する
		url		+= "&";
	}
	else
	{
		// パラメータが存在しない場合はページャー情報を?で結合する
		url		+= "?";
	}
	url			+= "page=" + page;

	// 画面遷移を行う
	location.href			= url;
}

var g_view_ranking_id		= "";
function vl_view_ranking(view_ranking_id)
{
	g_view_ranking_id		= view_ranking_id;

	var ajaxrequest = new Ajax.Request('http://shizuokatimes.net/ranking/dom/ranking_get_proc.php',
							{
								method:"post",
								parameters:"",
								onComplete:vl_view_ranking_proc,
								asynchronous:false
							});
}

function vl_view_ranking_proc(request)
{
	// 結果XMLを取得する
	var resultXmlObj = request.responseXML;

	var ulObj				= document.createElement("ul");
	ulObj.className			= "nice-list";

	// XMLを解析しながら、イベント登録日を取得する
	for (var cnt = 0 ; cnt < resultXmlObj.getElementsByTagName("contents").length ; cnt++ )
	{
		// Contentsオブジェクトの取得(基本的にこれは一つしか存在しないはす)
		var contentsObj = resultXmlObj.getElementsByTagName("contents").item(cnt);

		for (var cnt2 = 0 ; cnt2 < contentsObj.getElementsByTagName("rank_data").length ; cnt2++ )
		{
			var rank_dataObj		= contentsObj.getElementsByTagName("rank_data").item(cnt2);

			var rank				= getTextContent(rank_dataObj.getElementsByTagName("rank"));
			var site_name			= getTextContent(rank_dataObj.getElementsByTagName("site_name"));
			var url					= getTextContent(rank_dataObj.getElementsByTagName("url"));

			var liObj				= document.createElement("li");

			var spanObj				= document.createElement("span");
			spanObj.className		= "quiet";
			spanObj.innerHTML		= rank + ".";

			var aObj				= document.createElement("a");
			aObj.href				= url;
			aObj.innerHTML			= site_name;

			liObj.appendChild(spanObj);
			liObj.appendChild(aObj);

			ulObj.appendChild(liObj);
		}
	}

	var parentObj					= document.getElementById(g_view_ranking_id);
	parentObj.appendChild(ulObj);
}

function getTextContent(node)
{
	if(window.ActiveXObject)
	{
		try
		{
			//MSXML2以降用
			return node.item(0).firstChild.nodeValue;
		}
		catch (e)
		{
			try
			{
				//旧MSXML用
				return node.item(0).firstChild.nodeValue;
			}
			catch (e2)
			{
				return "";
			}
		}
	}
	else if(window.XMLHttpRequest)
	{
		//Win ie以外のXMLHttpRequestオブジェクト実装ブラウザ用
		return node.item(0).textContent;
	}
	else
	{
		return "";
	}

	return (node.firstChild.textContent ? node.item(0).textContent : node.firstChild.nodeValue);
}

