/* ************************************************************************
	ÀÛ¼ºÀÚ     : 
	¿¬¶ôÃ³     : 
	ÀÛ¼ºÀÏ     : 2008.10.26
	ÃÖÁ¾¼öÁ¤ÀÏ : 2008.10.26
************************************************************************ */

	var TKM_lib_common = Class.create();

	TKM_lib_common.prototype =
	{
		initialize: function()
		{
		},

		//-----------------------------------------------------------------------------
		// ÇªÅÍ ÆÐ¹Ð¸®
		// @»ç¿ë¹ý : TKM.family('list_id')
		//-----------------------------------------------------------------------------
		family: function( child_obj )
		{
			var c_obj = $( child_obj );
			
			if( c_obj.style.display == "none" ) c_obj.show();
			else                                c_obj.hide();
			
		},

		//-----------------------------------------------------------------------------
		// ÀÚµ¿ ÅÇ ( usage: INPUTÀÇ onkeyup="TKM.autoTab(this);" )
		// ¿µ¹®ÀÌ³ª ¼ýÀÚ¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ÇÑ±ÛÀº Á¶ÇÕÀÔ·Â¹æ½Ä¶§¹®¿¡ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
		// Element
		// @return : void
		//-----------------------------------------------------------------------------
		autoTab: function( obj, obj_next )
		{
			try
			{
				if( obj.value.length >= obj.maxLength )
				{
					if( obj_next == null ) Field.focus( $( obj ).next( "INPUT" ) );
					else                   Field.focus( $( obj_next )            );
				}
			}
			catch( e )
			{
			}
		},

		//-----------------------------------------------------------------------------
		// ºÎµå·¯¿î ½ºÅ©·Ñ
		// @»ç¿ë¹ý : onclick="TKM.scrollToElement('id_element');return false;"
		// Element(id of Element), duration(´ÜÀ§:0.1ÃÊ)
		// @return : void
		//-----------------------------------------------------------------------------
		scrollToElement: function( obj, speed )
		{
			var pos = obj == null ? null : $( obj ).cumulativeOffset(); // ¹®¼­¿¡¼­ÀÇ top, left
			var dOffsets = document.viewport.getScrollOffsets();        // º¸ÀÌ´Â ¿µ¿ªÀÇ ½ºÅ©·Ñ top, left

			clearInterval( this.timer_scroll );
			this.timer_scroll = null;

			this.duration_scroll = speed == null ? 500 : speed * 100;
			this.trans_from = dOffsets.top;
			this.trans_to = pos == null ? 0 : pos.top - 5;
			this.trans_time = new Date().getTime();
			this.timer_scroll = setInterval( this.transScroll.bind(this), Math.round( 1000 / 50 ) );
		},

		transScroll: function()
		{
			var time = new Date().getTime();

			if ( time < this.trans_time + this.duration_scroll )
			{
				var t = time - this.trans_time;
				var b = this.trans_from;
				var c = this.trans_to - this.trans_from;
				var d = this.duration_scroll;

				//Fx.Transitions.sineInOut
				this.trans_now = -c/4 * (Math.cos(Math.PI*t/d) - 1) + b;
			}
			else
			{
				clearInterval( this.timer_scroll );
				this.timer_scroll = null;
				this.trans_now = this.trans_to;
			}
			window.scrollTo( 0, this.trans_now );
		},

		//-----------------------------------------------------------------------------
		// ºÎµå·¯¿î ½ºÅ©·Ñ (ÆäÀÌÁö ¸Ç À§·Î)
		// @»ç¿ë¹ý : onclick="TKM.scrollToTop();"
		// duration(´ÜÀ§:0.1ÃÊ)
		// @return : void
		//-----------------------------------------------------------------------------
		scrollToTop: function( speed )
		{
			this.scrollToElement( null, speed );
		},

		//-----------------------------------------------------------------------------
		// ÆË¾÷Ã¢ ¶ç¿ì±â
		// @»ç¿ë¹ý : TKM.openPopup( "", { width: 400, height: 500, scroll: 0, top: 100, left: 100, name: "name_popup" } );
		// °¢ ¿É¼ÇÀÇ ±âº»°ªÀº ¾Æ·¡ ÂüÁ¶
		// @return : ÆË¾÷Ã¢°´Ã¼
		//-----------------------------------------------------------------------------
		openPopup: function( url, option )
		{
			var obj_option = option == null ? {} : option;

			if( url               == null ) url               = "";
			if( obj_option.width  == null ) obj_option.width  = screen.availWidth;
			if( obj_option.height == null ) obj_option.height = screen.availHeight;
			if( obj_option.scroll == null ) obj_option.scroll = 0;
			if( obj_option.top    == null ) obj_option.top    = ( screen.availHeight - obj_option.height ) / 4;
			if( obj_option.left   == null ) obj_option.left   = ( screen.availWidth  - obj_option.width  ) / 4;
			if( obj_option.name   == null ) obj_option.name   = "";
			if( obj_option.errMsg == null ) obj_option.errMsg = "Please disable popup blocking!";

			var newWindow = window.open( url, obj_option.name, "width=" + obj_option.width + ",height=" + obj_option.height + ",scrollbars=" + obj_option.scroll + ",toolbar=0,menubars=0,locationbar=0,historybar=0,statusbar=0,resizable=0,left=" + obj_option.left + ",top=" + obj_option.top + ",channelmode=no,titlebar=no", false );

			if( !newWindow )
			{
				alert( obj_option.errMsg );
				return false;
			}
			newWindow.focus();

			return newWindow;
		},

		//-----------------------------------------------------------------------------
		// ÄíÅ°¿¡ ±âÇÑ¸¸·á °ª ¼ÂÆÃ(ÀÚ½ÄÃ¢)
		// @»ç¿ë¹ý : TKM.setCookie( "name_project", "value_project", 1 );
		// String(key), String(value), Number(±âÇÑÀÏ¼ö,days)
		// @return : void
		//-----------------------------------------------------------------------------
		setCookie: function( name, value, expiredays )
		{
			var todayDate = new Date();
			todayDate.setDate( todayDate.getDate() + expiredays );
			document.cookie = name + "=" + escape( value ) + "; path=/; expires=" + todayDate.toGMTString() + ";";
		},

		//-----------------------------------------------------------------------------
		// ÄíÅ° °ª ÃßÃâ(ºÎ¸ðÃ¢)
		// @»ç¿ë¹ý : TKM.getCookie( "name_project" );
		// °¢ ¿É¼ÇÀÇ ±âº»°ªÀº ¾Æ·¡ ÂüÁ¶
		// @return : String(ÀÔ·ÂµÈ key-¸¸·áµÇÁö ¾ÊÀº-¿¡ ÇØ´çÇÏ´Â °ª)
		//-----------------------------------------------------------------------------
		getCookie: function( name )
		{
			var nameOfCookie = name + "=";
			var x = 0;
			while ( x <= document.cookie.length )
			{
				var y = (x+nameOfCookie.length);
				if ( document.cookie.substring( x, y ) == nameOfCookie )
				{
					if ( (endOfCookie=document.cookie.indexOf( ";", y )) == -1 )
						endOfCookie = document.cookie.length;
					return unescape( document.cookie.substring( y, endOfCookie ) );
				}
				x = document.cookie.indexOf( " ", x ) + 1;
				if ( x == 0 )
					break;
			}
			return "";
		}
	}

	var TKM = new TKM_lib_common();


	//-----------------------------------------------------------------------------
	// µû¶ó´Ù´Ï´Â ·¹ÀÌ¾î
	// @»ç¿ë¹ý : var wfl1 = new TKM_lib_follow_layer( "id_layer", 40, 150, 10 );
	// Element(id of Element), È­¸é»ó °íÁ¤(¸ñÇ¥) À§Ä¡(top), »óÇÑ À§Ä¡(top), duration(´ÜÀ§:0.1ÃÊ)
	// @return : void          ½ºÅ©·Ñ µÇ¾úÀ» ¶§ÀÇ À§Ä¡,     ½ºÅ©·ÑÀÌ µÇÁö ¾Ê¾ÒÀ» ¶§ÀÇ À§Ä¡
	//-----------------------------------------------------------------------------
	var TKM_lib_follow_layer = Class.create();

	TKM_lib_follow_layer.prototype =
	{
		initialize: function( obj, top_target, top_limit, speed )
		{
			this.duration       = speed == null ? 1000 : speed * 100;
			this.top_target     = top_target;
			this.top_limit      = top_limit;
			this.obj_follow     = $( obj );

			this.obj_wrapper    = this.obj_follow.up(1);                                                              // Ãß°¡ : º»¹®¿µ¿ªÀÇ element
			var pos_objWrapper  = this.obj_wrapper.cumulativeOffset();                                                // Ãß°¡ : º»¹®¿µ¿ªÀÇ ÁÂÇ¥
			this.obj_range      = this.obj_wrapper.offsetHeight + pos_objWrapper.top - this.obj_follow.offsetHeight;  // Ãß°¡ : objÀÇ ¹®¼­ ³» topÀÇ ÃÖ´ë°ª

			this.followingLayer();

			Event.observe( window, "scroll", this.followingLayer.bindAsEventListener( this ) );
		},

		followingLayer: function()
		{
			var pos_view = this.obj_follow.viewportOffset();                        // ´«¿¡ º¸ÀÌ´Â ¿µ¿ª¿¡¼­ÀÇ top, left
			var pos_cmlt = this.obj_follow.cumulativeOffset();                      // ¹®¼­¿¡¼­ÀÇ top, left
			var dOffsets = document.viewport.getScrollOffsets();                    // ´«¿¡ º¸ÀÌ´Â ¿µ¿ªÀÇ scrollÀÇ top, left

			if( pos_view.top != this.top_target )                                   // scroll ¹ß»ý ½Ã
			{
				clearInterval( this.timer );

				this.timer = null;
				this.from  = pos_cmlt.top;
				this.to    = dOffsets.top + this.top_target < this.top_limit ? this.top_limit : dOffsets.top + this.top_target;
				this.time  = new Date().getTime();
				this.timer = setInterval( this.transFollow.bind( this ), Math.round( 1000 / 50 ) );
			}
		},

		transFollow: function()
		{
			var time = new Date().getTime();
			var pos_cmlt = this.obj_follow.cumulativeOffset();                      // Ãß°¡
			var dOffsets = document.viewport.getScrollOffsets();                    // Ãß°¡

			if( time < this.time + this.duration )
			{
				var t = time - this.time;
				var b = this.from;
				var c = this.to - this.from;
				var d = this.duration;

				this.now = -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;                  // Fx.Transitions.sineInOut
			}
			else
			{
				clearInterval( this.timer );

				this.timer = null;
				this.now = this.to;
			}

			if( pos_cmlt.top < this.obj_range || pos_cmlt.top > dOffsets.top )      // Ãß°¡ : pos_cmlt.top > dOffsets.top ½ºÅ©·ÑÀÌ À§·Î ¿Ã¶ó °¥ °æ¿ì
				this.obj_follow.setStyle( { top: this.now + "px" } );
		}
	}

	//-----------------------------------------------------------------------------
	// È°¼ºÈ­µÈ ÇÃ·¡½Ã »ðÀÔ
	// @»ç¿ë¹ý
	//    var player1_bgm = new FlashObject( "/flash/playerskin.swf", 140, 46 );
	//    player1_bgm.id        = "pbgm";
	//    player1_bgm.wmode     = "transparent";
	//    player1_bgm.style_str = "margin:0px;"
	//    player1_bgm.Render();
	//-----------------------------------------------------------------------------
	function activeSwf( src, width, height, transparent )
	{
		object = '';
		object += '<object type="application/x-shockwave-flash" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" id="param" width="' + width + '" height="' + height + '">';
		object += '<param name="movie" value="' + src + '">';

		if( transparent == 'transparent' ) object += '<param name="wmode" Value="Transparent">';

		object += '<embed src="' + src + '" quality="high" ';

		if( transparent == 'transparent' ) object += ' wmode="transparent" ';

		object += ' bgcolor="#ffffff" menu="false" width="' + width + '" height="' + height + '" swliveconnect="true" id="param" name="param" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>';
		object += '</object>';

		document.writeln( object );

		/* FlashObject( path, width, height )

//      var header01 = new FlashObject( "../../image/swf/shop_header.swf", 990, 160 );
//          header01.id        = "header01";
//          header01.wmode     = "transparent";
//          header01.style_str = "margin:0;"
//          header01.Render();

		var m_movie  = path;
		var m_width  = width;
		var m_height = height;

		this.id      = "";
		this.wmode   = "";
		this.quality = "high";
		this.loop    = "true";
		this.menu    = "true";
		this.allowScriptAccess = "sameDomain";
		this.FlashVars = "";
		this.scale     = "";
		this.salign    = "";
		this.align     = "";
		this.style_str = "";
		this.bgcolor   = "";

		this.Render = function( objSpace )
		{
			var html;

			html = "<object classid='clsid:d47cdb6e-ae6d-11cf-96b8-444554540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0' width='" + m_width + "' height='" + m_height + "'";
			if( this.id        != "" ) html += " id='"    + this.id        + "'";
			if( this.style_str != "" ) html += " style='" + this.style_str + "'";
			html += ">";

			html += "<param name='allowScriptAccess' value='" + this.allowScriptAccess + "' />";
			html += "<param name='movie'             value='" + m_movie                + "' />";
			html += "<param name='menu'              value='" + this.menu              + "' />";
			html += "<param name='quality'           value='" + this.quality           + "' />";
			html += "<param name='loop'              value='" + this.loop              + "' />";
			if( this.wmode     != "" ) html += "<param name='wmode'     value='" + this.wmode     + "' />";
			if( this.FlashVars != "" ) html += "<param name='FlashVars' value='" + this.FlashVars + "' />";
			if( this.scale     != "" ) html += "<param name='scale'     value='" + this.scale     + "' />";
			if( this.salign    != "" ) html += "<param name='salign'    value='" + this.salign    + "' />";

			html += "<embed src='" + m_movie + "' quality='" + this.quality + "' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='" + m_width + "' height='" + m_height + "'";
			html += " allowScriptAccess='" + this.allowScriptAccess + "' loop='" + this.loop + "'";
			if( this.wmode     != "" ) html += " wmode='"     + this.wmode     + "'";
			if( this.FlashVars != "" ) html += " FlashVars='" + this.FlashVars + "'";
			if( this.scale     != "" ) html += " scale='"     + this.scale     + "'";
			if( this.salign    != "" ) html += " salign='"    + this.salign    + "'";
			if( this.align     != "" ) html += " align='"     + this.align     + "'";
			if( this.style_str != "" ) html += " style='"     + this.style_str + "'";
			if( this.bgcolor   != "" ) html += " bgcolor='"   + this.bgcolor   + "'";
			html += " /></object>";

			if( objSpace == null ) document.write( html );
			else                   objSpace.innerHTML = html;
		}*/
	}

	//-----------------------------------------------------------------------------
	// ¼¿·ºÆ® ¹Ú½º ½ºÅ² Àû¿ë
	// @»ç¿ë¹ý
	//  new TKM_SD.Selectbox('element_id', {
	//      fontSize      : 11,
	//      lineSize      : 13
	//  });
	//-----------------------------------------------------------------------------
	if ( typeof TKM_SD == "undefined" ) {
		var TKM_SD = new Object();

		TKM_SD.$  = function( id ) {
			return document.getElementById( id );
		}
		TKM_SD.$$ = function() {
			var obj = function() {
				if( this.__const )
					this.__const.apply( this,arguments );
			}
			TKM_SD.extend( obj.prototype,arguments[0] );

			return obj;
		}
		TKM_SD.$c = function( tag ) {
			return document.createElement( tag );
		}
		TKM_SD.extend = function( obj ) {
			for( var i=0; i<arguments.length; i++ ) {
				for( var x in arguments[i] )
					obj[x]=arguments[i][x];
			}

			return obj;
		}
		TKM_SD.lim = function( val,min,max ) {
			return Math.max( Math.min( val,max ), min );
		}
	}

	TKM_SD.Selectbox = TKM_SD.$$({
		__const : function( id ) {
			var t = this;
			var s = t._source = TKM_SD.$( id );
			var sd_width,
				sd_height,
				sd_fontSize,
				sd_lineSize,
				sd_FLPadding,
				sd_listSize,
				sd_skinActive,
				sd_skinFormat,
				sd_borderActive,
				sd_borderSet,
				sd_txtElColor,
				sd_txtElBgColor,
				sd_optTxtColor,
				sd_optBgColor,
				sd_optTxtHover,
				sd_optBgHover,
				sd_optTxtPadding;

			if( s.className.match("SD_STYLE01") ) {
				sd_width  = 126;
				sd_height = 17;
				sd_optTxtPadding = "4px 5px 3px";

			}
			if( s.className.match("SD_STYLE06") ) {
				//sd_width         = 68;
				sd_skinFormat    = "img url";
			}

			if( !sd_width )         sd_width         = s.offsetWidth -2;
			if( !sd_height )        sd_height        = 15;
			if( !sd_fontSize )      sd_fontSize      = 11;
			if( !sd_lineSize )      sd_lineSize      = 13;
			if( !sd_FLPadding )     sd_FLPadding     = 2;
			if( !sd_listSize )      sd_listSize      = 100;
			if( !sd_skinActive )    sd_skinActive    = false;
			if( !sd_skinFormat )    sd_skinFormat    = "/en/images/common/bd/btn/select01.gif";
			if( !sd_borderActive )  sd_borderActive  = true;
			if( !sd_borderSet )     sd_borderSet     = "1px solid #cccccc";
			if( !sd_txtElColor )    sd_txtElColor    = "#909090";
			if( !sd_txtElBgColor )  sd_txtElBgColor  = "#ffffff";
			if( !sd_optTxtColor )   sd_optTxtColor   = "#999999";
			if( !sd_optBgColor )    sd_optBgColor    = "#ffffff";
			if( !sd_optTxtHover )   sd_optTxtHover   = "#ffffff";
			if( !sd_optBgHover )    sd_optBgHover    = "#cccccc";
			if( !sd_optTxtPadding ) sd_optTxtPadding = "2px 4px";

			t.options = TKM_SD.extend({
				width         : sd_width,           //s.offsetWidth;
				height        : sd_height,          //s.offsetHeight;
				fontSize      : sd_fontSize,
				lineSize      : sd_lineSize,
				FLPadding     : sd_FLPadding,       // FLPadding 2 = optTxtPadding 0 4px
				listSize      : sd_listSize,
				skinActive    : sd_skinActive,
				skinFormat    : sd_skinFormat,      //"./images/sbox_%s.gif";
				borderActive  : sd_borderActive,
				borderSet     : sd_borderSet,
				txtElColor    : sd_txtElColor,
				txtElBgColor  : sd_txtElBgColor,
				optTxtColor   : sd_optTxtColor,
				optBgColor    : sd_optBgColor,
				optTxtHover   : sd_optTxtHover,
				optBgHover    : sd_optBgHover,
				optTxtPadding : sd_optTxtPadding
			}, arguments[1] )

			var o = t.options;
			var e = t._element = TKM_SD.$c( "div" );
			var c = e.appendChild( TKM_SD.$c( "div" ) );
			var p = { left:0, top:0 };

			{
				var _o = t._source;
				do{
					p.left += _o.offsetLeft;
					p.top  += _o.offsetTop;
					_o     =  _o.offsetParent;
				}while( _o )
			}

			s.parentNode.insertBefore( e, s );
			s.style.display = "none";

			if ( o.borderActive )
				e.style.border = o.borderSet;

			with( e.style ) {
				top        = p.top + "px";
				left       = p.left + "px";
				width      = o.width + "px";
				height     = o.height + "px";       // height = ( o.height-2 ) + "px";
				background = o.txtElBgColor;
				lineHeight  = o.lineSize + "px";
			}

			with( c.style ) {
				width    = o.width + "px";
				height   = o.height + "px";         // height   = ( o.height-2 ) + "px";
				fontSize = o.fontSize + "px";
				overflow = "hidden";
				cursor   = "pointer";
			}

			c.onmouseover = function() {
				if( !t._list_el.parentNode || !t._list_el.parentNode.tagName )
					document.body.appendChild( t._list_el );
			}
			c.onmousedown = function(e) {
				t.onmousedown.call( t, e || window.event );
			}
			c.onmouseup = function() {
				t.onmouseup.apply( t, [] );
			}

			var b = c.appendChild( TKM_SD.$c( "div" ) );

			with( b.style ) {
				background         = "no-repeat url( " + o.skinFormat.replace( '%s','bt' ) + " ) 50% 50%";
				b.style.cssFloat   = "right";
				b.style.styleFloat = "right";
				height             = "100%";
			}
			t._txt_el = c.appendChild( TKM_SD.$c( "div" ) );
			with( t._txt_el ) {
				appendChild( document.createTextNode( s.options[s.selectedIndex].text ) );
				with( style ) {
					height      = o.fontSize + "px";
					lineHeight  = o.lineSize + "px";
					overflow    = "hidden";
					marginTop   = Math.max( Math.floor( ( o.height-offsetHeight )/2 ),0 ) + "px";
					marginLeft  = marginTop;
					paddingLeft = o.FLPadding + "px";
					color       = o.txtElColor;
				}
			}
			c.appendChild( TKM_SD.$c( "div" ) ).style.clear = "both";

			var im;
			( im = TKM_SD.$c( "img" ) ).onload = function() {
				b.style.width = im.width + "px";
			}
			im.src = o.skinFormat.replace( "%s","bt" );
			t._list_el = TKM_SD.$c( "div" );

			with( t._list_el.style ) {
				position   = "absolute";
				border     = o.borderSet;
				display    = "none";
				oveflow    = "auto";
				fontSize   = o.fontSize + "px";
				lineHeight = o.lineSize + "px";
			}
			t._list_el.onmousedown = function(e) {
				t.onscrollbar.call( t, e || window.event );
			}
			t._event_onmousedown = function(e) {
				t.onmousedown.call( t, e || window.event );
			}
			t.paint();
		},
		onmousedown : function(e) {
			if( this._list_el.style.display == "none" ) {
				var t = this;
				var p = { left:0, top:0 }

				{
					var o = t._element;
					while( o.offsetParent ) {
						p.left   += o.offsetLeft;
						p.top    += o.offsetTop;
						o        =  o.offsetParent;
					}
				}

				this.paint();
				this._list_el.style.display = "";

				var pos_el_top;
				var pos_dm;

				pos_el_top = p.top + this._element.offsetHeight - 1;

				if( document.body.scrollHeight < document.body.offsetHeight ) {
					pos_dm = document.body.offsetHeight - pos_el_top;
				} else{
					pos_dm = document.body.scrollHeight - pos_el_top;
				}

				if ( pos_dm < this._list_el.offsetHeight ) {
					pos_el_top = p.top - this._list_el.offsetHeight + 1;
				}

				if ( this._list_el.offsetWidth < this._element.offsetWidth )
					this._list_el.style.width = this._element.offsetWidth + "px";

				with( this._list_el.style ) {
					width  = this._element.offsetWidth - 2 + "px";      // ¸®½ºÆ® width
					top    = pos_el_top + "px";
					left   = p.left + "px";
					zIndex = 9999;
				}
			}else{
				this._list_el.style.display = "none";

				with( document ) {
					try{
						detachEvent( "onmousedown", this._event_onmousedown );
					}catch(e) {
						removeEventListener( "mousedown", this._event_onmousedown, false );
					}
				}
			}
			try{
				e.preventDefault();
				e.stopPropagation();
			}catch(e) {
				e.returnValue = false;
				e.cancelBubble = true;
			}
		},
		onmouseup : function() {
			if ( this._list_el.style.display != "none" ) {
				with( document ) {
					try{
						attachEvent( "onmousedown", this._event_onmousedown );
					}catch(e) {
						addEventListener( "mousedown", this._event_onmousedown );
					}
				}
			}
		},
		onselect : function(e) {
			var el = e.target || e.srcElement;
			var o  = this.options;
			var s  = this._source;

			s.selectedIndex = el._index;

			this._txt_el.firstChild.nodeValue = s.options[s.selectedIndex].text;
			this.onmousedown();
			if ( this._source.onchange )
				this._source.onchange();
		},
		onover : function(e) {
			var el = e.target || e.srcElement;
			var c  = el.parentNode.childNodes;
			var i  = el._index;
			var o = this.options;

			for( var _i = 0; _i<c.length; _i++ ) {
				c[_i].style.color = o.optTxtColor;
				c[_i].style.background = o.optBgColor;
			}
			el.style.color = o.optTxtHover;
			el.style.background = o.optBgHover;
		},
		onscrollbar : function(e) {
			try{
				e.preventDefault();
				e.stopPropagation();
			}catch(e) {
				e.returnValue  = false;
				e.cancelBubble = true;
			}
		},
		paint : function() {
			var o = this.options;
			var s = this._source;
			var op;

			this._list_el.innerHTML = "";
			this._list_el.style.width = "";
			this._list_el.style.height = "";

			for( var i = 0; i < s.options.length; i++ ) {
				( op = this._makeOption( s.options[i].value, s.options[i].text ) )._index = i;

				with( op.style ) {
					padding = o.optTxtPadding;
					cursor = "pointer";
					color = ( i == this._source.selectedIndex ) ? o.optTxtHover : o.optTxtColor;
					background = ( i == this._source.selectedIndex ) ? o.optBgHover : o.optBgColor;
				}
				this._list_el.appendChild( op );
			}

			var old = this._list_el.style.display;

			this._list_el.style.display = "block";

			if ( ( this._list_el.offsetHeight-2 ) > op.offsetHeight * o.listSize )
				this._list_el.style.height = op.offsetHeight*o.listSize;

			this._list_el.style.display = old;
		},
		_makeOption : function( value, text ) {
			var o = TKM_SD.$c( "div" );
			var t = this;

			o._value = value;
			o.appendChild( document.createTextNode( text ) );
			o.onmouseover = function(e) {
				t.onover.call( t, e || window.event )
			}
			o.onmousedown = function(e) {
				t.onselect.call( t ,e || window.event )
			}

			return o;
		}
	});


	function menuActive( dep_1, dep_2 ){
		
		var pageBg  = $( "c_headerBgDefault" );
		var gnv     = $( "m_menu" );

		if( pageBg.className == "c_headerBgDefault" ) pageBg.className = "c_headerBg0" + dep_1;
		gnv.className = "mMenu_bg0" + dep_1;

		for( var i=0; i<3; i++ ){
			if( i == dep_1 ){
				var gnv_dep = $( "m_menu0" + dep_1 );

				if( gnv_dep.style.display == "none" )
					Effect.toggle( gnv_dep, 'slide', {duration:0.3});	//menuT_c.show();
				
			}else{
				var gnv_dep = $( "m_menu0" + i );
				gnv_dep.hide();

			}
		}

		if( dep_2 != null ){
			// top dep menu active

			var gnv_dep_img = $( "m_menu0" + dep_1 ).down("img", dep_2 );

			gnv_dep_img.src = gnv_dep_img.src.substr( 0, gnv_dep_img.src.indexOf(".gif") ) + "on.gif";
			gnv_dep_img.onmouseover = "";
			gnv_dep_img.onmouseout = "";

			// left menu active
			var lnv_img     = $( "l_menu" ).down("img", dep_2 );

			lnv_img.src = lnv_img.src.substr( 0, lnv_img.src.indexOf(".gif") ) + "on.gif";
			lnv_img.onmouseover = "";
			lnv_img.onmouseout = "";
		}

	}


	function tabEvent( obj, obj_arr ) {
		var p_obj = obj.parentNode;
		var c_img  = p_obj.getElementsByTagName( "IMG" );

		for( var i=0; i<c_img.length; i++ ) {

			if( i == obj_arr ) {
				c_img[i].src = c_img[i].src.match( "on.gif" ) ? c_img[i].src : c_img[i].src.substr( 0, c_img[i].src.indexOf(".gif") ) + "on.gif" ;
				$(  p_obj.id + "_" + i ).show();

			} else {
				c_img[i].src = c_img[i].src.match( "on.gif" ) ? c_img[i].src.substr( 0, c_img[i].src.indexOf("on.gif") ) + ".gif" : c_img[i].src ;
				$(  p_obj.id + "_" + i ).hide();
			}
		}
	}



	function sideMenu( m_num, s_num ){
		var dep1_img	= $$( "LI.parent_dep" )[ m_num ].down( "IMG", 0 );
		var dep2_img	= $$( "LI.dep" )[ s_num ].down( "IMG", 0 );

		dep1_img.src = dep1_img.src.substr( 0, dep1_img.src.indexOf( ".gif" ) ) + "on.gif";

		dep2_img.onmouseover = "";
		dep2_img.onmouseout = "";
		dep2_img.src = dep2_img.src.substr( 0, dep2_img.src.indexOf( ".gif" ) ) + "on.gif";
	}
