/*==========================================================
http://www.tk1975.com      tk1975., Some Rights Reserved.
==========================================================*/
//DOM Scriptingを利用する上で知っておくべきこと http://www.tk1975.com/onload.php
function prepareOnloadFunction(func){var oldonload = window.onload;if(typeof window.onload != 'function'){window.onload = func;}else{window.onload = function(){oldonload();func();}}}
function prepareOnresizeFunction(func){var oldonresize = window.onresize;if(typeof window.onresize != 'function'){window.onresize = func;}else{window.onresize = function(){oldonresize();func();}}}
//クラス属性を作成・追加する
function addClass(element,value){if(!element.className){element.className = value;}else{newClassName = element.className;newClassName += " ";newClassName += value;element.className = newClassName;}}
//クラス属性を削除する
function delClass(element,value){if(!element.className) return false;var class_name = element.className;if(class_name == value){element.className = "";element.removeAttribute("class");}else{var class_name_unit = class_name.split(" ");if(class_name_unit[0] == value){value = value + " ";element.className = class_name.split(value)[1];}else{value = " " + value;element.className = class_name.split(value)[0] + class_name.split(value)[1];}}}
//次のノードが要素ノードか調べる
function getNextElement(node){if(node.nodeType == 1){return node;};if(node.nextSibling){return getNextElement(node.nextSibling);};return null;}

//マウスオーバー時の画像置換 http://www.tk1975.com/contents/imgchange.php
function tk1975_imgChange(class_name,overImgNameRule){if(!document.getElementsByTagName("img")) return false;var imgChange = document.getElementsByTagName("img");for(var i=0; i<imgChange.length; i++){if(imgChange[i].className.indexOf(class_name) == -1) continue;if(imgChange[i].className.indexOf(class_name) != -1){var preImgSrc = imgChange[i].getAttribute("src");var preImgOverFile = preImgSrc.split("/").reverse()[0];var preImgOverFileSplit = preImgOverFile.split(".");var preImgPath = preImgSrc.split(preImgOverFile)[0];var preImgOverSrc = preImgPath + preImgOverFileSplit[0] + overImgNameRule + "." + preImgOverFileSplit[1];var preloadImg = new Image();preloadImg.src = preImgOverSrc;imgChange[i].onmouseover = function(){var imgSrc = this.getAttribute("src");var imgOverFile = imgSrc.split("/").reverse()[0];var imgOverFileSplit = imgOverFile.split(".");var imgPath = imgSrc.split(imgOverFile)[0];var imgOverSrc = imgPath + imgOverFileSplit[0] + overImgNameRule + "." + imgOverFileSplit[1];this.setAttribute("src",imgOverSrc);};imgChange[i].onmouseout = function(){var imgSrc = this.getAttribute("src");var imgOverFile = imgSrc.split("/").reverse()[0];var imgOverFileSplit = imgOverFile.split(overImgNameRule);var imgPath = imgSrc.split(imgOverFile)[0];var imgOverSrc = imgPath + imgOverFileSplit[0] + imgOverFileSplit[1];this.setAttribute("src",imgOverSrc);}}}}

//マウスオーバー時にclassを追加／削除 http://www.tk1975.com/contents/hover.php
function tk1975_hover(area_id,elem,class_name){if(!document.getElementById || !document.getElementsByTagName || class_name == "") return false;if(area_id == ""){var area = document.getElementsByTagName("body")[0];}else if(!document.getElementById(area_id)){return false;}else{var area = document.getElementById(area_id);};if(elem == ""){area.onmouseover = function(){addClass(this,class_name);};area.onmouseout = function(){delClass(this,class_name);};}else{var elems = area.getElementsByTagName(elem);for(var i=0; i<elems.length; i++){elems[i].onmouseover = function(){addClass(this,class_name);};elems[i].onmouseout = function(){delClass(this,class_name);}}}}

//URLと同じリンク先を装飾する http://www.tk1975.com/contents/current_url.php
function tk1975_currentURL(area_id,elem,class_name){if(!document.getElementById || !document.getElementsByTagName || class_name == "") return false;if(area_id == ''){var area = document.getElementsByTagName("body")[0];}else if(!document.getElementById(area_id)){ return false;}else{var area = document.getElementById(area_id);};if(elem == ''){elem = "a";};var elems = area.getElementsByTagName(elem);if(elems.length == 0) return false;var currentFile = location.href.split("/").reverse()[0];if(currentFile == "" || currentFile.indexOf("index") != -1){currentFile = location.href.split("/").reverse()[1];if(currentFile.indexOf(".") != -1){currentFile = "top";}};for(var i=0; i<elems.length; i++){if(elem == "a"){var elemURL = elems[i].getAttribute("href");};if(elem != "a"){var elemLink = elems[i].getElementsByTagName("a")[0];var elemURL = elemLink.getAttribute("href");};var elemFile = elemURL.split("/").reverse()[0];if(elemURL.split("/").reverse()[1] == ""){elemFile = "top";}else if(elemFile == "" || elemFile.indexOf("index") != -1){elemFile = elemURL.split("/").reverse()[1];if(elemFile.indexOf(".") != -1){elemFile = "top";}};if(elemFile == currentFile){addClass(elems[i],class_name);return false;}}}

//aタグの親要素ごとクリッカブルにする http://www.tk1975.com/contents/link_area.php
/*
function tk1975_eventClick(area_id,elem,link_target){if(!document.getElementsByTagName || elem == "") return false;if(area_id == ''){var area = document.getElementsByTagName("body")[0];}else{if(!document.getElementById(area_id)) return false;var area = document.getElementById(area_id);};var elems = area.getElementsByTagName(elem);for(var i=0; i<elems.length; i++){if(elems[i].getElementsByTagName("a").length == 0) continue;elems[i].onclick = function(){var elemLink = this.getElementsByTagName("a")[0];var elemURL = elemLink.getAttribute("href");if(link_target == "_self" || link_target == 0){location.href = elemURL;};if(link_target == "_blank" || link_target == 1){window.open(elemURL,'','');return false;}}}}
*/
/*2008.8.13 elemがない場合に対応*/
/*2008.8.17 iframe内での利用時に対応*/
function tk1975_eventClick(area_id,elem,link_target){
	if(!document.getElementsByTagName) return false;
	if(area_id == ''){
		var area = document.getElementsByTagName("body")[0];
		}else{
		if(!document.getElementById(area_id)) return false;
		var area = document.getElementById(area_id);
		};
	if(elem == ""){
		area.onclick = function(){
			var elemLink = this.getElementsByTagName("a")[0];
			var elemURL = elemLink.getAttribute("href");
			if(link_target == "_self" || link_target == 0){window.open(elemURL,'_parent','');return false;};
			if(link_target == "_blank" || link_target == 1){window.open(elemURL,'','');return false;}
			}
		}else{
		var elems = area.getElementsByTagName(elem);
		for(var i=0; i<elems.length; i++){
			if(elems[i].getElementsByTagName("a").length == 0) continue;
			elems[i].onclick = function(){
				var elemLink = this.getElementsByTagName("a")[0];
				var elemURL = elemLink.getAttribute("href");
				if(link_target == "_self" || link_target == 0){window.open(elemURL,'_parent','');return false;};
				if(link_target == "_blank" || link_target == 1){window.open(elemURL,'','');return false;}
				}
			}
		}
	}

//strictで新規ウィンドウを立ち上げる http://www.tk1975.com/contents/strict_new_win.php
function tk1975_newWin(className){
	if(!document.getElementsByTagName("a")) return false;
	var links = document.getElementsByTagName("a");
	for(var i=0; i<links.length; i++){
		if(links[i].className.indexOf(className) == -1) continue;
		if(links[i].className.indexOf(className) != -1){
			links[i].onclick = function(){
				var hrefTxt = this.getAttribute("href");
				window.open(hrefTxt,"","");
				return false;
				}
			}
		}
	}
function tk1975_newWinIcon(area_id,className,icon_src,icon_over_src){
	if(area_id == ''){
		var area = document.getElementsByTagName("body")[0];
		}else{
		if(!document.getElementById(area_id)) return false;
		var area = document.getElementById(area_id);
		}
	if(!area.getElementsByTagName("a")) return false;
	var links = area.getElementsByTagName("a");
	for(var i=0; i<links.length; i++){
		if(links[i].className.indexOf(className) == -1) continue;
		if(links[i].className.indexOf(className) != -1){
			var iconImgOut = new Image();
			iconImgOut.src = icon_src;
			var iconImgOver = new Image();
			iconImgOver.src = icon_over_src;
			var icon_img = document.createElement("img");
			icon_img.setAttribute("src",icon_src);
			icon_img.setAttribute("alt","新規ウィンドウ表示");
			links[i].appendChild(icon_img);
			links[i].onmouseover = function(){
				var link_icon = this.getElementsByTagName("img");
				link_icon[link_icon.length-1].setAttribute("src",icon_over_src);
				}
			links[i].onmouseout = function(){
				var link_icon = this.getElementsByTagName("img");
				link_icon[link_icon.length-1].setAttribute("src",icon_src);
				}
			}
		}
	}


/*20090522*/
var tk1975 = new Object();
tk1975.ajax = new Object();
tk1975.core = new Object();
tk1975.event = new Object();

tk1975.ajax.httpGetRequest = function(url, callback, headers){
	var ajax_elem = null;
	if(window.XMLHttpRequest){
		ajax_elem = new XMLHttpRequest();
		}else if(window.ActiveXObject){
		try{	
			ajax_elem = new window.ActiveXObject("Msxml2.XMLHTTP.3.0");
			}catch(e){
			return null;
			}
		}
	if(ajax_elem != null){
		ajax_elem.open("GET",url,true);
		if(typeof(headers) == "object"){
			for(var name in headers){
				ajax_elem.setRequestHeader(name,headers[name]);
				}
			}
		ajax_elem.onreadystatechange = function(){
			if(ajax_elem.readyState == 4){
				callback(ajax_elem);
				}
			}
		}
	ajax_elem.send(null);
	return ajax_elem;
	}

tk1975.event.addEventListener = function(elem,type,func,boolValue){
	if(!elem){return false;}
	if(!boolValue){boolValue = false;}
	if(elem.addEventListener){
		elem.addEventListener(type,func,boolValue);
		}else if(elem.attachEvent){
		elem.attachEvent("on" + type, func);
		}else{
		return false;
		}
	}
