function imageReplacement3(tags) {
	if (!tags) {
		imageReplacement3(document.getElementsByTagName('a'));
		imageReplacement3(document.getElementsByTagName('q'));
	}
	else {
		for (var i=0; i<tags.length; i++) {
			if (tags[i].className == 'ir3') {
				var pImg = tags[i];
				var rImg = document.createElement('img');
				if (pImg.id) rImg.id = pImg.id;
				if (pImg.className) rImg.className = pImg.className;
				if (pImg.cite) rImg.src = pImg.cite;
				else rImg.src = pImg.href;
				rImg.alt = pImg.firstChild.nodeValue;
				rImg.title = pImg.firstChild.nodeValue;
				pImg.parentNode.replaceChild(rImg,pImg);
				i--;
			}
		}
	}
}
function imgRollover() {
	var rImg = new Array();
	var pImg = document.getElementsByTagName('img');
	for (var i=0; i<pImg.length; i++) {
		if ((pImg[i].src.indexOf('imgRO')>=0)||(pImg[i].className == 'ro')) {
			var srcBtm = pImg[i].src.substring(pImg[i].src.lastIndexOf('.'), pImg[i].src.length);
			rImg[i] = new Image();
			rImg[i].src = pImg[i].src.replace(srcBtm,'x'+srcBtm);
			pImg[i].setAttribute('rSrc',rImg[i].src);
			pImg[i].setAttribute('pSrc',pImg[i].src);
			pImg[i].onmouseover = function() {
				this.src = this.getAttribute('rSrc');
			}
			pImg[i].onmouseout = function() {
				this.src = this.getAttribute('pSrc');
			}
		}
	}
}
function pngLoaderForIE(){
	if ((typeof document.body.style.maxHeight == "undefined") && (typeof document.body.style.zoom != "undefined")) {
		for (var i=0; i<document.images.length; i++) {
			if (document.images[i].src.split('.').reverse()[0] == 'PNG') {
				var pImg = document.images[i];
				var rImg = document.createElement('b');
				if (pImg.id) rImg.id = pImg.id;
				if (pImg.className) rImg.className = pImg.className;
				if (pImg.alt) rImg.title = pImg.alt;
				if (pImg.getAttribute('rSrc')) rImg.setAttribute('rSrc',pImg.getAttribute('rSrc'));
				if (pImg.getAttribute('pSrc')) rImg.setAttribute('pSrc',pImg.getAttribute('pSrc'));
				with(rImg.style) {
					if ((pImg.align == 'left')||(pImg.align == 'right')) styleFloat = pImg.align;
					if (pImg.parentElement.href) cursor = 'hand';
					display = 'inline-block';
					width = pImg.width;
					height = pImg.height;
					filter = 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="' + pImg.src + '", sizingMethod="scale")';
				}
				pImg.replaceNode(rImg);
				i--;
			}
		}
	}
}
function imgRolloverForPLFI() {
	var rImg = new Array();
	var pImg = document.getElementsByTagName('b');
	for (var i=0; i<pImg.length; i++) {
		if ((pImg[i].style.filter)&&(pImg[i].getAttribute('rSrc'))) {
			var fltTop = 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="';
			var fltBtm = '", sizingMethod="scale")';
			pImg[i].onmouseover = function() {
				this.style.filter = fltTop + this.getAttribute('rSrc') + fltBtm;
			}
			pImg[i].onmouseout = function() {
				this.style.filter = fltTop + this.getAttribute('pSrc') + fltBtm;
			}
		}
	}
}
function toggleNavi() {
	var lists = document.getElementsByTagName('li');
	for (var i=0; i<lists.length; i++) {
		if (lists[i].className == 'tn') {
			swtA = lists[i].getElementsByTagName('a')[0];
			tgtUl = swtA.parentNode.getElementsByTagName('ul')[0];
			if (tgtUl.className == 'hdn') tgtUl.style.display = 'none';
			swtA.onclick = function() {
				tgtUl = this.parentNode.getElementsByTagName('ul')[0];
				if (tgtUl.style.display == 'none') tgtUl.style.display = 'block';
				else tgtUl.style.display = 'none';
				return false;
			}
		}
	}
}
function externalLinks() {
	var links = document.getElementsByTagName('a');
	for (var i=0; i<links.length; i++) {
		if (links[i].rel == 'ex') links[i].target = '_blank';
		else if (links[i].rel.split('ex').length>=3) {
			var winSize = links[i].rel.split('ex');
			var winPrmt = "scrollbars=1, resizable=1, menubar=0, directories=0, toolbar=0, status=0, location=0" + ",width=" + winSize[1] + ",height=" + winSize[2];
			var winName = links[i].rel;
			var openUri = links[i].href;
			links[i].setAttribute('paramaters',winPrmt);
			links[i].onclick = function() {
				var popupWin = window.open(this.href,this.rel,this.paramaters);
				popupWin.focus();
				return false;
			}
		}
		else if (links[i].rel == 'translate') {
			var googleGet = 'translate?hl=en&langpair=ja|en&u=';
			if (!document.URL.split('u=')[1]) {
				links[i].href = links[i].href + googleGet + escape(document.URL);
			}
			else {
				links[i].firstChild.nodeValue = 'Japanese';
				links[i].title = 'Japanese';
				links[i].href = document.URL.split('u=')[1];
				links[i].target = '_top';
			}
		}
		else if (links[i].rel == 'detail') {
			var detailPage = 'detail.php';
			var detailImg = links[i].href;
			var detailDesc = links[i].parentNode.parentNode.getElementsByTagName('p')[1].firstChild.nodeValue;
			var detailTitle = links[i].parentNode.parentNode.getElementsByTagName('h4')[0].firstChild.firstChild.nodeValue;
			links[i].href = detailPage + "?detailImg=" + encodeURI(detailImg) + "&detailTitle=" + encodeURI(detailTitle) + "&detailDesc=" + encodeURI(detailDesc);
			//以下、win/ieバグ対策
			if (links[i].firstChild.nodeValue) {
				links[i].firstChild.nodeValue = detailTitle;
			}
		}
	}
}
function titleGenerator() {
	var pageTitle = document.title.split(' - ');
	if (pageTitle[2]) {
		pageTitle = pageTitle[0] + '/' + pageTitle[2];
		document.title = pageTitle;
	}
}
function chapterNaviGenerator() {
	var bodyId = document.getElementsByTagName('body')[0].id.split('cat')[1];
	if (bodyId>0) {
		var pImg = document.getElementById('chpnav' + bodyId).firstChild.firstChild;
		var rImg = pImg.src.replace(/\.PNG/,'x.PNG');
		pImg.src = rImg;
		pImg.setAttribute('pSrc',rImg);
	}
}
function currentList() {
	var bodyId = document.getElementsByTagName('body')[0].id.split('cat');
	var sctLi = document.getElementById('sctnav').getElementsByTagName('li');
	var liNum = 1;
	for (var i=0; i<sctLi.length; i++) {
		if (!sctLi[i].id) {
			sctLi[i].id = 'sctLi'+liNum;
			if (sctLi[i].getElementsByTagName('ul')[0]) {
				if (bodyId[2]>0) {
					sctLi[i].className += 'tn';
					sctLi[i].getElementsByTagName('ul')[0].style.display = 'none';
				}
				sctUlLi = sctLi[i].getElementsByTagName('li');
				for (var j=0; j<sctUlLi.length; j++) {
					sctUlLi[j].id = 'sctLi'+liNum+(j+1);
				}
			}
			liNum++;
		}
	}
	if (bodyId[2]>0) {
		if (bodyId[3]) currentPage = 'sctLi'+bodyId[2]+bodyId[3];
		else currentPage = 'sctLi'+bodyId[2];
		document.getElementById(currentPage).className += 'currentLi';
		document.getElementById(currentPage).parentNode.style.display = 'block'
	}
}
function createDetail(){
	if (location.href.indexOf("detailImg") >= 0){
		var param = decodeURI(location.search).split('?detailImg=')[1];
		var imgSrc = param.split('&detailTitle=')[0];
		var titleVal = param.split('&detailTitle=')[1].split('&detailDesc=')[0];
		var descVal = param.split('&detailDesc=')[1];
	
		var pImg = document.getElementById("detailImg").firstChild;
		var rImg = document.createElement('img');
		rImg.src = imgSrc;
//		rImg.alt = titleVal;
//		rImg.title = titleVal;
		document.title += "/"+titleVal;
		document.getElementById("workTitle").firstChild.firstChild.nodeValue = titleVal;
		document.getElementById("detailDesc").firstChild.nodeValue = descVal;
		pImg.replaceChild(rImg,pImg.firstChild);
//		document.getElementsByTagName('body')[0].id ="cat2cat3cat1";
//		alert(document.getElementsByTagName('body')[0].id)
	}
}
function launch() {
	if (!document.getElementsByTagName) return;
	imageReplacement3();
	imgRollover();
	if (document.getElementById("chpnav")) chapterNaviGenerator();
	pngLoaderForIE();
	imgRolloverForPLFI();
	if (document.getElementById('sctnav')) currentList();
	toggleNavi();
	externalLinks();
	titleGenerator();
	createDetail();
}
window.onload = launch;
