/*
	var fileNmae	= 'ib_common.js v1.1';
	var auther	= 'GEEKS,INC';
	var autherUrl	= 'http://geeks.ne.jp/';
*/

function IBEnvironment() {
	var d  = document;
	var de = d.documentElement;
	var ua = navigator.userAgent;
	this.ua = {};
	this.ua.isGecko      = ua.match(/Gecko\//);
	this.ua.isSafari     = ua.match(/AppleWebKit/);
	this.ua.isOpera      = window.opera;
	this.ua.isIE         = (d.all && !this.ua.isGecko && !this.ua.isSafari && !this.ua.isOpera);
	this.ua.isIE40       = (this.ua.isIE && ua.match(/MSIE 4\.0/));     // IE 4.0x
	this.ua.isIE45       = (this.ua.isIE && ua.match(/MSIE 4\.5/));     // IE 4.5x
	this.ua.isIE50       = (this.ua.isIE && ua.match(/MSIE 5\.0/));     // IE 5.0x
	this.ua.isIE55       = (this.ua.isIE && ua.match(/MSIE 5\.5/));     // IE 5.5x
	this.ua.isIE60       = (this.ua.isIE && ua.match(/MSIE 6\.0/));     // IE 6.0x
	this.ua.isIE70       = (this.ua.isIE && ua.match(/MSIE 7\.0/));     // IE 7.0x
	this.ua.isNN4        = d.layers;                                    // NN 4.x
	this.ua.isMac        = ua.match(/Mac/);
	this.ua.isWin        = ua.match(/Win/);
	this.ua.isWinIE      = this.ua.isWin && this.ua.isIE;
	this.ua.isMacIE      = this.ua.isMac && this.ua.isIE;
	this.ua.productSub   = navigator.productSub;
	this.ua.revision     = (this.ua.isIE    ) ? parseFloat(ua.match(/MSIE ([\d\.]+)/)[1])         :
	                       (this.ua.isGecko ) ? parseFloat(ua.match(/; rv:([\d\.]+)/)[1])         :
	                       (this.ua.isSafari) ? parseFloat(ua.match(/AppleWebKit\/([\d\.]+)/)[1]) :
	                       (this.ua.isOpera ) ? parseFloat(ua.match(/Opera.([\d\.]+)/)[1])        :
	                                            0;
}

$id = function(ids){
	var d = document;
	if(d.getElementById(ids)) return d.getElementById(ids);
	return false;
}

$class = document.getElementsByClassName = function(className, tagName) {
	if(!tagName) tagName = "*";
	var d = document;
	var children = d.getElementsByTagName(tagName) || d.all;
	if(!children) return;
	var elements = new Array();
	var childrenlength = children.length;
  
	for (var i = 0; i < childrenlength; i++) {
		var child = children[i];
		var classNames = child.className.split(' ');
		var classNameslength = classNames.length;
		for (var j = 0; j < classNameslength; j++) {
			if (classNames[j] == className) {
				elements.push(child);
				break;
			}
		}
	}
	return elements;
}

var Class = {
	create: function() {
		return function() {
			this.initialize.apply(this, arguments);
		}
	}
}

/*	CLASS	*/


var importer = Class.create();
importer.prototype = {
	initialize: function(){},
	js: function(url){
		var head = document.getElementsByTagName( 'head' );
		var script=document.createElement( 'script' );
		script.type="text/javascript";
		script.src= url;
		head[0].appendChild( script );
	},
	css: function(url){
		var head = document.getElementsByTagName( 'head' );
		var link=document.createElement( 'link' );
		link.media="all";
		link.rel="stylesheet";
		link.type="text/css";
		link.href= url;
		head[0].appendChild( link );
	}
}
var rollOver = Class.create();
rollOver.prototype = {
	initialize: function(){
		var roAry = $class('rollover', 'img');
		if(!roAry) return;
		var extentionList = new Array(	'.jpg',
						'.jpeg',
						'.jpe',
						'.gif',
						'.bmp',
						'.png');
		var pleLoadImagesUrl = new Array();
		for(i in roAry){
			var obj = new Object();
			var urlString = new String();
				urlString = roAry[i].src;
					for(j in extentionList){
						if(urlString.match(extentionList[j])){
							urlString = urlString.split(extentionList[j]);
							urlString = urlString[0].split("_n");
							urlString = urlString[0] + "_o" + extentionList[j];
						}
					}
				obj.onmouseover = this.onMouseOver;
				obj.onmouseout = this.onMouseOut;
				obj.src_n = roAry[i].src;
				obj.src_o = urlString;

			roAry[i].src_o = obj.src_o;
			roAry[i].src_n = obj.src_n;
			roAry[i].onmouseover = obj.onmouseover;
			roAry[i].onmouseout = obj.onmouseout;
		pleLoadImagesUrl.unshift(obj.src_o);
		}
		this.preLoadImages(pleLoadImagesUrl);
	},
	onMouseOver: function(){
		this.src = this.src_o;
	},
	onMouseOut: function(){
		this.src = this.src_n;
	},
	preLoadImages: function(){
		if(arguments[0]){
		preImgAry = new Array();
			for(i in arguments[0]){
				var preImgs = new Image();
				preImgs.src = arguments[0][i];
				preImgAry[i] = preImgs.src;
			}
		}
	}
}
var smoothScroll = Class.create();
smoothScroll.prototype = {
	initialize: function(){
		//this.addToTop();
		var toTopAry = $class('toTop01', 'ul');
		var toTopArys = $class('toTop02', 'ul');
		if(!toTopAry && !toTopAry2) return;
		scrj = 0;
		for(i in toTopAry){
			toTopAry[i].getElementsByTagName('li')[0].getElementsByTagName('a')[0].onclick = this.play;
		}
		for(i in toTopArys){
			toTopArys[i].getElementsByTagName('li')[1].getElementsByTagName('a')[0].onclick = this.play;
		}
	},
	play: function(){
		softScrollBack();
		return false;
	}
}
	var scrj = 1;
	function softScrollBack() {
		if(navigator.appName == "Microsoft Internet Explorer" && document.compatMode == "CSS1Compat") {
			var scdist = document.body.parentNode.scrollTop;
		} else {
			var scdist = window.pageYOffset;
		}
		if(scrj<50 && scdist) {
			scdist = (scdist>2) ? Math.ceil(scdist*.36) : 1;
			scrj++;
			scrollBy(0,-scdist);
			setTimeout("softScrollBack()",20);
		} else {
			scrollTo(0,0);
			scrj = 1;
		}
	}

var formAction = Class.create();
formAction.prototype = {
	initialize: function(){
		var formTag = document.getElementsByTagName('form');
		if(!formTag) return false;
		for(i in formTag){
			var inputTag = document.getElementsByTagName('input');
			var textAreaTag = document.getElementsByTagName('textarea');
			for(j in inputTag){
			if(inputTag[j].type == "text")
				inputTag[j].onfocus = function(){
					this.style.backgroundColor = "#FFFEEE";
				}
				inputTag[j].onblur = function(){
					this.style.backgroundColor = "#FFFFFF";
				}
			}
			if(!textAreaTag) return;
			for(k in textAreaTag){
				textAreaTag[k].onfocus = function(){
					this.style.backgroundColor = "#FFFEEE";
				}
				textAreaTag[k].onblur = function(){
					this.style.backgroundColor = "#FFFFFF";
				}
			}
		}
	}
}

var stripeTable = Class.create();
stripeTable.prototype = {
	initialize: function(){
		var tableArray = $class('stripe', 'table');
		if(!tableArray) return;
		for(i in tableArray){
			var trArray = tableArray[i].getElementsByTagName('tr');
			var evenChker = 0;
			for(j in trArray){
				if(IsNumeric(j) && evenChker%2){
					trArray[j].className += " even";
				}
				evenChker ++;
			}
		}
	}
}

function insertAfter(parent, node, referenceNode) {
	parent.insertBefore(node, referenceNode.nextSibling);
}

function IsNumeric(sText){
	var ValidChars = "0123456789.";
	var IsNumber=true;
	var Char;
		for (i = 0; i < sText.length && IsNumber == true; i++){
			Char = sText.charAt(i);
			if (ValidChars.indexOf(Char) == -1) IsNumber = false;
		}
	return IsNumber;
}

function show(element) {
	var obj = $id(element);
	if(!obj) return false;
	return obj.style.display = '';
}

function hide(element) {
	var obj = $id(element);
	if(!obj) return false;
	return obj.style.display = 'none';
}

function toggle(obj) {
	var el = $id(obj);
	if ( el.style.display != 'none' ) {
		return el.style.display = 'none';
	}
	else {
		return el.style.display = '';
	}
}

function addEvent(elm, type, event) {
	if(elm.addEventListener) {
		elm.addEventListener(type, event, false);
	} else if(elm.attachEvent) {
		elm.attachEvent('on'+type, event);
	} else {
		elm['on'+type] = event;
	}
}
/*	sound	*/
var swfURL = "/shared/sound/soundUnit.swf";
var lastExecute = now = new Date().getTime();
function soundInit(){
	var links = document.links;
	var imax = links.length;
	for(var i=0; i<imax; i++){
		links[i].onmouseover = play;
	}
	var div = document.createElement("div");
	div.id = "SoundUnit"
	document.body.appendChild(div);
}

function play(e){
	var titles = document.title;
	var now = new Date().getTime();
	if( now < lastExecute + 50) return;
	lastExecute = now;
	var div = document.getElementById("SoundUnit");
	var innerHTML = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="0" height="0" id="SoundUnit"><param name="movie" value="' + swfURL + '" /><embed src="' + swfURL + '" width="0" height="0" name="SoundUnit" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /></object>'
	div.innerHTML = innerHTML;
	document.title = titles;
}

function IBautoRun(){
	//var yourBrowser = new IBEnvironment();
	//if(!yourBrowser.ua.isMacIE){
		var ro = new rollOver();
		var ss = new smoothScroll();
		var fa = new formAction();
		var st = new stripeTable();
		//var so = new soundInit();
	//}
	$('body *:first-child').addClass('first-child');
	//$('div#alpha h2 + h3').addClass('h2h3');
	//$('div#alpha h3 + p').addClass('pseudoChild');
	//$('div#alpha h4 + p').addClass('pseudoChild');
	if(document.getElementById('headUtility01')) document.getElementById('headUtility01').getElementsByTagName("li")[3].style.display = 'none';
	document.getElementsByTagName('body').item(0).style.visibility = 'visible';
}

addEvent(window, 'load', function(){
	IBautoRun();
});

document.write('<style type="text/css">body{ visibility : hidden;}</style>');
