var closeTime;
var active;
var timeDef=400;
brver = 1;

var ua_str = navigator.userAgent;
var MSIEIndex = ua_str.indexOf("MSIE");
var OSIndex = ua_str.indexOf("Win");
var MSIEver = ua_str.substring((MSIEIndex + 5),(MSIEIndex + 6));
if (document.layers) brver=0;
if (document.all && (MSIEIndex > -1 && MSIEver < 5.5)) brver=0;
//if (OSIndex == -1 && MSIEIndex > -1) brver=0;
if ((ua_str.indexOf("Mac")>-1) && (ua_str.indexOf("IE")>-1)) {
	macie=1;
	brver=0;
}


function showHideLayers(layer) {
	if (macie!=1) {
		if (CPflag) {
			clearTimeout(closeTime);
			var i;
			active=(layer+'_mn');
			for (i=0; i<allMenus.length; i++) { changeVisibility(allMenus[i],'hidden'); }
			if (layer!="") changeVisibility(active,"Visible");
		}
	}
}

function hideMenu(){
	clearTimeout(closeTime);
    closeTime = setTimeout("showHideLayers('')", timeDef);
	return closeTime;
}

function changeLAYERPOSbelow1() {
if ((brver==1)&&(!document.layers)) {
	if (posFixed!=1) {
		for (i=0; i<allMenusT.length; i++) {
			var layerRef=allMenusT[i]+"_t";
			if (document.all) {
				if(document.all(layerRef)) {
					var layer=allMenus[i];
					LT=getTOP(layerRef) + getHEIGHT(layerRef)+offstLT;
					LX=getLEFT(layerRef)+offstLX;
					changeLeft(layer,LX);
					changeTop(layer,LT);
				}
			} else if (document.getElementById) {
				if (document.getElementById(layerRef)) {
					var layer=allMenus[i];
					LT=getTOP(layerRef) + getHEIGHT(layerRef)+offstLT;
					LX=getLEFT(layerRef)+offstLX;
					changeLeft(layer,LX);
					changeTop(layer,LT);
				}
			}
		}
	}
	CPflag=1;
}
}

function puttopmenu() {
  if (brver==1) {
	makemenu();

	for(i=0;i<mnName.length;i++){
		n1=mnName[i][0];
		n2=mnName[i][1];
		n3=mnName[i][2];

		htmlSTR = (((menuSRC.replace(/{n1}/g,n1)).replace(/{n2}/g,n2)).replace(/{n3}/g,n3)).replace(/{mnWidth}/g,mnWidth);
		htmlSTR += htmlSTRTE;

		htmlSTRS += htmlSTR;
	}

	htmlSTRS += htmlSTRE;
	document.write(htmlSTRS);
  }
}

function putdropmenu() {
if (brver==1) {
	makelayer();
	menuW2 = menuW - 4;

	dropSRCh  = '<DIV id=\"{n1}_mn\" name=\"{n1}_mn\" onmouseover=\"showHideLayers(\'{n1}\')\" style=\"visibility: hidden; position: absolute; z-index:10; {fixedST}\" onmouseout=\"hideMenu()\">';
	dropSRCh += '<table border="0" cellspacing="0" cellpadding="0" class="mn">';
	dropSRCh += '<tr><td><table cellspacing="1" cellpadding="2" width="100%">';

	dropSRC1 = '<tr><td width=\"{menuW}\" align=\"center\"><img src=\"/img/99.gif\" width=\"{menuW2}\" height=\"1\"><br><img src=\"/img/ff.gif\" width=\"{menuW2}\" height=\"1\"></td></tr>';
	dropSRC2 = '<tr><td width=\"{menuW}\" align=\"center\"><img src=\"/img/help.gif\"></td></tr>';
	dropSRC3 = '<tr><td width=\"{menuW}\" onmouseover=\"this.bgColor=\'' + actCOLOR + '\'; showHideLayers(\'{n1}\')\" onclick=\"document.location.href=\'{n3}\'\" onmouseout=\"this.bgColor=\'\'; hideMenu()\">';
	dropSRC4 = '<a onMouseOver=\"showHideLayers(\'{n1}\')\" onMouseOut=\"hideMenu()\" href=\"{n3}\" class=\"nnn\">{n2}</a></td></tr>';
	dropSRC5 = '<img src=\"/img/00.gif\" width=\"10\" height=\"1\">'

	dropSRCm = '</table></td><td bgcolor=\"#cccccc\"><img src=\"/img/00.gif\" width=\"1\" height=\"1\"></td></tr><tr><td bgcolor=\"#cccccc\" colspan=\"2\"><img src=\"/img/00.gif\" width=\"1\" height=\"1\"></td></tr></table></DIV>\n\n';

	fixedST='';
	htmlSTRh='';
	for(i=0;i<dmName.length;i++){
		n1=dmName[i][0][0];

		if (posFixed==1) {
			fixedST ='left:'+(startbaseMenu+(baseMenuW*i))+'px; '+'top:'+menuT+'px;';
		}

		htmlSTRh += (dropSRCh.replace(/{n1}/g,n1)).replace(/{fixedST}/g,fixedST);

		for(j=0;j<dmName[i].length;j++){
			if (dmName[i][j][1]=="---") {
				htmlSTR =(dropSRC1.replace(/{menuW}/g,menuW)).replace(/{menuW2}/g,menuW2);
			} else if (dmName[i][j][1]=="+++") {
				htmlSTR =dropSRC2.replace(/{menuW}/g,menuW);
			} else {
				n2=dmName[i][j][1];
				n3=dmName[i][j][2];

				htmlSTR =((dropSRC3.replace(/{n1}/g,n1)).replace(/{n3}/g,n3)).replace(/{menuW}/g,menuW);
				if (dmName[i][j][3]) {
					htmlSTR += '<img src=\"/img/' + dmName[i][j][3] + '\">' 
				} else {
					htmlSTR += dropSRC5;
				}
				htmlSTR += ((dropSRC4.replace(/{n1}/g,n1)).replace(/{n2}/g,n2)).replace(/{n3}/g,n3);
			}
			htmlSTRh += htmlSTR;
		}

		htmlSTRh += dropSRCm;
	}
	document.write(htmlSTRh);
}
}

function makemenu() {
//	htmlSTR = ((document.forms[F1].elements[F2].value).replace(/^\r\n/g,'')).replace(/\r\n$/m,'')
	htmlSTR = (rootSTR.replace(/^\r\n/g,'')).replace(/\r\n$/g,'');
	mnName = new Array();

	dn1=htmlSTR.split("\r\n");

	for(i=0;i<dn1.length;i++){
		mnName[i]=new Array();
		mnName[i]=dn1[i].split(",");
	}
/*
// debug routine
	alert(htmlSTR)
	for(i=0;i<mnName.length;i++){
		for(j=0;j<mnName[i].length;j++){
				document.write("["+i+"]"+"["+j+"]   "+mnName[i][j]+"<br>");
		}
		document.write("<br>");
	}
*/
}

function makelayer() {

//	htmlStr = ((document.forms[F1].elements[F2].value).replace(/^\r\n/g,'')).replace(/:\r\n/g,':')
	htmlStr = (menuSTR.replace(/^\r\n/g,'')).replace(/:\r\n/g,':')

	dmName = new Array();
	dn2 = new Array();

	dn1=htmlStr.split(":::");
	for(i=0;i<dn1.length;i++){
		dmName[i]=new Array();
		dn2='';
		dn2=dn1[i].split("\r\n");
		for(j=0;j<dn2.length-1;j++){			//区切り行分を-1
			dmName[i][j]=new Array();
			dmName[i][j]=dn2[j].split(",");
		}
	}

/*
// debug routine
	for(i=0;i<dmName.length;i++){
		for(j=0;j<dmName[i].length;j++){
			for(k=0;k<dmName[i][j].length;k++){
				document.write("["+i+"]"+"["+j+"]"+"["+k+"]  "+dmName[i][j][k]+"<br>");
			}
		}
		document.write("<br>");
	}
*/
}



/* 汎用レイヤー操作関数 */

function changeTop(layer,tdat) {
	if (document.all)
		eval("document.all['" + layer + "'].style.top = '" + tdat + "'");
	else if (document.getElementById)
		eval("document.getElementById('" + layer + "').style.top = '" + tdat + "'");
	else if (document.layers)
		eval("document.layers['" + layer + "'].top = '" + tdat + "'");
}

function changeVisibility(layerRef,state) {
    if (document.all)
      eval("document.all['" + layerRef + "'].style.visibility = '" + state + "'");
    else if (document.getElementById)
      eval("document.getElementById('" + layerRef + "').style.visibility = '" + state + "'");
    else if (document.layers)
      eval("document.layers['" + layerRef + "'].visibility = '" + state + "'");
}

function getVisibility(layerRef) {
    if (document.all)
      return eval("document.all['" + layerRef + "'].style.visibility");
    else if (document.getElementById)
      return eval("document.getElementById('" + layerRef + "').style.visibility");
    else if (document.layers)
	if (eval("document.layers['" + layerRef + "'].visibility") == "hide") {
		return "hidden"; 
	} else return "visible";
}


function getTOP(layName){
	if(document.all)                          //e4,e5,e6,o6用
		return document.all(layName).offsetTop
	else if(document.getElementById){          //n6,m1用
		return (document.getElementById(layName).offsetTop!="")
		?parseInt(document.getElementById(layName).offsetTop):""
	} else if(document.layers)                  //n4用
		return document.layers[layName].pageY

	else return ""
}

function getHEIGHT(layName){
	if(document.all){                           //e4,e5,e6,o6用
		return  document.all(layName).offsetHeight
	} else if(document.getElementById){         //n6,m1用
		var t = document.getElementById(layName).offsetHeight
		return parseInt(t)
	} else  if(document.layers){                //n4用
		return document.layers[layName].top + document.layers[layName].clip.height
	}
}

function getLEFT(layName){
	if(document.all)                     //e4,e5,e6,o6用
		return document.all(layName).offsetLeft
	else if(document.getElementById)     //n6,m1用
		return parseInt(document.getElementById(layName).offsetLeft)
	else if(document.layers)             //n4用
		return document.layers[layName].pageX
	else return ""
}

function changeLeft(layer,tdat) {
	if (document.all)
		eval("document.all['" + layer + "'].style.left = '" + tdat + "'");
	else if (document.getElementById)
		eval("document.getElementById('" + layer + "').style.left = '" + tdat + "'");
	else if (document.layers)
		eval("document.layers['" + layer + "'].left = '" + tdat + "'");
}

