/**
 * 画像ロールオーバー
 */
function rollOver(id) {
	var imgSrc = document.images[id].src;
	var ext = imgSrc.substring(imgSrc.lastIndexOf('.'), imgSrc.length);
	var suffix = '-on';
	if (imgSrc.indexOf(suffix) < 0) {
		document.images[id].src = imgSrc.substring(0, imgSrc.length - ext.length) + suffix + ext;
	} else {
		document.images[id].src = imgSrc.substring(0, imgSrc.length - (ext.length + suffix.length)) + ext;
	}
}

function tabSwitch(ref) {
	var parentId = 'archiveNavi';
	var targetId = getId(ref.href);
	var target = document.getElementById(parentId);
	var element = target.childNodes;
	var l = element.length;
	for (var i = 0; i < l; i++) {
		if (element[i].nodeType === 1) {
			var id = getId(element[i].firstChild.href);
			var e = document.getElementById(id);
			e.className = e.className.replace(/active[\s]*/, '');
			element[i].className = element[i].className.replace(/active[\s]*/, '');
		}
	}
	e = document.getElementById(targetId);
	e.className = e.className.replace(/^/, 'active ');
	ref.parentNode.className = ref.parentNode.className.replace(/^/, 'active ');
}

function getId(ref) {
	var id = ref.substring(ref.indexOf('#') + 1, ref.length);
	return id;
}


/**
 * WindowsMediaPlayer表示
 */
function RunASX(moviePath, movieWidth, movieHeight, isMute) {
	isMute = (isMute != '') ? isMute : false;
	var conf = {
		// ファイルのパス
		FileName: moviePath,
		// 自動再生
		AutoStart: 1,
		// 繰り返し回数
		PlayCount: 1,
		// 音量
		//Volume: 100,
		// ミュート
		Mute: isMute,
		// 情報の表示
		ShowDisplay: 0,
		// ステータスバーの表示
		ShowStatusBar: 1,
		// コントロールバーの表示(ShowAudioControls、ShowPositionControlsを含む)
		ShowControls: 1,
		// 音量ツマミの表示
		ShowAudioControls: 1,
		// 再生ボタン等の表示
		ShowPositionControls: 1
	}
	var tag = '';
	tag += '<div class="wmv">';
	tag += '<object';
	tag += ' id="MediaPlayer"';
	tag += ' classid="CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95"';
	tag += ' codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715"';
	tag += ' standby="Loading Microsoft Windows Media Player components..."';
	tag += ' type="application/x-oleobject"';
	tag += ' width="' + movieWidth + '" height="' + movieHeight + '"';
	tag += '>';
	for (var key in conf) {
		tag += '<param name="' + key + '" value="' + conf[key] + '">';
	}
	tag += '<embed';
	tag += ' type="application/x-mplayer2"';
	tag += ' pluginspage="http://www.microsoft.com/Windows/Downloads/Contents/Products/MediaPlayer/"';
	tag += ' width="' + movieWidth + '" height="' + movieHeight + '"';
	conf['Mute'] = (conf['Mute']) ? 1 : 0; 
	for (var key in conf) {
		if (key == 'FileName') tag += ' src="' + conf[key] + '"';
		tag += ' ' + key.toLowerCase() + '="' + conf[key] + '"';
	}
	tag += '>';
	tag += '</embed>';
	tag += '</object>';
	tag += '</div>';
	document.write(tag);
}


/**
 * 表内セルクラス付加
 */
function tableAlternateStyle() {
	var tableObjList = getElementsByClassName('alternate', 'mainContentsArea');
	var l = tableObjList.length;
	for (var i = 0; i < l; i++) {
		var trObj = tableObjList[i].getElementsByTagName('tr');
		var m = trObj.length;
		for (var j = 0; j < m; j++) {
			trObj[j].className = ((j % 2) === 0) ? 'odd' : 'even';
		}
	}
}


/**
 * 指定したクラス名を持つ要素を取得
 * 引数：クラス名, 検索範囲(id指定)
 */
function getElementsByClassName(name, scope) {
	var elements;
	var classList = new Array();
	if (typeof scope === 'undefined') {
		elements = document.getElementsByTagName('*');
	} else {
		elements = document.getElementById(scope).getElementsByTagName('*');
	}
	var l = elements.length;
	for (var i = 0; i < l; i++) {
		if (elements[i].className.indexOf(name) >= 0) {
			classList.push(elements[i]);
		}
	}
	return classList;
}

window.onload = function() {
	tableAlternateStyle();
}
