/*
Charset: UTF-8（京雀）
Version: 20080701 for DFS
Programing by Masao Takahashi.
*/
function hasClassName(node,class_name){return new RegExp('\\b'+class_name+'\\b').test(node.className)};
function addClassName(node,class_name){if(!node.className){node.className=class_name} else if(!hasClassName(node,class_name)){var className=node.className+" "+class_name;node.className=className.split(/\s+/).join(' ')}};
function removeClassName(node,class_name){var className=node.className;if(className){className=className.replace(new RegExp('\\b'+class_name+'\\b'),'');className=className.replace(/\s+/g,' ');node.className=className.replace(/\s+$/g,'')}};
function removeAllChild(node) { while (node.hasChildNodes()) node.removeChild(node.firstChild); }
function addEventHandler(target, type, listener)
{
	if (target.addEventListener) target.addEventListener(type, listener, false);
	else if (target.attachEvent) target.attachEvent('on' + type, function() { listener.call(target, window.event); });
	else target['on' + type] = function(e) { listener.call(target, e || window.event); };
}

function FlashPlayerVersion() {
	this.reset();
}

FlashPlayerVersion.prototype = {
reset : function()
{
	this.setVersion([0,0,0]);
	if(navigator.plugins && navigator.mimeTypes.length){
		var x = navigator.plugins["Shockwave Flash"];
		if(x && x.description) {
			this.setVersion(x.description.replace(/([a-zA-Z]|\s)+/, "").replace(/(\s+r|\s+b[0-9]+)/, ".").split("."));
		}
	}else if (navigator.userAgent && navigator.userAgent.indexOf("Windows CE") >= 0){ // if Windows CE
		var axo = 1;
		var counter = 3;
		while(axo) {
			try {
				counter++;
				axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+ counter);
				this.setVersion([counter,0,0]);
			} catch (e) {
				axo = null;
			}
		}
	} else { // Win IE (non mobile)
		// do minor version lookup in IE, but avoid fp6 crashing issues
		// see http://blog.deconcept.com/2006/01/11/getvariable-setvariable-crash-internet-explorer-flash-6/
		try{
			var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
		}catch(e){
			try {
				var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
				this.setVersion([6,0,21]);
				axo.AllowScriptAccess = "always"; // error if player version < 6.0.47 (thanks to Michael Williams @ Adobe for this code)
			} catch(e) {
				if (this.major == 6) {
					return;
				}
			}
			try {
				axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
			} catch(e) {}
		}
		if (axo != null) {
			this.setVersion(axo.GetVariable("$version").split(" ")[1].split(","));
		}
	}
},
setVersion : function(arrVersion)
{
	this.major = arrVersion[0] != null ? parseInt(arrVersion[0]) : 0;
	this.minor = arrVersion[1] != null ? parseInt(arrVersion[1]) : 0;
	this.rev = arrVersion[2] != null ? parseInt(arrVersion[2]) : 0;
},
isValid : function(major,minor,rev)
{
	if(this.major < major) return false;
	if(this.major > major) return true;
	if(this.minor < minor) return false;
	if(this.minor > minor) return true;
	if(this.rev < rev) return false;
	return true;
}
};

function CommonInterface() {
	this.aInterface = new Array();
	this.flashVersion = null;
}

CommonInterface.prototype = {
onLoad : function()
{
//load interface
	window.onresize = g_common.onResize;
	for (var i=0; i<g_common.aInterface.length; i++) {
		if (g_common.aInterface[i].onLoad) {
			g_common.aInterface[i].onLoad();
		}
	}

},
onResize : function(e)
{
	for (var i=0; i<g_common.aInterface.length; i++) {
		if (g_common.aInterface[i].onResize) {
			g_common.aInterface[i].onResize(e);
		}
	}
},
registInterface : function(i)
{
	g_common.aInterface.push(i);
},
parseUA : function()
{
	var ua = navigator.userAgent.toLowerCase();
	var browser, version, i;
	browser = version = "";
	if (ua.indexOf("mac") != -1) {
		g_common._os = "mac";
		//if (ua.indexOf("mac os x") == -1)
	}
	else {
		if (ua.indexOf("win") != -1) g_common._os = "win";
	}
	var reg = new RegExp("\s*([0-9.]+)");
	if (ua.indexOf("safari") != -1) {
		browser = "safari";
	}
	if (ua.indexOf("opera") != -1) {
		browser = "opera";
		var m = ua.substring(i+5).match(reg);
		version = m[1];
		if (parseInt(version) < 7) browser = "";
	}
	else if ((i = ua.indexOf("msie")) != -1) {
		if (g_common._os == "win") {
			browser = "ie";
			var m = ua.substring(i+5).match(reg);
			version = m[1];
			if (parseInt(version) < 5) browser = "";
		}
	}
	else if ((i = ua.indexOf("netscape")) != -1) {
		browser = "nn";
		var m = ua.substring(i+8).match(reg);
		version = m[1];
		if (parseInt(version) < 7) browser = "";
	}
	else if (ua.indexOf("gecko") != -1) browser = "gecko";
	g_common._browser = browser;
	g_common._version = version;
},
writeFlash : function()
{
	var attrHtml = "";
	var paramHtml = "";
	var embedHtml = "";
	var movie = "";
	for(var i=0; i<arguments.length; i++) {
		var str = arguments[i];
		var j = str.indexOf("=");
		var name = str.substr(0,j);
		var value = str.substr(j+1);
		switch (name) {
		case "id":
		case "class":
		case "style":
		case "width":
		case "height":
		case "hspace":
		case "vspace":
		case "align":
		case "declare":
		case "wmode":
			attrHtml += name+'="'+value+'" ';
			break;
		case "movie":
			movie = value;
			break;
		default:
			paramHtml += '<param name="'+name+'" value="'+value+'" />';
			break;
		}
		if (name == 'id') name = 'name';
		if (name != 'movie') embedHtml += name+'="'+value+'" ';
	}
	paramHtml += '<param name="movie" value="'+movie+'" />';
	paramHtml += '<embed src="'+movie+'" '+embedHtml+' type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />';

	var html = '<object '+attrHtml+' classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"';
	html += ' codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab">';
	html += paramHtml+'</object>';
	document.write(html);
},
isValidFlash : function(major,minor,rev)
{
	if (!this.flashVersion) {
		this.flashVersion = new FlashPlayerVersion();
	}
	return this.flashVersion.isValid(major,minor,rev);
},
pageTracker : function(url)
{
	/*if (location.hostname == 'ni-korea.jp') {
		_uacct = "UA-1319017-1";
		urchinTracker(url);
	}*/
}
};
function writeln_ex(str)
{
	str = str.replace(/%3C/gi, "<");
	str = str.replace(/%3E/gi, ">");
	str = str.replace(/%26/g, "&");
	document.writeln(str);
}
var g_common = new CommonInterface();
g_common.parseUA();
addEventHandler(window, "load", g_common.onLoad);
	
	
/**
 Cookie Object
*****************************/
var Cookie = {
	get : function(_cookieName) {
		var cookieList = document.cookie.split(";");
		var cookieValue = "";
		for (i = 0; i < cookieList.length; i++) {
			if (cookieList[i].indexOf(_cookieName+"=") > -1) {
				if (cookieList[i].split("=")[0].replace(/\s/g,"") == _cookieName) {
					cookieValue = decodeURIComponent(cookieList[i].split("=")[1]);
					break;
				}
			}
		}
		return cookieValue;
	},
	set : function(_name, _value, _days, _path, _domain) {
		if (_name!=undefined) {
			if (_value==undefined) _value = "";
			if (_days==undefined) _days = 365;
			if (_path==undefined) _path = "/";
			//try { if (_domain==undefined) _domain = location.hostname; } catch(e) { }
			var d = new Date();
			d.setDate(d.getDate()+_days);
			var s = "";
			s += _name+"="+encodeURIComponent(_value) + ";";
			s += "expires=" + d.toGMTString() + ";";
			s += "path=" + _path + ";";
			if (_domain!=undefined) {
				s += "domain=" + _domain + ";";
			}
			//alert(s);
			document.cookie = s;
		}
	}
}	

