/* charset="Shift_JIS"
 Title		: DynAmic-html for Multiple browsers support Extensible POpup service
		《ダイナミックHTML マルチブラウザサポート 拡張ポップアップサービス》
 Copyright	: Hiro Konda
 Varsion	: 0.4.0
 Created	: 2004/09/15
 Last Modified	: 2004/11/09
 for Use in NN 4+ ,NS 6+ ,IE 4+ ,Opera 6+, Safari 1+
*/

/* ============ Grobal Variable Work Area (Do Not Edit.. ) ============ */

var w = window;
var d = document;
var nv = navigator;
var win = (nv.platform && (nv.platform.indexOf('Win')>=0)) ? 1 : 0;
var mac = (nv.platform && (nv.platform == "MacPPC")) ? 1 : 0;
var dom = (d.getElementById) ? 1 : 0;
var nn4 = (d.layers) ? 1 : 0;
var ie4 = (d.all && !w.opera && !dom) ? 1 : 0;
var ie5 = (d.all && !w.opera && dom) ? 1 : 0;
var op6 = (w.opera && !d.plugins) ? 1 : 0;
var op7 = (w.opera && d.plugins) ? 1 : 0;
var saf = (nv.userAgent.indexOf('AppleWebKit')>=0) ? 1 : 0; 
var gec = (nv.product && nv.product == "Gecko" && !saf) ? 1 : 0;
var layObj = new Object;// layer Object
var layNum = '';	// layer Number (String)
var layNumMax = 0;	// layer Number Max (Number)
var destDefTips = 1;	// elements title and alt tooltips (off= 0,on = 1)
var destIdArg = new Array();
var destTagArg = new Array();
var layAX = 0;		// relative Add X pos (px)
var layAY = 0;		// relative Add Y pos (px)
var layALL = 0;		// Make ALL layers (Not NN 4)

/* ============ Debug (Do Not Edit...) ============ */

var onDebug = 0;// Debug Setting (off= 0,on = 1)
var layDX = 0;
var layDY = 0;
var layDW = 0;
var layDH = 0;

/* ============ Layer Settings  ============ */

var layId = 'tip';	// layer Id
var layRX = 0;		// Relative X pos (px)
var layRY = 0;		// Relative Y pos (px)
var baseDir = '';	// Directory for Use images
//var baseDir = (location.protocol == "file:") ? "file:\/\/\/Users\/konda\/web\/konda\/web_resoce\/damepo\/" : "http:\/\/www.minc.ne.jp\/~konda\/web_resoce\/damepo\/";

/* ============ Layer Settings (Not NN 4) ============ */

var layCls = '';	// Layer ClassName
var layCssTxt = '';	// Layer CssText
//var layCssTxt = 'position:absolute;top:0px;left:-1000px;z-index:1024;visibility:hidden;';

/* ============ Layer Settings (NN 4 Only) ============ */

var layNNH = '<layer id="';
var layNNF = '" visibility="hide" z-index="1024" left="0" top="0"><\/layer>';
//var layNNF = ' width="284" bgcolor="#ffffff" background="'+baseDir+'image\/bg_alpha_in.gif" visibility="hide" z-index="1024" left="0" top="0"><\/layer>';
var layNNinB = '<table border="1" bgcolor="#ffffff" width="284" cellspacing="0" cellpadding="6"><tr><td>';
var layNNinA = '<\/td><\/tr><\/table>';

/* ============ Window Events ============ */

/* Add Events for Netscape 4.x */
if(nn4){
	var nW = w.innerWidth; var nH = w.innerHeight;
	w.captureEvents(Event.RESIZE);
	w.onresize = onresizeNN4;
	d.captureEvents(Event.MOUSEMOVE);
//	w.onload = function(){}
}else{
	w.onload = function(){
		disableOrgTips(destTagArg,destIdArg);
		fixDxImg('myPic',fixDumySrc);
	}
}
if(onDebug){ w.onerror = callErrMsg;}

/* ============ Functions ============ */

/* create ToolTips for 'SCRIPT' element */
function createTips(setInsCls,spMsgArray){
var layersDiv = '';
var setParam = '';
var setInStyle = '';
var debugBox = (onDebug) ? '<div id="debugBox" style="position:absolute;top:0;left:0;z-index:4096"><form action="#" name="frmDebug" id="frmDebug" style="margin:0"><p><input name="txtDebug" id="txtDebug" type="text" value="" size="42" \/><\/p><\/form><\/div>' : '';
var dumyOp6 = '';
var i = 0;
	if(nn4){
		layersDiv = layNNH+layId+layNNF;
	}else if(ie4 || dom){
		if(setInsCls.indexOf(':') != -1){ setInStyle = setInsCls; setInsCls = '';}
		if(op6){ layALL = 1; dumyOp6 = '<div id="dumyOp6" style="position:absolute;top:100%;left:100%;z-index:1000"><\/div>';}
		layersDiv = (layALL) ? '' : '<div id="'+layId+'"';
		if(!(layCls == '' && setInsCls == '')){ setParam += (setInsCls != '') ? ' class="'+setInsCls+'"' : ' class="'+layCls+'"';}
		if(!(layCssTxt == '' && setInStyle == '')){ setParam += ' style="'+layCssTxt+setInStyle+'"';}
		setParam += '>';
		if(layALL){
			layNum = '0'; layNumMax = spMsgArray.length;
			for(i=0;i<layNumMax;i++){ layersDiv += '<div id="'+layId+i+'"'+setParam+spMsgArray[i]+'<\/div>';}
		}else{
			layersDiv += setParam + '<\/div>';
		}
	}
	with(d){ open();write(layersDiv+dumyOp6+debugBox);close();}
	if(ie4 || dom){
		layObj = (ie4) ? d.all(layId+layNum) : d.getElementById(layId+layNum);
		if(layALL){ allHideTips(layNumMax);}else{ hideTips();}
	}
}

/* Show and RreWriteble Messege ToolTips */
function showTips(e,sMsg,num,ax,ay){

	layAX = (ax != '') ? ax : 0; layAY = (ay != '') ? ay : 0;
	if(nn4){
		layObj = d.layers[layId];
		with(layObj.document){ open('text/html');write(layNNinB+sMsg+layNNinA);close();}
		layObj.visibility = "SHOW";
	}else if(ie4 || dom){
		if(layALL){ layNum = num; if(op6){ allHideTips(layNumMax);}}
		layObj = (ie4) ? d.all(layId+layNum) : d.getElementById(layId+layNum);
		if(!layALL){ layObj.innerHTML = sMsg+'\n';}
		layObj.style.visibility = "visible";
	}
	if(onDebug){ getCurrentBoxSize(layObj);}
	moveTips(e);
}

/* mouseMove ToolTips */
function moveTips(e){
var x = 0; var y = 0;
	if(ie4 || dom){
		if(ie5){ x = e.clientX + d.body.scrollLeft; y = e.clientY + d.body.scrollTop;
		}else if(ie4){ x = e.clientX + d.body.scrollLeft; y = e.clientY + d.body.scrollTop;
		}else if(op6){ x = e.clientX; y = e.clientY;
		}else{ x = e.pageX; y = e.pageY;}
		with(layObj.style){ left = (x + layRX + layAX)+'px'; top = (y + layRY + layAY)+'px';}
	}else if(nn4){
		x = e.pageX; y = e.pageY;
		layObj.moveTo(x + layRX + layAX, y + layRY + layAY);
	}
	// Debug Data from
	if(onDebug){ LayDX = x; LayDY = y; d.frmDebug.txtDebug.value = 'Layer x,y ('+LayDX+','+LayDY+') w,h ('+layDW+','+layDH+')';}
}

/* mouseOver ToolTips */
function overTips(){
	hideTips();
}

/* Hide ToolTips */
function hideTips(){
	if(ie4 || dom){
		with(layObj.style){ visibility = "hidden"; left = '-1000px';}
	}else if(nn4){
		with(layObj){ visibility = "HIDE"; moveTo(0,0); document.open(); document.write(''); document.close();}
	}
}

/* All Hide ToolTips */
function allHideTips(maxNum){
var i = 0;
var copyObj = layObj;
	for(i=0;maxNum>i;i++){ layObj = (ie4) ? d.all(layId+i) : d.getElementById(layId+i); hideTips();}
	layObj = copyObj;
}

/* Get Current BoxSize (for Use Debug) */
function getCurrentBoxSize(obj){
var cS; var cW = 0; var cH = 0;
	if(d.defaultView){
		cS = d.defaultView.getComputedStyle(obj,null);
		cW = cS.getPropertyValue('width'); cH = cS.getPropertyValue('height');
	}else if(nn4){
		cW = obj.clip.width; cH = obj.clip.height;
	}else if(dom){
		if(obj.offsetWidth){// IE 5+, OP6+
			cW = obj.offsetWidth; cH = obj.offsetHeight;
		}else if(obj.currentStyle){
			cS = obj.currentStyle; cW = cS.width; cH = cS.height;
		}
	}
	layDW = (cW == 'auto' || cW == null) ? 0 : parseInt(cW); layDH = (cH == 'auto' || cH == null) ? 0 : parseInt(cH);
}

/* Decode Tags */
function codeRestore(spMsgArray,spFlgArray){
var repB = new Array('%3C','%3E','%26');
var rep = ''; var i = 0; var j = 0;
	for(i = 0; spFlgArray.length > i; i++){
		if(spFlgArray[i] == 1){
			for(j=0; repB.length>j; j++){ rep = unescape(repB[j]); while(spMsgArray[i].indexOf(repB[j])>=0){ spMsgArray[i] = spMsgArray[i].replace(repB[j],rep);}}
		}else if(spFlgArray[i] == 2){// Unicode
			if(nn4){ spMsgArray[i] = 'This Web browser is not supported Unicode encoding.<br />Please use to Unicode support Web browser...';
			}else{ while(spMsgArray[i].indexOf("@")>=0){ spMsgArray[i] = spMsgArray[i].replace("@",'u30');} spMsgArray[i] = unescape(spMsgArray[i]);}
		}//alert(spMsgArray[i]);
	}
}

/* Encode Tags */
function codeEnc(spMsg,spFlg){
var repA = new Array('<','>','&');
var repB = new Array('%3C','%3E','%26');
var rep = ''; var i = 0;
	if(spFlg == 1){
		for(i=0; repB.length>i; i++){ while(spMsg.indexOf(repA[i])>=0){ spMsg = spMsg.replace(repA[i],repB[i]);}}
	}else if(spFlgArray[i] == 2){// Unicode
		if(nn4){ spMsg = 'Please use to Unicode 16 support Web browser...';
		}else{ spMsg = escape(spMsg); while(spMsg.indexOf('u30')>=0){ spMsg = spMsg.replace('u30','@');}}
	}
	return spMsg;
}

function disableOrgTips(tagsArg,idsArg){
var i = 0; var j = 0;
var tagName = '';
var tags;
var ids;
	if(!destDefTips) return;
	if(d.getElementsByTagName || ie4){
		if(tagsArg.length > 0){
			for (i=0;i<tagsArg.length;i++){
				tagName = tagsArg[i];
				tags = (ie4) ? d.all.tags(tagName) : d.getElementsByTagName(tagName);
				if(tags.length < 1){ continue;}
				for(j=0;j<tags.length;j++){
					if(tagName == 'AREA' || tagName == 'IMG'){ tags.item(j).alt = '';}
					tags.item(j).title = '';
				}
	 		}
		}
		if(idsArg.length > 0){
			for(j=0; j<idsArg.length;j++){
				ids = (ie4) ? d.all(idsArg[j]) : d.getElementById(idsArg[j]);
				ids.title = ''; ids.alt='';
			}
		}
	}
}

function locJump(href,target,param){
var loc = w;
	if(target == '_blank'){
		w.open(href,target,param);
	}else{
		if(target == '_top'){ loc = w.top; }else if(target == '_self'){ loc = w.self;}
		loc.location.href = href;
	}
}

/* To DirectX filter (IE 5.5+) */
function fixDxImg(isId,dumySrc){
	/*@cc_on
	var elm = d.getElementById(isId);
	var realSrc = elm.src;
	@if ((@_jscript_version >= 5.5) && (@_win32 == true))
	try {
		var ax = new ActiveXObject("DXImageTransform.Microsoft.AlphaImageLoader.1");
		ax = '';// Release ActiveX Object
		elm.src = dumySrc;
		elm.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + realSrc + "',sizingMethod='scale')";
	} catch (e) {
//		 w.alert('DXImage(filter) '+e);
	} finally { }
	@end @*/
}

function callErrMsg(arg1,arg2,arg3){ w.alert("Err Discriptions : "+arg1+"\nErr File Name : "+arg2+"\nErr List Number : "+arg3); return true;}
function onresizeNN4(){ if(nn4){ if(nW != w.innerWidth || nH != w.innerHeight) location.reload();}}
function nullPo(){}
