function createElement(tagName, text, properties) {
	var el = document.createElement(tagName);
	
	el.appendChild(document.createTextNode(text));
	
	if(properties){
		Object.extend(el, properties);
	}
	return el;
};

function addSwf(element, fUrl, fwidth, fheight) {
	var menu_flash = '<object id="bbb" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=4,0,2,0" width="'+ fwidth +'" height="'+ fheight +'"><param name="movie" value="'+ fUrl +'"><embed name="bbb" src="'+ fUrl +'" type="application/x-shockwave-flash" width="'+ fwidth +'" height="'+ fheight +'" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" quality="best" play="true"></object>';
	var el =$(element);
	el.update(menu_flash);
}

function insertAfter(newElement , targetElememt) {
	var parent = targetElememt.parentNode;
	
	if(parent.lastChild == targetElememt){
		parent.appendChild(newElement);
	}else{
		parent.insertBefore(newElement, targetElement.nextSibling);
	}
}

var MainMenuControl = Class.create( {
	
	initialize : function() {
		this.visibleSubMenu = null;
		this.activeButton = null;
	},
	
	init : function(menus) {
		var size = menus.length;
		for(var i = 0; i < size; i++) {
			if(menus[i] != null) {
				var btnList = menus[i].getElementsByTagName("a");
				if(btnList.length > 0) {
					var button = btnList[0];
					
					button.onmouseover = this.overHandler.bindAsEventListener(this, button);
					button.onfocus = this.overHandler.bindAsEventListener(this, button);
				}
			}
		}
	},

	overHandler: function(evt, button){
		var img = button.getElementsByTagName("img")[0];
		img.src = img.src.replace("off.gif", "on.gif");
		
		if(this.activeButton && this.activeButton != button) {
			
			img = this.activeButton.getElementsByTagName("img")[0];
			img.src = img.src.replace("on.gif", "off.gif");
			
			if(this.visibleSubMenu){
				this.visibleSubMenu.style.visibility = "hidden";
			}
		}

		var subMenu = button.parentNode.getElementsByTagName("ul")[0];
		if(subMenu) {
			subMenu.style.visibility = "visible";
			this.visibleSubMenu = subMenu;
		}
		
		this.activeButton = button;
	}
});

function popupInit() {
	var linkList = document.getElementsByTagName("a");
	
	for(var i = 0; i < linkList.length; i++) {
		var winNm = linkList[i].getAttribute("winnm");
		
		if(winNm != null) {
			linkList[i].onclick = popupOpen.bindAsEventListener(linkList[i], linkList[i].href, winNm, linkList[i].getAttribute("popup"));
		}
	}
	
}

function popupOpen(evt, href, winNm, popup) {
	window.open(href, winNm, popup);
	return false;
}

function loadSwf(plnFlash, flashSrc, imgSrc) {
	if(FlashDetect.installed) {
		addSwf(plnFlash, flashSrc, '724', '108');
	}else{
		var el = $(plnFlash);
		el.update("<img src=\"" + imgSrc + "\" alt=\"\" />");
	}
}

function documentOnload(func) {
	Event.observe(window, 'load', func, false);	
}

/**
 * ÀÚ½Ä ³ëµåÁß Ã¹ ¹øÂ° ¿¤¸®¸ÕÆ®¸¦ °¡Á®¿Â´Ù.
 * ÅØ½ºÆ® ³ëµå Á¦¿Ü
 */
function childFirstElement(obj) {
	var el = $(obj);
	var nodes = el.childNodes;
	var size = nodes.length;
	var firstElement = null;
	for(var i = 0; i < size; i++) {
		if(nodes[i].nodeType == 1) {
			firstElement = nodes[i];
			break;
		}
	}

	return firstElement;
}

function elementsByTagNameFirst(obj, tagName) {
	var el = $(obj);
	var elList = el.getElementsByTagName(tagName);
	
	if(elList.length > 0) {
		return elList[0];
	} else {
		return null;
	}
}

//Event.observe(window, 'load', popupInit, false);