/*********************************************************/
window.uaAncId="g_navi";
this.naviArr = new Array("g_navi_home", "g_navi_tv", "g_navi_net", "g_navi_phone", "g_navi_entry", "g_navi_support");
this.uaNaviOutLag=700;
/*********************************************************/
this.uaMoniTimeId=null;
this.uaNaviOutFunc="uaHideAll";
this.curImgName = "_cur.";
/*********************************************************/
function uaSearchAnc(e){
	var parent = uaGetElement(e);
	while(parent){
		if(parent.id==window.uaAncId){
			return true;
		}
		parent = parent.parentNode;
	}
//	uaLagOut();
	uaHideAll();
}
/*********************************************************/
function uaGetElement(evt){
	evt = (evt) ? evt : ((window.event) ? event : null);
	return (evt.target) ? evt.target : evt.srcElement;
}
/*********************************************************/
function uaLagOut(){
//	this.uaMoniTimeId = setTimeout(this.uaNaviOutFunc+"()", this.uaNaviOutLag);
}
/*********************************************************/
function uaHideAll(str){
	clearTimeout(stid);
	delElem = null;
	var len = this.naviArr.length;
	for(var i=0; i<len; i++){
		if(str && this.naviArr[i]+"sub"==str) continue;
		var obj = document.getElementById(this.naviArr[i]+"sub");
		if(obj){
			obj.style.visibility="hidden";
			var navi = document.getElementById(this.naviArr[i]);
			if(navi){
				uaOvr(navi, false)
			}
		}
	}
}
/*********************************************************/
function uaShowSubNavi(pObj){
	try{
		uaHideAll(pObj.id+'sub');
		var obj = document.getElementById(pObj.id+'sub');
		if(obj){
				obj.style.visibility="visible";
				uaOvr(pObj, true);
		}
	}catch(e){
	}
}
/*********************************************************/
function uaSearchCurImg(){
	var len = document.images.length;
	for(var i=0; i<len; i++){
		var srcStr = document.images[i].src;
		var idx = srcStr.indexOf("_cur.");
		var sidx = srcStr.lastIndexOf("/");
		if(idx>-1){
			this.curImgName = srcStr.substring(sidx+1, idx);
			break;
		}
	}
}
/*********************************************************/
function initNavi(){
	uaSearchCurImg();
	var len = this.naviArr.length;
	for(var i=0; i<len; i++){
		var nhdr = document.getElementById(this.naviArr[i]);
		if(nhdr){
			nhdr.onmouseover = function(){
				showDelay(this);
				clearTimeout(uaMoniTimeId);
			}
//			nhdr.onmouseout = uaSearchAnc;
		}
		var obj = document.getElementById(this.naviArr[i]+"sub");
		if(obj){
			obj.onmouseover = function(){
				clearTimeout(uaMoniTimeId);
			}
//			obj.onmouseout = uaSearchAnc;
		}
	}
	document.body.onmousemove = uaSearchAnc;
}
/*********************************************************/
var delElem;
var stid;
function showDelay(elem){
	delElem = elem;
	stid = setTimeout(showDelayAct, 400);
}
function showDelayAct(){
	uaShowSubNavi(delElem);
}
/*********************************************************/
function uaOvr(pObj, pIsOn){
	var imgs = pObj.getElementsByTagName("img");
	if(imgs.length<1) return false;
	var img = imgs[0];
	img.src = uaImgOvrReplace(img.src, pIsOn);
}
/*********************************************************/
function uaImgOvrReplace(pSrc, pIsOvr){
	var srcStr = pSrc;
	if(pIsOvr){
		if(srcStr.indexOf("_ovr")>-1){
			return srcStr;
		}
		if(srcStr.indexOf(this.curImgName)>-1){
			srcStr = uaReplace(srcStr, "_cur.gif", "_ovr.gif");
			srcStr = uaReplace(srcStr, "_cur.jpg", "_ovr.jpg");
			srcStr = uaReplace(srcStr, "_cur.png", "_ovr.png");
		}else{
			srcStr = uaReplace(srcStr, ".gif", "_ovr.gif");
			srcStr = uaReplace(srcStr, ".jpg", "_ovr.jpg");
			srcStr = uaReplace(srcStr, ".png", "_ovr.png");
		}
	}else{
		if(srcStr.indexOf(this.curImgName)>-1){
			srcStr = uaReplace(srcStr, "_ovr.gif", "_cur.gif");
			srcStr = uaReplace(srcStr, "_ovr.jpg", "_cur.jpg");
			srcStr = uaReplace(srcStr, "_ovr.png", "_cur.png");
		}else{
			srcStr = uaReplace(srcStr, "_ovr.gif", ".gif");
			srcStr = uaReplace(srcStr, "_ovr.jpg", ".jpg");
			srcStr = uaReplace(srcStr, "_ovr.png", ".png");
		}
	}
	return srcStr;
}
/*********************************************************/
function uaReplace(pStr, pKey, pAlt){
	return pStr.split(pKey).join(pAlt);
}





/**
 * @since 2006/08/01
 * @version 1.0
 */
function UaRollover(){
}
UaRollover.prototype = {
	initialize:function(clses){
		var len = clses.length;
		this.storedImg = new Array();
		var elems = new Array();
	
		for(var k=0; k<len; k++){
			elems = elems.concat(this.getElementsByClassName("img", clses[k]));
			elems = elems.concat(this.getElementsByClassName("input", clses[k]));
		}

		len = elems.length;
		for(var i=0; i<len; i++){

			var elem = elems[i];
			var imgSrc = elem.src;

			if(imgSrc.indexOf("_cur.")>-1){
				continue;
			}
			var ovrStr = this.imgOvrReplace(imgSrc, true)
			this.storedImg[imgSrc] = new Image();
			this.storedImg[imgSrc].src = ovrStr;

			elem.ins = this;
			elem.onmouseover = this.mouseOverEvent;
			elem.onmouseout = this.mouseOutEvent;

		}
	},
	getElementsByClassName:function(pTagName, pClassName){
		var res = new Array();
		var tags = document.getElementsByTagName(pTagName);
		var len = tags.length;
		for(var i=0; i<len; i++){
			var classes = tags[i].className;
			if(classes.indexOf(pClassName)>-1){
				res[res.length] = tags[i];
			}
		}
		return res;
	},
	mouseOverEvent:function (){
		this.src = this.ins.imgOvrReplace(this.src, true);
	},
	mouseOutEvent:function(){
		this.src = this.ins.imgOvrReplace(this.src, false);
	},
	imgOvrReplace:function(pSrc, pIsOvr){
		var srcStr = pSrc;
		if(pIsOvr){
			if(srcStr.indexOf("_ovr")>-1){
				return srcStr;
			}
			srcStr = this.strReplace(srcStr, ".gif", "_ovr.gif");
			srcStr = this.strReplace(srcStr, ".jpg", "_ovr.jpg");
			srcStr = this.strReplace(srcStr, ".png", "_ovr.png");
		}else{
			srcStr = this.strReplace(srcStr, "_ovr.gif", ".gif");
			srcStr = this.strReplace(srcStr, "_ovr.jpg", ".jpg");
			srcStr = this.strReplace(srcStr, "_ovr.png", ".png");
		}
		return srcStr;
	},
	strReplace:function (pStr, pKey, pAlt){
		return pStr.split(pKey).join(pAlt);
	}
}


/**********************************************************
* 
*/
var uaRvr = new UaRollover();


function uaRO(){
	uaRvr.initialize(arguments);
}

