//¹è³Ê 270x70
var banner_img = "<a href='http://domain.gabia.com/service/free_service.php'><img src='http://www.gabia.com/images/banner/2009/090715_remocon.gif'></a>";
var Remote = {
	// º¯¼ö ÃÊ±âÈ­
	initialize: function()
	{
		this.remote_body = "";
		this.search_html = "";
		this.whois_html = "";
		this.price_html = "";
		this.mydom_html = "";
		this.cart_html = "";
		this.help_html = "";
		this.eventX = 0;
		this.eventY = 0;

		this.xmlDoc;

		// ¸®¸ðÄÜ ÀüÃ¼Æ²
		remote_body  = "\n";
		remote_body += "<table width='315' border='0' cellspacing='0' cellpadding='0' style='position:absolute; z-index:20'>\n";
		remote_body += "	<tr>\n";
		remote_body += "		<td width='245' height='56' id=\"remoconTop\"><img src='http://domain.gabia.com/images/blank.gif' width='245' height='55'></td>\n";
		remote_body += "		<td width='70' style='padding-top:22'><img src='http://domain.gabia.com/images/remocon/btn_help.gif' border='0' onClick='Remote.onHelpView();' style='cursor:pointer;margin-right:5'><img src='http://domain.gabia.com/images/remocon/btn_close.gif' border='0' onClick='Remote.onRemoteHide();' style='cursor:pointer;'></td>\n";
		remote_body += "	</tr>\n";
		remote_body += "	<tr>\n";
		remote_body += "		<td height='55' colspan='2' style='padding: 0 6 0 4'>\n";
		remote_body += "			<table width='100%' border='0' align='center' cellpadding='0' cellspacing='0'>\n";
		remote_body += "				<tr>\n";
		remote_body += "					<td><img src='http://domain.gabia.com/images/remocon/btn1_on.gif' border='0' id='remote_menu1' onClick='javascript: Remote.onRemoteMenu(1);' style='cursor:pointer;'></td>\n";
		remote_body += "					<td><img src='http://domain.gabia.com/images/remocon/btn2_off.gif' border='0' id='remote_menu2' onClick='javascript: Remote.onRemoteMenu(2);' style='cursor:pointer;'></td>\n";
		remote_body += "					<td><img src='http://domain.gabia.com/images/remocon/btn3_off.gif' border='0' id='remote_menu3' onClick='javascript: Remote.onRemoteMenu(3);' style='cursor:pointer;'></td>\n";
		remote_body += "					<td><img src='http://domain.gabia.com/images/remocon/btn4_off.gif' border='0' id='remote_menu4' onClick='javascript: Remote.onRemoteMenu(4);' style='cursor:pointer;'></td>\n";
		remote_body += "					<td><img src='http://domain.gabia.com/images/remocon/btn5_off.gif' border='0' id='remote_menu5' onClick='javascript: Remote.onRemoteMenu(5);' style='cursor:pointer;'></td>\n";
		remote_body += "				</tr>\n";
		remote_body += "			</table>\n";
		remote_body += "		</td>\n";
		remote_body += "	</tr>\n";
		remote_body += "		<td colspan='2' style='padding: 0 11 0 9'><div id='RemoteContents'></div></td>\n";
		remote_body += "	</tr>\n";
		remote_body += "</table>\n";
		remote_body += "<object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0' width='315' height='430' id='main' align='middle'><param name='wmode' value='transparent'><param name='allowScriptAccess' value='sameDomain' /><param name='movie' value='http://domain.gabia.com/images/remocon/remocon.swf' /><param name='quality' value='high' /><embed src='http://domain.gabia.com/images/remocon/remocon.swf' quality='high' wmode='transparent' bgcolor='#ffffff' width='315' height='430' name='main' align='middle' allowScriptAccess='sameDomain' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' /></object>\n";

		// µµ¸ÞÀÎ °Ë»ö
		search_html  = "<table width='100%' border='0' cellspacing='0' cellpadding='0'>\n";
		search_html += "<tr>\n";
		search_html += "	<td><img src='http://domain.gabia.com/images/remocon/t_img01.gif' width='295' height='60'></td>\n";
		search_html += "</tr>\n";
		search_html += "</table>\n";
		search_html += "<form name='remote_regist_domain' method='post' action='http://domain.gabia.com/regist/regist_step1.php' onSubmit='return Remote.onRemoteCheckDomain();'>\n";
		search_html += "<input type='hidden' name='gtld[]' value=''>\n";
		search_html += "<input type='hidden' name='gtld[]' value=''>\n";
		search_html += "<input type='hidden' name='gtld[]' value=''>\n";
		search_html += "<input type='hidden' name='gtld[]' value=''>\n";
		search_html += "<table width='270' height='56' border='0' align='center' cellpadding='0' cellspacing='1' bgcolor='ECECEC'>\n";
		search_html += "<tr>\n";
		search_html += "	<td bgcolor='F4F4F4'>\n";
		search_html += "		<table width='100%'  border='0' cellspacing='0' cellpadding='0'>\n";
		search_html += "		<tr>\n";
		search_html += "			<td width='60' align='right'style='padding:0px 2px 0px 0px'><img src='http://domain.gabia.com/images/remocon/c08.gif' width='39' height='18' align='absmiddle'></td>\n";
		search_html += "			<td width='139'><input type='input' name='new_domain' style='width:131; height:18' class='remote' value='¿¹) gabia.com' onClick='Remote.onEmptyValue(this);'></td>\n";
		search_html += "			<td width='67'><input type='image' src='http://domain.gabia.com/images/remocon/c07.gif' border='0' align='absMiddle'></td>\n";
		search_html += "		</tr>\n";
		search_html += "		</table>\n";
		search_html += "	</td>\n";
		search_html += "</tr>\n";
		search_html += "</table>\n";
		search_html += "</form>\n";
		search_html += "<table width='100%'  border='0' cellspacing='0' cellpadding='0'>\n";
		search_html += "<tr><td height='9'></td></tr>\n";
		search_html += "<tr>\n";
		search_html += "	<td style='padding:0px 0px 0px 25px' class='remote_td01'>- ¿µ¹® ¹× ÇÑ±Û µµ¸ÞÀÎ °Ë»ö °¡´É<br>- µµ¸ÞÀÎ Á¾·ù¸¦ ÀÔ·ÂÇÏÁö ¾ÊÀ¸¸é ÁÖ¿äµµ¸ÞÀÎ¿¡ ´ëÇÑ<br>&nbsp; &nbsp;°Ë»ö°á°ú¸¦ Á¦°øÇØµå¸³´Ï´Ù.</td>\n";
		search_html += "</tr>\n";
		search_html += "</table>\n";
		search_html += "<br style='line-height:13px'>\n";
		search_html += "<center>"+ banner_img +"</center>\n";

		// Á¤º¸Á¶È¸
		whois_html  = "<table width='100%' border='0' cellspacing='0' cellpadding='0'>\n";
		whois_html += "<tr>\n";
		whois_html += "	<td><img src='http://domain.gabia.com/images/remocon/t_img02.gif' width='295' height='60'></td>\n";
		whois_html += "</tr>\n";
		whois_html += "</table>\n";
		whois_html += "<form name='frmWhois' method='post' onSubmit='return Remote.whois_domain_info();'>\n";
		whois_html += "<table width='270' height='56'  border='0' align='center' cellpadding='0' cellspacing='1' bgcolor='ECECEC'>\n";
		whois_html += "<tr>\n";
		whois_html += "	<td bgcolor='F4F4F4'>\n";
		whois_html += "		<table width='100%'  border='0' cellspacing='0' cellpadding='0'>\n";
		whois_html += "		<tr>\n";
		whois_html += "			<td width='60' align='right'style='padding:0px 2px 0px 0px'><img src='http://domain.gabia.com/images/remocon/c08.gif' width='39' height='18' align='absmiddle'></td>\n";
		whois_html += "			<td width='139'><input type='input' style='width:131; height:18' name='info_domain' id='info_domain' class='remote' value='¿¹) gabia.com' onClick='Remote.onEmptyValue(this);'></td>\n";
		whois_html += "			<td width='67'><img src='http://domain.gabia.com/images/remocon/c07.gif' align='absMiddle' border='0' style='cursor:pointer;' onClick='javascript: Remote.whois_domain_info();'></td>\n";
		whois_html += "		</tr>\n";
		whois_html += "		</table>\n";
		whois_html += "	</td>\n";
		whois_html += "</tr>\n";
		whois_html += "</table>\n";
		whois_html += "</form>\n";
		whois_html += "<table width='100%'  border='0' cellspacing='0' cellpadding='0'>\n";
		whois_html += "<tr><td height='9'></td></tr>\n";
		whois_html += "<tr>\n";
		whois_html += "	<td style='padding:0px 0px 0px 25px' class='remote_td01'>- www´Â Á¦¿ÜÇÏ°í ÀÔ·ÂÇØÁÖ¼¼¿ä.<br>&nbsp;&nbsp;ÀÔ·Â ¿¹) gabia.com, °¡ºñ¾Æ.com<br>- ³×ÀÓ¼­¹ö ¹× IP Á¤º¸ Á¶È¸ <a href='http://domain.gabia.com/regist/sch_whois/schwhois.php' class='green b'>[¹Ù·Î°¡±â]</a></td>\n";
		whois_html += "</tr>\n";
		whois_html += "</table>\n";
		whois_html += "<br style='line-height:13px'>\n";
		whois_html += "<center>"+ banner_img +"</center>\n";

		// °¡°ÝÁ¶È¸
		price_html  = "<table width='100%' border='0' cellspacing='0' cellpadding='0'>\n";
		price_html += "<tr>\n";
		price_html += "	<td><img src='http://domain.gabia.com/images/remocon/t_img03.gif' width='295' height='60'></td>\n";
		price_html += "</tr>\n";
		price_html += "</table>\n";
		price_html += "<table width='270' border='0' align='center' cellpadding='0' cellspacing='1'>\n";
		price_html += "<tr>\n";
		price_html += "	<td height='1'><img src='http://domain.gabia.com/images/remocon/c10_on.gif' border='0' OnClick='getDomCost(1);' id='cost_button1' style='cursor:pointer'><img src='http://domain.gabia.com/images/remocon/c11.gif' border='0' OnClick='getDomCost(2);' id='cost_button2' style='cursor:pointer'><img src='http://domain.gabia.com/images/remocon/c12.gif' border='0' OnClick='getDomCost(3);' id='cost_button3' style='cursor:pointer'></td>\n";
		price_html += "</tr>\n";
		price_html += "</table>\n";
		price_html += "<table width='270' height='90' border='0' align='center' cellpadding='0' cellspacing='1' bgcolor='ECECEC'>\n";
		price_html += "<tr>\n";
		price_html += "	<td align='center' valign='top' bgcolor='F4F4F4' style='padding:10px 0px 0px 0px'>\n";
		price_html += "		<table width='84%'  border='0' cellspacing='0' cellpadding='0'>\n";
		price_html += "		<tr>\n";
		price_html += "			<td width='60' height='22' align='right' class='remote_td02'><img src='http://domain.gabia.com/images/remocon/c13.gif' width='8' height='3' align='absmiddle'>Á¾·ù&nbsp;:&nbsp;</td>\n";
		price_html += "			<td>\n";
		price_html += "				<select name='domain_kind' id='domain_kind' style='width:153px; height:17px' class='remote' onChange='javascript: getPeriod(this.value);'>\n";
		price_html += "				</select>\n";
		price_html += "			</td>\n";
		price_html += "		</tr>\n";
		price_html += "		<tr>\n";
		price_html += "			<td height='22' align='right' class='remote_td02'><img src='http://domain.gabia.com/images/remocon/c13.gif' width='8' height='3' align='absmiddle'>±â°£&nbsp;:&nbsp;</td>\n";
		price_html += "			<td>\n";
		price_html += "				<select name='period' id='period' style='width:153px; height:17px' onChange='viewPrice(this.value);'>\n";
		price_html += "				</select>\n";
		price_html += "			</td>\n";
		price_html += "		</tr>\n";
		price_html += "		<tr>\n";
		price_html += "			<td height='22' align='right' class='remote_td02'><img src='http://domain.gabia.com/images/remocon/c13.gif' width='8' height='3' align='absmiddle'>°¡°Ý&nbsp;:&nbsp;</td>\n";
		price_html += "			<td class='remote_td01'><b><span id='view_dom_price' class='remote_td02'></span></b> (VAT º°µµ)</td>\n";
		price_html += "		</tr>\n";
		price_html += "		</table>\n";
		price_html += "	</td>\n";
		price_html += "</tr>\n";
		price_html += "</table>\n";
		price_html += "<br style='line-height:16px'>\n";
		price_html += "<center>"+ banner_img +"</center>\n";

		// ³» µµ¸ÞÀÎ
		mydom_html  = "<table width='100%' border='0' cellspacing='0' cellpadding='0'>\n";
		mydom_html += "<tr>\n";
		mydom_html += "	<td width='1'><img src='http://domain.gabia.com/images/remocon/t_img04.gif' width='195' height='60'></td>\n";
		mydom_html += "	<td valign='bottom' style='padding:0px 0px 7px 0px'><strong><span id='total_mydom'>0</span>°³</strong>&nbsp; <a href='http://domain.gabia.com/mydomain/mydomain_list.php'><img src='http://domain.gabia.com/images/remocon/c14.gif' width='53' height='16' border='0' align='absbottom' style='margin-bottom:2px'></a></td>\n";
		mydom_html += "\n";
		mydom_html += "</tr>\n";
		mydom_html += "</table>\n";
		mydom_html += "<table width='270' height='80' border='0' align='center' cellpadding='0' cellspacing='1' bgcolor='#ECECEC'>\n";
		mydom_html += "<tr>\n";
		mydom_html += "	<td align='center' valign='top' bgcolor='F4F4F4'>\n";
		mydom_html += "		<table width='100%' border='0' cellspacing='2' cellpadding='0' bgcolor='#ECECEC'>\n";
		mydom_html += "		<tr bgcolor='#DCDCDC'>\n";
		mydom_html += "			<td width='134' height='20' align='center'><strong>µµ¸ÞÀÎ</strong></td>\n";
		mydom_html += "			<td width='67' align='center'><strong>¸¸±âÀÏ</strong></td>\n";
		mydom_html += "			<td width='67' align='center'><strong>¿¬Àå½ÅÃ»</strong></td>\n";
		mydom_html += "		</tr>\n";
		mydom_html += "		</table>\n";
		mydom_html += "		<div style='width:270px; height:60px; overflow: auto;'>\n";
		mydom_html += "		<table width='100%' border='0' cellspacing='0' cellpadding='0'>\n";
		mydom_html += "		<tbody id='mydom_list_view'>\n";
		mydom_html += "		</tbody>\n";
		mydom_html += "		</table>\n";
		mydom_html += "		</div>\n";
		mydom_html += "	</td>\n";
		mydom_html += "</tr>\n";
		mydom_html += "</table>\n";
		mydom_html += "<table width='100%' border='0' cellspacing='0' cellpadding='0'>\n";
		mydom_html += "<tr>\n";
		mydom_html += "	<td height='40' style='padding:0px 0px 0px 20px' class='remote_td01'>- ÃÖ´ë 20°³ÀÇ ¸ñ·ÏÀÌ Á¦°øµË´Ï´Ù.</td>\n";
		mydom_html += "</tr>\n";
		mydom_html += "</table>\n";
		mydom_html += "<center>"+ banner_img +"</center>\n";
		mydom_html += "<form name='frmRemoconExt' method='post'>\n";
		mydom_html += "<input type='hidden' name='domainList'>\n";
		mydom_html += "</form>\n";

		// Àå¹Ù±¸´Ï
		cart_html  = "<table width='100%' border='0' cellpadding='0' cellspacing='0'>\n";
		cart_html += "<tr>\n";
		cart_html += "	<td width='1'><img src='http://domain.gabia.com/images/remocon/t_img05.gif' width='195' height='60'></td>\n";
		cart_html += "	<td valign='bottom' style='padding:0px 0px 7px 0px'><strong><span id='cartTotal'>0</span>°³</strong>&nbsp; <a href='http://domain.gabia.com/mydomain/mydomain_regist_cart.php'><img src='http://domain.gabia.com/images/remocon/c18.gif' width='50' height='30' border='0' align='absbottom' style='margin-bottom:2px'></a></td>\n";
		cart_html += "</tr>\n";
		cart_html += "</table>\n";
		cart_html += "<table width='270' height='80' border='0' align='center' cellpadding='0' cellspacing='1' bgcolor='ECECEC'>\n";
		cart_html += "<tr>\n";
		cart_html += "	<td valign='top' bgcolor='F4F4F4'>\n";
		cart_html += "		<table width='100%' border='0' cellspacing='2' cellpadding='0' bgcolor='#ECECEC'>\n";
		cart_html += "		<tr bgcolor='#DCDCDC'>\n";
		cart_html += "			<td width='190' height='20' align='center'><strong>µµ¸ÞÀÎ</strong></td>\n";
		cart_html += "			<td width='78' align='center'><strong>»èÁ¦</strong></td>\n";
		cart_html += "		</tr>\n";
		cart_html += "		</table>\n";
		cart_html += "		<div id='cart_domain_list' style='width:270px; height:60px; overflow: auto;'></div>\n";
		cart_html += "	</td>\n";
		cart_html += "</tr>\n";
		cart_html += "</table>\n";
		cart_html += "<table width='100%' border='0' cellspacing='0' cellpadding='0'>\n";
		cart_html += "<tr>\n";
		cart_html += "	<td height='40' style='padding:0px 0px 0px 20px;letter-spacing:-0.05em' class='remote_td01'>- µµ¸ÞÀÎÀ» µî·ÏÇÏ·Á¸é [Àå¹Ù±¸´Ï °¡±â] ¹öÆ°À» Å¬¸¯ÇÏ¼¼¿ä.</td>\n";
		cart_html += "</tr>\n";
		cart_html += "</table>\n";
		cart_html += "<center>"+ banner_img +"</center>\n";

		// µµ¿ò¸»
		help_html = "<iframe src='/inc/remote_help.php' width='295' height='274' frameborder='no' marginwidth='0' marginheight='0' topmargin='0' scrolling='auto'></iframe>\n";
	},

	// È­¸é¿¡ ¸®¸ðÄÜÀ» »Ñ·ÁÁØ´Ù.
	onRemoteShow: function()
	{
		//
		Remote.onRemoteHide();

		var DomainRemocon = document.getElementById("DomainRemocon");

		// ¸®¸ðÄÜÀ» È­¸é¿¡ º¸¿©ÁÖ°í ³»¿ëÀ» »Ñ¸°´Ù.
		// ÇöÀç Ã¢ÀÇ Å©±â
		var now_width = window.document.body.clientWidth/2;

		DomainRemocon.style.left = now_width+160;
		DomainRemocon.style.top = 168;
		$("#DomainRemocon").html(remote_body);
		$("#DomainRemocon").show();

		// ÇöÀç Àå¹Ù±¸´Ï ÄíÅ°°ªÀÌ ÀÖ´ÂÁö Ã¼Å©ÇÑ´Ù.
		if ( getCookie('remote_view_menu') )
		{
			if ( getCookie('remote_view_menu') == "help" )
				Remote.onHelpView();
			else
				Remote.onRemoteMenu( getCookie('remote_view_menu') );
		}
		else
		{
			if ( getCookie( 'cart_domain' ) )
				Remote.onRemoteMenu(5);
			else
				$("#RemoteContents").html(search_html);
		}

		onRemoteDrag();

		// ¸®¸ðÄÜ View Cookie
		setCookie( 'remote_on', "on", "", '/', '.gabia.com', '' );
	},

	// ¸®¸ðÄÜÀ» °¨Ãá´Ù.
	onRemoteHide: function()
	{
		var DomainRemocon = document.getElementById("DomainRemocon");

		DomainRemocon.style.left = 0;
		DomainRemocon.style.top = 0;
		$("#DomainRemocon").html("");
		$("#DomainRemocon").hide();
		deleteCookie('remote_on', '/', '.gabia.com');
	},

	onRemoteMenu: function(n)
	{
		var contents;
		if (n==1)
			contents = search_html;
		else if (n == 2)
			contents = whois_html;
		else if (n == 3)
			contents = price_html;
		else if (n == 4)
			contents = mydom_html;
		else if (n == 5)
			contents = cart_html;

		for(var i = 1; i < 6; i++) {
			if ( n == i )
				$("#remote_menu"+i).attr({ src: "http://domain.gabia.com/images/remocon/btn" + i + "_on.gif", STYLE: "cursor:text;" });
			else
				$("#remote_menu"+i).attr({ src: "http://domain.gabia.com/images/remocon/btn" + i + "_off.gif", STYLE: "cursor:pointer" });
		}

		$("#RemoteContents").html(contents);

		// °¡°ÝÁ¶È¸¿¡¼­ Ã³À½ ¼±ÅÃµÇ´Â ¸Þ´ºÇ×¸ñ
		if (n == 3)
		{
			Remote.loadXml();
			getDomCost(1);
		}
		// ³»µµ¸ÞÀÎ ¸ñ·ÏÀ» °¡Á®¿Â´Ù.
		else if (n == 4) {
			if (document.login_form.aj_login_id) {
				aj_login_id = document.login_form.aj_login_id.value;
			} else {
				aj_login_id = '';
			}
			getMyDomList(aj_login_id);
		}		
		else if (n == 5)
		{
			// ÇöÀç Àå¹Ù±¸´Ï ÄíÅ°°ªÀÌ ÀÖ´ÂÁö Ã¼Å©ÇÑ´Ù.
			if ( getCookie( 'cart_domain' ) )
			{
				// ÇöÀç ÄíÅ°¿¡ ÀÖ´Â °ªÀ» ¾ò´Â´Ù.
				ckCartDomainValue = getCookie( 'cart_domain' );

				var partStr=ckCartDomainValue.split("|");

				// ÇöÀç ÄíÅ°¿¡ ÀÖ´Â °ªÀ¸·Î Àå¹Ù±¸¸® ¸®½ºÆ®¸¦ ¸¸µç´Ù.
				for (var i=0; i<partStr.length; i++)
					viewCartDomainList(partStr[i]);
			}
		}

		// ÇöÀç º¸°íÀÖ´Â ¸Þ´º ÄíÅ°
		setCookie( 'remote_view_menu', n, "", '/', '.gabia.com', '' );
	},

	// µµ¿ò¸»
	onHelpView: function()
	{
		// ¸Þ´º ÀÌ¹ÌÁö ¼³Á¤
		for(var i = 1; i < 6; i++) {
			$("#remote_menu"+i).attr({ src: "http://domain.gabia.com/images/remocon/btn" + i + "_off.gif", STYLE: "cursor:pointer" });
		}
		$("#RemoteContents").html(help_html);

		setCookie( 'remote_view_menu', "help", "", '/', '.gabia.com', '' );
	},

	// °¡°ÝÁ¶È¸¸¦ À§ÇÑ tld°ªÀ» ºÒ·¯¿Â´Ù.
	loadXml: function()
	{
		if (window.ActiveXObject)
		{
			xmlDoc=new ActiveXObject("Microsoft.XMLDOM")
			xmlDoc.async=false;
			xmlDoc.load("/inc/remote_control.xml");
		}
		else if (document.implementation && document.implementation.createDocument)
		{
			xmlDoc = document.implementation.createDocument("","",null);
			xmlDoc.async=false;
			xmlDoc.load("/inc/remote_control.xml");
		}
		else
			alert('Áö¿øÇÏÁö ¾Ê´Â ºê¶ó¿ìÁ® ÀÔ´Ï´Ù.');
	},

	// ÇÊµå°ªÀ» Á¦°Å
	onEmptyValue: function(obj)
	{
		if (obj.value == "¿¹) gabia.com")
			obj.value = "";
	},

	// µµ¸ÞÀÎ °Ë»ö
	onRemoteCheckDomain: function()
	{
		var f = document.remote_regist_domain;
		var alpha = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
		var numeric = '1234567890';
		var special = ' ~!@#$%^&*()_=+|\\{}[];:"\'<>,.?\/';
		var special_4 = ' ~!@#$%^&*()_=+|\\{}[];:"\'<>,?\/';
		var gtld = f['gtld[]'];
		var valid_check = false;

		var han_dom_tld = new Array(".com", ".net" , ".org", ".kr", ".biz", ".info");
		var eng_dom_tld = new Array(".com", ".net" , ".org", ".kr", ".co.kr", ".info", ".biz", ".cn", ".com.cn", ".net.cn", ".cc", ".tv", ".name", ".asia");
		var cctld_dom_tld = new Array(".eu", ".cn", ".com.cn", ".net.cn", ".org.cn", ".in", ".jp", ".us", ".de", ".ag", ".com.ag", ".net.ag", ".org.ag", ".at", ".me", ".co.uk", ".org.uk", ".la", ".sh", ".am", ".be", ".pl", ".biz.pl", ".bz", ".co.in", ".net.in", ".org.in", ".firm.in", ".gen.in", ".ind.in", ".fm", ".gs", ".io", ".md", ".ms", ".nu", ".sc", ".com.sc", ".net.sc", ".org.sc", ".se", ".sg", ".com.sg", ".tc", ".tk", ".tw", ".vg", ".ws", ".ac", ".com.mx", ".co.nz", ".net.nz", ".org.nz", ".ch", ".es", ".im", ".tm", ".vc", ".ae", ".ht", ".com.ht", ".net.ht", ".org.ht", ".lt", ".mg", ".pe", ".si", ".sk", ".co");

		if (f.new_domain.value.charAt(f.new_domain.value.length-1) == '.') {
			f.new_domain.value = f.new_domain.value.substr(0, f.new_domain.value.length-1);		
		}

		if (f.new_domain.value.charAt(0) == '.') {
			alert ("µµ¸ÞÀÎ ¸íÀº '.'·Î ½ÃÀÛÇÒ ¼ö ¾ø½À´Ï´Ù.");
			f.new_domain.focus();
			return false;
		}

		if (f.new_domain.value.charAt(0) == '-') {
			alert ("µµ¸ÞÀÎ ¸íÀº '-'·Î ½ÃÀÛÇÒ ¼ö ¾ø½À´Ï´Ù.");
			f.new_domain.focus();
			return false;
		}
		if (f.new_domain.value.charAt(f.new_domain.value.length-1) == '-') {
			alert ("µµ¸ÞÀÎ ¸íÀº '-'·Î ³¡³¯ ¼ö ¾ø½À´Ï´Ù.");
			f.new_domain.focus();
			return false;
		}
		if (checknorm2_nomsg(f.new_domain,  'µµ¸ÞÀÎ¸í', special_4, 20) == false) {
			alert("µµ¸ÞÀÎ¸í¿¡ Àß¸øµÈ °ªÀÌ ÀÔ·ÂµÇ¾ú½À´Ï´Ù.");
			f.new_domain.focus();
			return false;
		}

		var domain_kind = f.new_domain.value.substr(f.new_domain.value.indexOf('.')).toLowerCase();
		var origin_domainname = f.new_domain.value.substr(0, f.new_domain.value.length - domain_kind.length);

		if (origin_domainname.charAt(origin_domainname.length-1) == '-') {
			alert ("µµ¸ÞÀÎ ¸íÀº '-'·Î ³¡³¯ ¼ö ¾ø½À´Ï´Ù.");
			f.new_domain.focus();
			return false;
		}

		// µµ¸ÞÀÎ ±æÀÌ Ã¼Å©
		if ( checknorm_nomsg(f.new_domain, 'µµ¸ÞÀÎ¸í', numeric+alpha+'.-', 63) ) {
			if(f.new_domain.value.length < 1 || f.new_domain.value.length > 17){
				alert ("ÇÑ±Û µµ¸ÞÀÎÀº 1ÀÚ ÀÌ»ó 17ÀÚ ÀÌÇÏ·Î ±¸¼ºµË´Ï´Ù.");
				f.new_domain.focus();
				return false;
			}
		}
		else {
			if(f.new_domain.value.length < 3 || f.new_domain.value.length > 63){
				alert ("µµ¸ÞÀÎÀº 3ÀÚ ÀÌ»ó 63ÀÚ ÀÌÇÏ·Î ±¸¼ºµË´Ï´Ù.");
				f.new_domain.focus();
				return false;
			}
		}

		if( f.new_domain.value.indexOf('.') > 0 ) {
			// µµ¸ÞÀÎ ÀÌ¸§³Ö´Â°÷¿¡ µµ¸ÞÀÎ Á¾·ù±îÁö ³ÖÀº °æ¿ì
			f.new_domain.value = origin_domainname;

			// ÇÑ±Û µµ¸ÞÀÎ
			if ( checknorm_nomsg(f.new_domain, 'µµ¸ÞÀÎ¸í', numeric+alpha+'.-', 63) ) {
				for(j = 0; j < han_dom_tld.length; j++) {
					if(domain_kind == han_dom_tld[j])
						valid_check = true;
				}

				if (valid_check == false) {
					alert('ÇÑ±Ûµµ¸ÞÀÎÀº .com, .net, .org, .kr, .biz, .info¸¸ µî·Ï °¡´ÉÇÕ´Ï´Ù.\n´Ù½Ã È®ÀÎ ÈÄ ÀÔ·ÂÇÏ¿© ÁÖ½Ã±â ¹Ù¶ø´Ï´Ù.');
					return false;
				}
			}
			// ¿µ¹®µµ¸ÞÀÎ
			else {
				// Àß¸øµÈ tld °ªÀ» ÀÔ·ÂÇß´ÂÁö Ã¼Å©
				for(j = 0; j < eng_dom_tld.length; j++) {
					if(domain_kind == eng_dom_tld[j])
						valid_check = true;
				}

				for(j = 0; j < cctld_dom_tld.length; j++) {
					if(domain_kind == cctld_dom_tld[j])
						valid_check = true;
				}

				if (valid_check == true) {
					if (domain_kind == ".kr" || domain_kind == ".name") {
						if (domain_kind == ".kr") temp_length = 3;
						else if (domain_kind == ".name") temp_length = 2;
						temp_domainname = f.new_domain.value;
						f.new_domain.value = origin_domainname;

						if(f.new_domain.value.length < temp_length) {
							alert (domain_kind+" µµ¸ÞÀÎÀº "+temp_length+"ÀÚ ÀÌ»óÀ¸·Î ±¸¼ºµË´Ï´Ù.");
							f.new_domain.value = temp_domainname;
							f.new_domain.focus();
							return false;
						}

						if(checknorm_nomsg(f.new_domain, 'µµ¸ÞÀÎ¸í', numeric+'-', 63) == false) {
							alert(domain_kind+" µµ¸ÞÀÎÀº µµ¸ÞÀÎ¸í¿¡ 1°³ ÀÌ»óÀÇ ¿µ¹®ÀÚ°¡ ÀÔ·ÂµÇ¾î¾ß ÇÕ´Ï´Ù.");
							f.new_domain.value = temp_domainname;
							f.new_domain.focus();
							return false;
						}
					}
				}

				if (valid_check == false) {
					alert("Àß¸øµÈ µµ¸ÞÀÎ¸íÀ» ÀÔ·ÂÇÏ¼Ì½À´Ï´Ù.");
					return false;
				}
			}

			gtld[0].value = domain_kind;
		}
		else {
			// µµ¸ÞÀÎ¸í¸¸ ³ÖÀº °æ¿ì
			// ÇÑ±Û µµ¸ÞÀÎ
			if ( checknorm_nomsg(f.new_domain, 'µµ¸ÞÀÎ¸í', numeric+alpha+'.-', 63) ) {
				gtld[0].value = ".com";
				gtld[1].value = ".net";
				gtld[2].value = ".kr";
				gtld[3].value = ".org";
				gtld[3].value = ".biz";
				gtld[3].value = ".info";
			}
			// ¿µ¹®µµ¸ÞÀÎ
			else {
				gtld[0].value = ".com";
				gtld[1].value = ".net";
				gtld[2].value = ".kr";
				gtld[3].value = ".co.kr";
			}
		}
		return true;
	},

	// ÈÄÀÌÁî Á¤º¸ Á¶È¸ Popup
	whois_domain_info: function()
	{
		var domain = document.frmWhois.info_domain.value;
		var ex_text = domain.replace(/\r\n/gi, '').replace(/\r/gi, '').replace(/\n/gi, '').replace(/ /gi, '');
		if (domain == "" || ex_text == "¿¹)gabia.com")
		{
			alert("°Ë»öÇÒ µµ¸ÞÀÎ¸íÀ» ÀÔ·ÂÇÏ¿© ÁÖ½Ã±â ¹Ù¶ø´Ï´Ù.");
			return false;
		}
		else
		{
			sURL = "http://domain.gabia.com/regist/sch_whois/schwhois_popup.php?domain="+domain;
			window.open(sURL, "NameServer", "left=" + (window.screen.availWidth/2 - 200) + ",top=" + (window.screen.availHeight/2 - 220) + ",directories=no, location=no, menubar=no, resizable=no, scrollbars=1, status=no, titlebar=no, toolbar=no,width=550,height=500");
			return false;
		}
	},

	onMouseUp : function()
	{
		var DomainRemocon = document.getElementById("DomainRemocon");
		var l, t;

		l = DomainRemocon.style.left;
		t = DomainRemocon.style.top;

		// ÇöÀç ¸®¸ðÄÜÀÇ À§Ä¡
		setCookie( 'remote_position', l+"|"+t, "", '/', '.gabia.com', '' );

		return {left:l, top:t};
	}
}
Remote.initialize();

/*
 * Àå¹Ù±¸´Ï
 */
// Àå¹Ù±¸´Ï ¸®½ºÆ®¿¡ µµ¸ÞÀÎÀ» Ãß°¡ ÇÑ´Ù.
var addDomainToCart = function(obj)
{
	var ckCartDomainValue;
	var newckCartDomain;
	var cartItem = "";
	var domain = obj.value;
	var encode_domain = encodeURIComponent(domain);
	var inner_html = "";
	var cart_id = domain.replace(/\./g, "_");

	if (chkCartDomain(encode_domain)) {
		alert(domain + "Àº ÀÌ¹Ì Àå¹Ù±¸´Ï¿¡ ´ã°ÜÁ® ÀÖ½À´Ï´Ù.");
	}
	else
	{
		inner_html += "<span class=\"domainCart\" id=\""+ cart_id + "_cart\">";
		inner_html += "<table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n";
		inner_html += "<tr>\n";
		inner_html += "	<td width=\"200\" height=\"20\" style=\"padding:0px 2px 0px 5px\">" + domain + "</td>\n";
		inner_html += "	<td width=\"68\" align=\"center\"><img src=\"/images/remocon/c20.gif\" border=\"0\" id=\"remove\" onClick=\"\" style=\"cursor:pointer;\"></td>\n";
		inner_html += "</tr>\n";
		inner_html += "<tr><td colspan=\"2\" align=\"center\" height=\"1\" background=\"/images/remocon/c_dot.gif\"></td></tr>\n";
		inner_html += "</table>";
		inner_html += "</span>";

		$('#cart_domain_list')
			.append(inner_html)
			.find('span.domainCart:last')
			.fadeIn(800)
			.find('#remove')
			.bind(
				'click', 
				function()
				{
					$(this).DropOutDown(
						400,
						function() {
							$(this.parentNode.parentNode.parentNode.parentNode.parentNode).remove();
							ckDeleteCartDomain(encode_domain);
							calculateCartTotal();
						}
					);
					return false;
				}
			);
		cartItem = $('#remote_menu5').get(0);

		// ÄíÅ°¼³Á¤.
		// ÄíÅ°°¡ Á¸ÀçÇÑ´Ù¸é ±âÁ¸ÀÇ ÄíÅ°°ª¿¡ »õ·Î µé¾î¿Â°ÍÀ» ´õÇØ¼­ ´Ù½Ã »ý¼ºÇÑ´Ù.
		ckCartDomainValue = getCookie( 'cart_domain' );
		if ( ckCartDomainValue == null )
			newckCartDomain = encode_domain;
		else
			newckCartDomain = ckCartDomainValue + "|" + encode_domain;
		setCookie( 'cart_domain', newckCartDomain, 1, '/', '.gabia.com', '' );
	}
	calculateCartTotal();

	$(obj.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode)
		.TransferTo(
			{
				to: cartItem,
				className: 'transCartDomain',
				duration: 400
			}
		);
};
// ÇöÀç Àå¹Ù±¸´Ï¿¡ ´ã°ÜÁ® ÀÖ´Â °¹¼ö
var calculateCartTotal = function()
{
	var total = 0;
	$('#cart_domain_list .domainCart').each(
		function()
		{
			total += 1;
		}
	);
	if (total != "")
		$('#cartTotal').html(total);
	else
		$('#cartTotal').html("0");
};

// Àå¹Ù±¸´Ï¿¡ ´ãÀ¸·Á°í ÇÏ´Â µµ¸ÞÀÎÀÌ ÄíÅ°¿¡ ÀÖ´ÂÁö Ã¼Å©ÇÑ´Ù.
function chkCartDomain(domain)
{
	var ckCartDomainValue;
	if ( getCookie( 'cart_domain' ) )
	{
		ckCartDomainValue = getCookie( 'cart_domain' );
		var partStr=ckCartDomainValue.split("|");
		for (i=0; i<partStr.length; i++)
		{
			if (domain == partStr[i])
			{
				return true;
				break;
			}
		}
	}
	else
		return false;
}

// ÇØ´çµµ¸ÞÀÎÀ» ÄíÅ°¿¡¼­ »èÁ¦ÇÑ´Ù.
function ckDeleteCartDomain(domain)
{
	var ckCartDomainValue;
	var newckCartDomain = "";
	var tmpCartDomain;
	var CartDomainLen;

	// ÄíÅ°°¡ Á¸ÀçÇÑ´Ù¸é
	if ( getCookie( 'cart_domain' ) )
	{
		// ÇöÀç ÄíÅ°¿¡ ÀÖ´Â °ªÀ» ¾ò´Â´Ù.
		ckCartDomainValue = getCookie( 'cart_domain' );
		var partStr=ckCartDomainValue.split("|");
		for (i=0; i<partStr.length; i++)
		{
			if (domain != partStr[i] && partStr[i] != null)
			{
				if (newckCartDomain == "")
					newckCartDomain = partStr[i];
				else
					newckCartDomain += "|" + partStr[i];
			}
		}

		// Àå¹Ù±¸´Ï¿¡ ´ã°ÜÀÖ´Â µµ¸ÞÀÎÀÌ ÇÏ³ªµµ ¾øÀ»°æ¿ì ÄíÅ°¸¦ »èÁ¦ ÇÑ´Ù.
		if (newckCartDomain != "")
			setCookie( 'cart_domain', newckCartDomain, 1, '/', '.gabia.com', '' );
		else
			deleteCookie('cart_domain', '/', '.gabia.com');
	}
}

// ÆäÀÌÁöÀÇ ÀÌµ¿ÀÌ³ª »õ·Î°íÄ§À» ÇßÀ»¶§ ÇöÀç ÄíÅ°¿¡ ÀÖ´Â °ªÀ» »Ñ·ÁÁØ´Ù.
function viewCartDomainList(domain)
{
	var inner_html = "";
	var cart_id = decodeURIComponent(domain).replace(/\./g, "_");

	inner_html += "<span class=\"domainCart\" id=\""+ cart_id + "_cart\">";
	inner_html += "<table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n";
	inner_html += "<tr>\n";
	inner_html += "	<td width=\"200\" height=\"20\" style=\"padding:0px 2px 0px 5px\">" + decodeURIComponent(domain) + "</td>\n";
	inner_html += "	<td width=\"68\" align=\"center\"><img src=\"/images/remocon/c20.gif\" border=\"0\" id=\"remove\" onClick=\"\" style=\"cursor:pointer;\"></td>\n";
	inner_html += "</tr>\n";
	inner_html += "<tr><td colspan=\"2\" align=\"center\" height=\"1\" background=\"/images/remocon/c_dot.gif\"></td></tr>\n";
	inner_html += "</table>";
	inner_html += "</span>";

	$('#cart_domain_list')
		.append(inner_html)
		.find('span.domainCart:last')
		.fadeIn(800)
		.find("#remove")
		.bind(
			'click', 
			function()
			{
				$(this.parentNode.parentNode.parentNode.parentNode.parentNode).DropOutDown(
					400,
					function() {
						$(this).remove();
						ckDeleteCartDomain(domain);
						calculateCartTotal();
					}
				);
				return false;
			}
		);
	calculateCartTotal();
}

/*
 * µµ¸ÞÀÎ °¡°Ý Á¶È¸
 */

// ±¹Á¦, KR, ¼¼°è µµ¸ÞÀÎÀÇ ¸ñ·ÏÀ» ¸¸µç´Ù.
function getTldKind(parentsTagName, childTagName)
{
	var strOptions = "";
	var domain_price = xmlDoc.getElementsByTagName(parentsTagName);
	var tld_kind = domain_price[0].getElementsByTagName(childTagName);

	strOptions = "<option value=\"\" selected>¼±ÅÃÇÏ¼¼¿ä</option>";
	for (var i = 0; i < tld_kind.length; i++) 
	{
		var strNodeValue = tld_kind[i].firstChild.nodeValue;
		var strAttribute = tld_kind[i].getAttribute("tld");

		strOptions += "<option value=\"" + strAttribute + "\">" + strNodeValue + "</option>";
	}

	return strOptions;
}

// µµ¸ÞÀÎ °¡°Ý Á¶È¸ ½ºÅ©¸³Æ® ½ÃÀÛ
function getDomCost(n) {
	if (n == 1)
		TagName = "internic";
	else if (n == 2)
		TagName = "krnic";
	else if (n == 3)
		TagName = "world";
	var viewOptions = getTldKind('domain_price', TagName);
	$("#domain_kind").empty();
	$("#domain_kind").append(viewOptions);
	$("#domain_kind").show();
	$("#period").hide();
	$("#view_dom_price").text("");
	for (var i = 1; i < 4; i++)
	{
		if ( n == i )
			$("#cost_button"+i).attr({ src: "http://domain.gabia.com/images/remocon/c1" + parseInt(i-1) + "_on.gif" });
		else
			$("#cost_button"+i).attr({ src: "http://domain.gabia.com/images/remocon/c1" + parseInt(i-1) + ".gif" });
	}
}

// ÇØ´ç µµ¸ÞÀÎÀÇ µî·Ï³â¼ö¸¦ ±¸ÇØ¿Â´Ù.
function getPeriod(value) {
	if (value != "") {
		$.ajax({
			type: "POST",
			url: "/inc/ajax_lib/domain_price.php",
			data: "tld_kind="+value,
			dataType: "html",
			success: function(msg){
				$("#period").empty();
				$("#period").append(msg);
			}
		});
		$("#period").show();
		$("#view_dom_price").text("");
	}
}

// µµ¸ÞÀÎ °¡°ÝÀ» º¸¿©ÁØ´Ù.
function viewPrice(value) {
	if (value != "") {
		var viewPrice = value + "¿ø";
		$("#view_dom_price").text(viewPrice);
	}
	else
		$("#view_dom_price").text("");
}

/*
 * ¸®¸ðÄÜ ÄíÅ°
 */
// ÄíÅ° »ý¼º 
function setCookie(name, value, expires, path, domain, secure)
{
	var curCookie = name + "=" + escape(value) +
		((expires) ? "; expires=" + expires.toGMTString() : "") +
		((path) ? "; path=" + path : "") +
		((domain) ? "; domain=" + domain : "") +
		((secure) ? "; secure" : "");
	document.cookie = curCookie;
}

// ÄíÅ°°ª °¡Á®¿À±â
function getCookie(name)
{
	var dc = document.cookie;
	var prefix = name + "=";
	var begin = dc.indexOf("; " + prefix);
	if (begin == -1)
	{
		begin = dc.indexOf(prefix);
		if (begin != 0) return null;
	}
	else
		begin += 2;

	var end = document.cookie.indexOf(";", begin);
	if (end == -1)
		end = dc.length;

	return unescape(dc.substring(begin + prefix.length, end));
}

// ÄíÅ° »èÁ¦
function deleteCookie(name, path, domain)
{
	if (getCookie(name))
	{
		document.cookie = name + "=" +
			((path) ? "; path=" + path : "") +
			((domain) ? "; domain=" + domain : "") +
			"; expires=Thu, 01-Jan-1970 00:00:01 GMT";
	}
}

/*
 * ¸¶ÀÌµµ¸ÞÀÎ ¸®½ºÆ®
 */
// ÇöÀç µî·ÏµÇ¾î ÀÖ´Â µµ¸ÞÀÎ ¸®½ºÆ®¸¦ °¡Á®¿Â´Ù.
// ·Î±×ÀÎ ÇßÀ»¶§¿¡¸¸ °¡Á®¿È
var mydom_load = "";
function getMyDomList(id)
{
	var post_data;
	
	if (id)
	{
		mydom_load = "";

		if (id == "aj_#_logout") {
			aj_user_id = '';
		} else {
			aj_user_id = id;
		}
	}
	else
	{
		aj_user_id = '';
	}

	//
	post_data = "&view_cnt=20";
	post_data += "&order_field=expire";
	post_data += "&order_type=asc";
	post_data += "&list_type=small";
	post_data += "&aj_user_id="+aj_user_id;

	// ·ÎµùÁß
	inner_html  = "<tr>\n";
	inner_html += "	<td colspan=\"3\">&nbsp; <img src=\"http://domain.gabia.com/images/regist/progress.gif\" border=\"0\" align='absmiddle'> &nbsp; °Ë»öÁß...</td>\n";
	inner_html += "</tr>\n";
	inner_html += "<tr>\n";
	inner_html += "	<td colspan=\"3\" align=\"center\" height=\"1\" background=\"http://www.gabia.com/images/remocon/c_dot.gif\"></td>\n";
	inner_html += "</tr>\n";
	

	if (mydom_load == "")
	{
		$("#mydom_list_view").html(inner_html);

		$.ajax({
			type: "POST",
			url: "/inc/ajax_lib/get_mydomain_list_main.php",
			data: post_data,
			dataType: "json",
			success: function(msg) {
				viewList (msg);
			}
		});
	}
	else {
		viewList (mydom_load);
	}
}

function viewList(response)
{
	var inner_html = "";
	var domain_width = "134";
	var expire_width = "67";
	var extend_width = "67";
	var extend_style = " align=\"center\"";

	// °á°ú°¡ ¾ø´Ù¸é
	if (response.search_cnt == "0")
	{
		inner_html += "<tr>\n";
		inner_html += "	<td colspan=\"3\" align=\"center\" style='padding-top:20px'>µµ¸ÞÀÎÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.</td>\n";
		inner_html += "</tr>\n";

		$("#mydom_list_view").html(inner_html);
	//	return;
	}
	else
	{
		// ÀüÃ¼ °¹¼ö Ç¥½Ã
		$("#total_mydom").html(response.search_cnt);

		if (response.search_cnt > 4)
		{
			domain_width = "134";
			expire_width = "67";
			extend_width = "67";
			extend_style = " align=\"right\" style=\"padding-right:7px;\"";
		}

		// ¸®½ºÆ®¸¦ ¸¸µç´Ù.
		for (var i = 0; i < response.domain_list.length; i++)
		{

			inner_html += "<tr>\n";
			inner_html += "	<td width=\"" + domain_width + "\" height=\"20\" style=\"padding:0 2 0 5;\">" + response.domain_list[i].domain + "</td>\n";
			inner_html += "	<td width=\"" + expire_width + "\" align=\"left\">" + response.domain_list[i].expire + "</td>\n";
			inner_html += "	<td width=\"" + extend_width + "\"" + extend_style + "><img src=\"http://domain.gabia.com/images/remocon/c17.gif\" width=\"28\" height=\"14\" border=\"0\" onClick=\"javascript: gotoExtend('" + response.domain_list[i].domain + "');\" style=\"cursor:pointer;\"></td>\n";
			inner_html += "</tr>\n";
			inner_html += "<tr>\n";
			inner_html += "	<td colspan=\"3\" align=\"center\" height=\"1\" background=\"http://domain.gabia.com/images/remocon/c_dot.gif\"></td>\n";
			inner_html += "</tr>\n";
		}
		$("#mydom_list_view").html(inner_html);
	}

	mydom_load = response;
}

var gotoExtend = function(domain)
{
	var f = document.frmRemoconExt;

	f.domainList.value = domain;
	f.action = "http://domain.gabia.com/extend/extend_step1.php";
	f.submit();
}

/*
 * ¸®¸ðÄÜ µå·¡µå
 */
function getObj() {
	var ret = [];
	for(var i=0; i < arguments.length; i++) {
		if (typeof arguments[i] == 'string') {
			ret.push(document.getElementById(arguments[i]));
		} else {
			ret.push(arguments[i]);
		}
	}
	return ret[1]?ret:ret[0];
}

/***********************/
// create class
var Class = function(){
	var obj = function() {
		if (this.__const) this.__const.apply(this,arguments);
	}
	if (arguments[0]) Class.extend(obj.prototype, arguments[0]);
	
	return obj;
}
// class inheritance - multiple inheritance supportable
Class.extend = function(superClass) {
	var obj = superClass;
	for(var i=1; i < arguments.length; i++) {
		if (arguments[i]) {
			for(var x in arguments[i]) {
				if (x == 'cursor') {x="hand";}
				obj[x] = arguments[i][x];
			}
		}
	}

	return obj;
}

/***********************/
// global event object
var Event = {
	register : function(oEl, sEvent, pFunc) {
		oEl = getObj(oEl);
		if (oEl.addEventListener) {
			oEl.addEventListener(sEvent, pFunc, false);
		} else if(oEl.attachEvent) {
			oEl.attachEvent('on'+sEvent, pFunc);
		}
	},
	unregister : function(oEl, sEvent, pFunc) {
		oEl = getObj(oEl);
		if (oEl.removeEventListener) {
			oEl.removeEventListener(sEvent, pFunc, false);
		} else if(oEl.detachEvent) {
			oEl.detachEvent('on'+sEvent, pFunc);
		}
	},
 	ready : function(evt) {
		var e = evt || window.event;
		var b = document.body;

		Class.extend(e, {
			element : e.target || e.srcElement,
			page_x  : e.pageX || e.clientX+b.scrollLeft-b.clientLeft,
			page_y  : e.pageY || e.clientY+b.scrollTop-b.clientTop,
			stop : function() {
				if (this.preventDefault) {
					this.preventDefault();
					this.stopPropagation();
				} else {
					this.returnValue = false;
					this.cancelBubble = true;
				}
			}
		});

		return e;
	}
}

// global element object
var Element = {
	realPos : function(oEl) {
		if (oEl.offsetParent) {
			var p = this.realPos(oEl.offsetParent);
			return { top: oEl.offsetTop+p.top, left: oEl.offsetLeft+p.left };
		} else {
			return { top: oEl.offsetTop, left:oEl.offsetLeft };
		}
	}
}

// array extend
Class.extend(Array.prototype, {
	load : function(obj) {
		for(var i=0; i<obj.length; i++) {
			this.push(obj[i]);
		}
		return this;
	}
});

/***********************/
Class.extend(Function.prototype, {
	bind : function(obj) {
		var f=this, a=[].load(arguments);a.shift();
		return function() {
			return f.apply(obj, a);
		}
	},
	bindForEvent : function(obj) {
		var f=this;
		return function(e) {
			return f.call(obj, Event.ready(e));
		}
	}
});

/***********************/
var Drag = Class({
	__const : function(obj) {
		this.obj = getObj(obj);
		this.options = Class.extend(arguments[1]);
		
		var o = this.options;

		// event binding
		this.onmousedown = this.onMouseDown.bindForEvent(this);
		this.onmousemove = this.onMouseMove.bindForEvent(this);
		this.onmouseup   = this.onMouseUp.bindForEvent(this);

		if (!o.handler.length) {
			Event.register(this.obj, 'mousedown', this.onmousedown);
		} else {
			for(var i=0; i < o.handler.length; i++) {
				Event.register(o.handler[i], 'mousedown', this.onmousedown);
			}
		}
	},
	onMouseDown : function(e) {
		Event.register(document, 'mousemove', this.onmousemove);
		Event.register(document, 'mouseup', this.onmouseup);
		Event.register(document, 'keypress', this.onmouseup);

		var o = this.options;

		this.startX = e.page_x;
		this.startY = e.page_y;
		this.startPos = Element.realPos(this.obj);
		this.orgZ   = this.obj.style.zIndex;
		this.obj.style.zIndex = 1000;

		this.obj.style.right = this.obj.style.bottom = '';
		this.obj.style.top = this.startPos.top+'px';
		this.obj.style.left = this.startPos.left+'px';

		if (o.limitArea) {
			var limCoords = Element.realPos(o.limitArea);
			var limLeft   = limCoords.left;
			var limTop    = limCoords.top;
			var limWidth  = o.limitArea.scrollWidth || o.limitArea.offsetWidth ;
			var limHeight = o.limitArea.scrollHeight || o.limitArea.offsetHeight;

			this.limit = {
				left   : limLeft,
				right  : limLeft + limWidth,
				top    : limTop,
				bottom : limTop + limHeight
			};
		}

		e.stop();
	},
	onMouseMove : function(e) {
		var x = e.page_x;
		var y = e.page_y;

		var new_x = this.startPos.left - this.startX + x;
		var new_y = this.startPos.top - this.startY + y;

		if (this.options.limitArea) {
			if (new_x < this.limit.left) new_x = this.limit.left;
			else if (new_x > this.limit.right - this.obj.offsetWidth) new_x = this.limit.right - this.obj.offsetWidth;

			if (new_y < this.limit.top) new_y = this.limit.top;
			else if (new_y > this.limit.bottom - this.obj.offsetHeight) new_y = this.limit.bottom - this.obj.offsetHeight;
		}

		this.obj.style.top = new_y+'px';
		this.obj.style.left = new_x+'px';

		e.stop();
	},
	onMouseUp : function(e) {
		Event.unregister(document, 'mousemove', this.onmousemove);
		this.obj.style.zIndex = this.orgZ;
	}
})



Scroll = Class({
	__const : function(id) {
		this.obj = getObj(id);
		this.options = Class.extend({
			enable   : true,
			slowDown : false,
			topTrack : false,
			division : 50,
			limitArea : null
		}, arguments[1] || {});

		var offset = this.getPos(this.obj)[0];

		this.obj.style.top = this.obj.offsetTop+'px';

		this._scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
		this._startTop  = parseInt(this.obj.style.top);
		this._startPosY = this.getPos(this.obj)[0];

		if (this._scrollTop > this._startTop) this._scrollTop = 0;

		// event binding
		this.onscroll = this.onScroll.bindForEvent(this);
		Event.register(window, 'scroll',this.onscroll);
	},
	onScroll : function(e) {
		var scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
		var diff = scrollTop - this._scrollTop;
		var diffChange = false;

		if (this._startTop + diff < 170)
			this._targetTop = 168;
		else
			this._targetTop = this._startTop + diff;

		if (this.options.limitArea) {
			var objY = this.getPos(this.obj)[0];
			var area = getObj(this.options.limitArea);
			var posY = this.getPos(area)[0];

			if (this._startPosY + this.obj.offsetHeight + diff > posY + area.offsetHeight) {
				diff = posY + area.offsetHeight - this._startPosY - this.obj.offsetHeight;
				this._targetTop = this._startTop + diff;
				diffChange = true;
			} else if (this._targetTop < posY) {
				this._targetTop = posY;
				diffChange = true;
			}
		}

		if (this.options.topTrack && !diffChange && scrollTop > this._startPosY) {
			this._targetTop -= this._startPosY;
		}

		if (this._timer) {
			clearTimeout(this._timer);
			this._timer = null;
		}

		this._timer = setTimeout(this.animate.bind(this), 1);
	},
	animate : function() {
		var currTop = parseInt(this.obj.style.top);
		var unit = (this._targetTop-currTop)<0?-1:1;
		var step = Math.ceil(this._targetTop - this._startTop / 100);

		if (this.options.slowDown) {
			step = parseInt((this._targetTop - currTop) / this.options.division);
			if (step == 0) step = unit;
		}
		if ((step > 0 && currTop + step > this._targetTop) || (step < 0 && currTop + step < this._targetTop)) {
			step = this._targetTop - currTop;
		}
		if (this._targetTop != currTop) {
			this.obj.style.top = (currTop+step)+'px';
			setTimeout(this.animate.bind(this), 10);
		}
	},
	getPos : function(obj) {
		var top=0, left=0;
		while(obj.offsetParent) {
			top += obj.offsetTop;
			left += obj.offsetLeft;
			obj = obj.offsetParent;
		}

		return [top, left];
	}
});

function onRemoteDrag()
{
	// µå·¡±×
	new Drag('DomainRemocon', {
		handler : ['remoconTop'],
		limitArea : document.getElementById('remote_move_area')
	});
}

window.onload = function() {
	// ½ºÅ©·Ñ
	new Scroll('DomainRemocon', {
		topTrack : true,
		slowDown : true,
		division : 10,
		limitArea : 'remote_move_area'
	});
}
