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

function rollover() {
	if(!document.getElementsByTagName) return false;

	// SETUP ///////////////////////////////////////////////

	/* オーバーさせるボタンのクラス名（初期値：over） */
	var over = new RegExp(/^(.+\s)?(over)(\s.+)?$/);

	/* オーバー時に画像ファイルの末尾に追加する文字 */
	var addOver = '_o';

	////////////////////////////////////////////////////////

	var imgs = document.getElementsByTagName('img');
	var preload = new Array();
	var tempScr;

	for(var i=0; i<imgs.length; i++) {
		if(imgs[i].className.match(over)) {
			var src = imgs[i].getAttribute('src');
			var ext = src.substring(src.lastIndexOf('.'), src.length);
			var osrc = src.replace(ext, addOver + ext);
			
			imgs[i].setAttribute('osrc', osrc);
			
			preload[i] = new Image();
			preload[i].src = osrc;
			
			imgs[i].onmouseover = function() {
				tempSrc = this.getAttribute('src');
				var osrc = this.getAttribute('osrc');
				this.setAttribute('src', osrc);
			}
			imgs[i].onmouseout = function() {
				if(!tempSrc) {
					tempSrc = this.getAttribute('src').replace(addOver + ext, ext);
				} else {
					this.setAttribute('src', tempSrc);
				}
			}
		}
	}
}


/* -----------------------------------------------------------------------*/
// prepareLinks
/* -----------------------------------------------------------------------*/
function prepareLinks() {
	if(!document.getElementsByTagName) return false;
	var links = document.getElementsByTagName("a");
	for (var i=0; i<links.length; i++) {
		
		//ポップアップウィンドウで開く(class="openwin")
		if(links[i].getAttribute("className") == "openwin" || links[i].getAttribute("class") == "openwin") {
			links[i].onclick = function() {
				var src = this.getAttribute("href");
				popUp(src, 'small');
				return false;
			}
		}
	}
}

function popUp(winURL, type) {
	switch(type) {
		
		//ポップアップウィンドウのパラメータ
		case 'small':
			var w = 515;
			var h = 430;

			var param = 'width=' + w;
			param += ',height=' + h;
			param += ',resizable=0';
			param += ',toolbar=0';
			param += ',scrollbars=1';
			param += ',menubar=0';
			param += ',status=0';
			param += ',directories=0';
			param += ',location=0';
			var wname = 'popupWin';
		break;
	}

	var newwin = window.open(winURL,wname,param);
	newwin.focus();
}


/* -----------------------------------------------------------------------*/
// addLoadEvent
/* -----------------------------------------------------------------------*/
function addLoadEvent(func) {
	var oldonload = window.onload;
	if(typeof window.onload != 'function') {
		window.onload = func;
	} else {
		window.onload = function() {
			oldonload();
			func();
		}
	}
}

addLoadEvent(rollover);
addLoadEvent(prepareLinks);

