/*
 Author : http://www.yomotsu.net
 Licensed under the GNU Lesser General Public License version 2.1
*/

/* rollover
----------------------------------------*/

function yomotsuRollover() {
	
	var img = document.getElementsByTagName("img");
	
	for(i=0;i<img.length;i++){

		var src   = img[i].getAttribute("src");
		var ftype = src.substring(src.lastIndexOf("."), src.length);
		
		if(new RegExp("_n"+ ftype + "\\b").exec(src)) {
			
			img[i].onmouseover = function() {
				if(this.style.filter){/*for IE5.5-6 && png*/
					roSrc = this.style.filter.slice(this.style.filter.indexOf("src='")+5,-8)+"_r.png"
					this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=crop,src='"+roSrc+"')";
				}
				else {
					var curSrc   = this.getAttribute("src");
					var curFtype = curSrc.substring(curSrc.lastIndexOf("."), curSrc.length);
					this.setAttribute("src", curSrc.slice(0, -1*(curFtype.length + 2)) + "_r" + curFtype);
				}
			}	
			
			img[i].onmouseout = function() {
				if(this.style.filter){/*for IE5.5-6 && png*/
					outSrc = this.style.filter.slice(this.style.filter.indexOf("src='")+5,-8)+"_n.png"
					this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=crop,src='"+outSrc+"')";
				}
				else {
					var curSrc   = this.getAttribute("src");
					var curFtype = curSrc.substring(curSrc.lastIndexOf("."), curSrc.length);
					this.setAttribute("src", curSrc.slice(0, -1*(curFtype.length + 2)) + "_n" + curFtype);
				}
			}
		}
	}
}

addEvent(window, "load", yomotsuRollover);


/* printButton
----------------------------------------*/
function setPrintButton(){
	var article = document.getElementById("article");
	var printButton = document.createElement("p");
	printButton.id = "print-page";
	printButton.innerHTML='このページを印刷する'
	article.insertBefore( printButton , article.firstChild);
	
	printButton.onclick = function(){print();}
}

addEvent(window, 'load', setPrintButton);


/* backToTop
----------------------------------------*/

backToTopBootConf = {
	topFlag : "#document"
}

function yomotsuBackToTopBoot(){
	var a = document.getElementsByTagName("a");
	for(i=0;i<a .length;i++){
		if(new RegExp(backToTopBootConf.topFlag + "\\b").exec(a[i].getAttribute("href"))) {
			
			a[i].onclick = function(){
				this.removeAttribute("href")
				backToTop();
				this.setAttribute("href",backToTopBootConf.topFlag);
				return false;
			}
		}
	}
}


function backToTop() {
	var x1 = x2 = x3 = 0;
	var y1 = y2 = y3 = 0;

	if (document.documentElement) {
		x1 = document.documentElement.scrollLeft || 0;
		y1 = document.documentElement.scrollTop || 0;
	}

	if (document.body) {
		x2 = document.body.scrollLeft || 0;
		y2 = document.body.scrollTop || 0;
	}

	x3 = window.scrollX || 0;
	y3 = window.scrollY || 0;

	var x = Math.max(x1, Math.max(x2, x3));
	var y = Math.max(y1, Math.max(y2, y3));

	window.scrollTo(Math.floor(x / 1.3), Math.floor(y / 1.3));

	if (x > 0 || y > 0) {
		window.setTimeout("backToTop()", 25);
	}
	else if (navigator.userAgent.indexOf("AppleWebKit") == -1){
		location.href = backToTopBootConf.topFlag;
	}
		
}

addEvent(window, 'load', yomotsuBackToTopBoot);


/* add event
----------------------------------------*/

function addEvent(obj, evType, fn){
	if (obj.addEventListener){
		obj.addEventListener(evType, fn, false);
		return true;
	}
	else if (obj.attachEvent){
		var r = obj.attachEvent("on"+evType, fn);
		return r;
	}
	else {
		return false;
	}
}
