
//////////////////////////////////////
// IE Embed patch
//
// @author iezn@iezn.com
// @homepage http://iezn.com
// @create date 2006.04.19
// @last modify 2006.04.25
// @version 0.41
// 배포시 위내용을 포함해 주시기 바랍니다
//////////////////////////////////////
/**
* embed 패치 적용 컨테이너
* null인경우 document 값을 기본으로 합니다
* id값을 설정한경우 설정범위 내에만 적용이 됩니다
*
* 본문이나 일부 노드에만 적용할경우 해당 노드의 id 값을 입력하실 수 있습니다
* 예)
* var __embed_target_id = "contents";
* 로 처리한경우 body 내에 <태그 id="contents">플래쉬,동영상...</태그>
* 안에 내용에만 패치가 적용됩니다
*/
if(typeof(__embed_target_id)=='undefined'){
	var __embed_target_id = null;
}

/**
* embed 패치를 적용할 태그를 설정합니다
* 기본값은 object,eembed,appelt 태그입니다
* false 값인경우 패치에서 제외됩니다
*/
if(typeof(__embed_tags)=='undefined'){
	var __embed_tags = {object:true,embed:true,applet:false}
}

/**
* 플래쉬파일중 flashvars 를 사용할경우 해당 플래쉬의 오브젝트아이디:true 값으로 object를 등록해 주세요
*/
var __flash_force_objs = {};
/*
if(document.attachEvent){
	document.write('<style type="text/css">');
	document.write('object,embed{display:none;}');
	document.write('</style>');
	document.attachEvent('onreadystatechange',
		function (){

			if(__embed_target_id===null){
				var __target = document;
			}else{
				var __target = document.getElementById(__embed_target_id);
			}
			if (document.readyState == "complete"){
				function _replace(obj){
					var obj_re = document.createElement(obj.outerHTML);
					obj_re.style.display='inline';
					obj.parentNode.replaceChild(obj_re,obj);
				}
				function _inner(obj){
					obj.style.display='inline';
					var html = obj.outerHTML;
					var classid = obj.classid.toLowerCase();
					if(classid=='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' && typeof(__flash_force_objs[obj.id])=='undefined'){//flash 인경우
						obj.insertAdjacentHTML('beforeBegin',html);
						obj.parentNode.removeChild(obj);
					}else{
						//변경하고자하는 ActiveX classid 를 추가하시기 바랍니다
						if(classid=='clsid:6bf52a52-394a-11d3-b153-00c04f79faa6' || //media 7
						classid=='clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95' || //6.4
						classid=='clsid:6bf52a52-394a-11d3-b153-00c04f79faa6' ||
						classid=='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000'
						){//media player 10
							embed_pos = html.indexOf('embed');
							if(embed_pos!=-1){//embed 가 존재하는경우
								var embed = '<'+html.substr(embed_pos);
								embed = embed.substr(0,embed.length-9);
								obj.insertAdjacentHTML('beforeBegin',embed);
								obj.parentNode.removeChild(obj);
							}else{
								//object로만 되어 있는경우 동영상 부분만 패치한다
								var embed = document.createElement('embed');
								var total = obj.childNodes.length;
								embed.setAttribute('autostart',0);
								if(obj.width){
									embed.setAttribute('width',obj.width);
								}
								if(obj.height){
									embed.setAttribute('height',obj.height);
								}
								for(var k=0;k<total;k++){
									n = obj.childNodes.item(k).getAttribute("name");
									v = obj.childNodes.item(k).getAttribute("value");
									if(n=='URL' || n=='url' || n=='FileName'){
										n = 'src';
									}
									embed.setAttribute(n,v);
								}
								if(embed.getAttribute('src')){
									embed.style.display = 'inline';
									obj.parentNode.replaceChild(embed,obj);
								}else{
									//파일엑세스 object가 아닌경우는 유지한다
								}
							}
						}
					}
				}

				if(__embed_tags.object===true){
					var objs = __target.getElementsByTagName('object');
					var i = objs.length;
					while(i-->0){
						_inner(objs[i]);
					}
				}
				if(__embed_tags.embed===true){
					var objs = __target.getElementsByTagName('embed');
					var i = objs.length;
					while(i-->0){
						_replace(objs[i])
					}
				}

				if(__embed_tags.applet===true){
					var objs = __target.getElementsByTagName('applet');
					var i = objs.length;
					while(i-->0){
						_replace(objs[i])
					}
				}
			}
		}
	);
}
*/
var navNS = (navigator.appName.indexOf('Netscape') > -1);
var navIE = (navigator.appName.indexOf('Microsoft Internet Explorer') > -1);
var AppVersion = (((navigator.appVersion.split('; '))[1].split(' '))[1]);

//숫자만 입력 받았는지 체크하는 함수.(한글/특수문자/영문 입력이면 false)
function IsValidNum(str){
	var regNum 			=/[0-9]+$/;

	if(!regNum.test(str)){
		return false;
	}
	return true;
}


//숫자와 문자만 입력 받았는지 체크하는 함수.(한글/특수문자 입력이면 false)
function IsValidSting(str){
	var regStringnum			=/[a-zA-Z0-9]/;

	if(!regStringnum.test(str)){
		return false;
	}

	return true;
}

//첫문자는 항상 영문자여야 함.
function IsFirstSting(str){
	var regString			=/[a-zA-Z]$/;
	var fstr = str.charAt(0)
	if(!regString.test(fstr)) {
		return false;
	}
	return true;
}

//이메일 입력값 형식 체크하는 함수.
function IsEmailFormat(strEmail){
	var arrMatch = strEmail.match(/^(\".*\"|[A-Za-z0-9_-]([A-Za-z0-9_-]|[\+\.])*)@(\[\d{1,3}(\.\d{1,3}){3}]|[A-Za-z0-9][A-Za-z0-9_-]*(\.[A-Za-z0-9][A-Za-z0-9_-]*)+)$/);
	if(arrMatch == null) return false;

	var arrIP = arrMatch[2].match(/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/);
	if(arrIP != null){
		for(var i=1; i<=4; i++){
			if(arrIP[i] > 255) return false;
		}
	}

	return true;
}

//주민번호 형식 검증
function IsJuminFormat(j1, j2){
	var sum_1 = 0;
	var sum_2 = 0;
	var at = 0;
	var j_no = j1 + j2;
	sum_1 = (j_no.charAt(0)*2) + (j_no.charAt(1)*3) + (j_no.charAt(2)*4) + (j_no.charAt(3)*5) +
	 	(j_no.charAt(4)*6) + (j_no.charAt(5)*7) + (j_no.charAt(6)*8) + (j_no.charAt(7)*9) +
		(j_no.charAt(8)*2) + (j_no.charAt(9)*3) + (j_no.charAt(10)*4) + (j_no.charAt(11)*5);
	sum_2 = sum_1 % 11;
	if(sum_2 == 0) at = 10;
	else {
		if(sum_2 == 1) at = 11;
		else at = sum_2;
	}
	att = 11 - at;
	if(j_no.charAt(12) != att){
		return false;
	}

	return true;
}

//외국인등록번호 형식 검증
function IsForeFormat(j1, j2){
	var fgnno  = j1+j2
	var sum=0;
	var odd=0;
	buf = new Array(13);
	for(i=0; i<13; i++) {
		buf[i]=parseInt(fgnno.charAt(i));
	}
	odd = buf[7]*10 + buf[8];
	if(odd%2 != 0) {
		return false;
	}
	if( (buf[11]!=6) && (buf[11]!=7) && (buf[11]!=8) && (buf[11]!=9) ) {
		return false;
	}
	multipliers = [2,3,4,5,6,7,8,9,2,3,4,5];
	for(i=0, sum=0; i<12; i++) {
		sum += (buf[i] *= multipliers[i]);
	}
	sum = 11 - (sum%11);
	if(sum >= 10) {
		sum -= 10;
	}
	sum += 2;
	if(sum >= 10) {
		sum -= 10;
	}
	if(sum != buf[12]) {
		return false
	}

	return true;
}


//표시하는 함수
function showow_visible(item_id){
	var obj =  "";

	if(document.getElementById) obj = document.getElementById(item_id);
	else if(document.all) obj = document.all[item_id];
	else if(document.layers) obj = document.layers[item_id];

	alert(obj);

	obj.style.display =  "";
}

//숨기는 함수
function hide_hidden(item_id){
	var obj =  "";

	if(document.getElementById) obj = document.getElementById(item_id);
	else if(document.all) obj = document.all[item_id];
	else if(document.layers) obj = document.layers[item_id];

	alert(obj);

	obj.style.display =  "none";

}

//색상표
function popupcolorpicker(to, nums){
	window.open("colorpicker.html?where="+to+"&num_rows="+nums, "pickcolor", "scrollbars=yes, width=450, height=300, top=0, left="+(screen.width-462));
}

//스팸방지 기능
function AntiSpam(form,uid){
	window.open("", "AntiSpam", "width=180,height=263,left=1,top=1,resizable=yes");
	form.uid.value = uid;
	form.action = "neverspam/cgidata/php/linux/exe/linuxantispamin.php";
	form.target = "AntiSpam";
	form.submit();
	form.target = "_self";
}

//입력값의 크기를 구하는 함수
function LenH(aquery)
{
	var tmpStr;
	var temp=0;
	var onechar;
	var tcount;
	tcount = 0;

	tmpStr = new String(aquery);
	temp = tmpStr.length;

	for (k=0;k<temp;k++)
	{
		onechar = tmpStr.charAt(k);

		if (escape(onechar).length > 4) {
			tcount += 2;
		}
		else if (onechar!='\r') {
			tcount++;
		}
	}
	return tcount;
}

//한글을 byte단위로 자르는 Func
function LeftH(str, cnt)
{
	var k = 0;
	var i;
	var ss="";

	for(i=1;i<=cnt;i++)
	{
		if(escape(str.charAt(k)).length > 4)
		{
			i = i + 1;
		}

		if(i <= cnt)
			ss = ss + str.charAt(k);
		k = k + 1;
	}
	return ss;
}

//윈도우창의 크기를 조정한다.
function resizeWindow(width,height)
{
	if(width < 0) width = 1000;
	if(height < 0) height = 700;

	if(navNS) {  // NS 일 때
		var x = (document.body.scrollWidth  > width) ? width : document.body.scrollWidth;
		var y = (document.body.scrollHeight > height)  ? height  : document.body.scrollHeight;
		x += self.outerWidth - self.innerWidth;
		y += self.outerHeight - self.innerHeight;
		window.resizeTo(x, y);
	}
	else {  // IE 일 때
		window.resizeBy(-300, -300);
		var x = (document.body.scrollWidth  > width) ? width : document.body.scrollWidth;
		var y = (document.body.scrollHeight > height)  ? height  : document.body.scrollHeight;
		x -= document.body.clientWidth;
		y -= document.body.clientHeight;
		window.resizeBy(x, y);
	}
}

//iframe 리사이즈
function iframe_autoresize(ifr,max_width,max_length)
{
	var obj;
	var iName = (ifr.id) ? ifr.id : ifr.name ;

	if(!max_length) max_length = 10000;
	if(!max_width) max_width = 620;

	if(navIE)
	{
		//obj = eval("document.getElementById('"+iName+"').contentWindow.document");
		obj = ifr.contentWindow.document;
	}
	else
	{
		//obj = eval("document.getElementById('"+iName+"').contentDocument") ;
		obj = ifr.contentDocument ;
	}

	var height = obj.body.scrollHeight;
	//var width  = obj.body.scrollWidth;
	//var height = eval(ifr.name+".document.body.scrollHeight");
	//var width  = eval(ifr.name+".document.body.scrollWidth");
	if((max_length/1) > 0 && height > (max_length/1)) height = (max_length/1);
	//if((max_width/1) > 0 && width > (max_width/1)) width = (max_width/1);

	ifr.style.height = null;
	//ifr.style.width = null;
	//ifr.width = width;
	ifr.height = height;
}

function IframeAutoResize(e)
{
    var obj,objDoc;
    var iName = (this.id) ? this.id : this.name ;
	var s;
	var max_length = 10000;
	var max_width = 620;

	if(navIE)
	{
		obj = e.srcElement;
		objDoc = obj.contentWindow.document;
	}
	else
	{
		obj = e.currentTarget;
		objDoc = obj.contentDocument;
	}

	//obj.style.height = "10px";
	//obj.style.width = "10px";

	//var height = parseInt(objDoc.body.clientHeight) + parseInt(obj.scrollHeight);
	var width  = parseInt(objDoc.body.clientWidth) + parseInt(obj.scrollWidth);

	var height = parseInt(objDoc.body.scrollHeight);

	//var width  = parseInt(objDoc.body.scrollWidth);
	//var height = parseInt(objDoc.body.scrollHeight);
	//alert(obj.tagName + ' ' + obj.id);
	//alert(height + ' ' + width);
	//var height = eval(ifr.name+".document.body.scrollHeight");
	//var width  = eval(ifr.name+".document.body.scrollWidth");

	if((max_length/1) > 0 && height > (max_length/1)) height = (max_length/1);
	//if((max_width/1) > 0 && width > (max_width/1)) width = (max_width/1);

	//obj.style.width = width + "px";

	obj.style.height = null;
	obj.style.height = height + "px";
}



function SetPosition(ev,rel)
{

	var x,y;
	if(navIE)
	{
		x = ev.screenX;
		y = ev.screenY;
	}
	else
	{
		x = ev.pageX;
		y = ev.pageY;
	}

	obj = document.getElementById('WIDTH_SUB');
	obj.style.display =  "";
	x-500;
	rel = rel+x;
	location.href=rel;
}
//window.onload = AddEventToIframe;

window.onload = AddEventToIframe;

//window.onload = preViewSite;

function AddEventToIframe(event)
{

	var iframeObj = document.getElementsByTagName("IFRAME");
	var iframeObjCnt = iframeObj.length;
	var regExp = /^\//;
	var regExpWWW = /www\./;
	var iframeSrc = "";
	var iframeDiv = "";
	var arrIframeSrc = new Array();

	for(var i = 0; i < iframeObjCnt; i++)
	{
		if(!iframeObj[i]) continue;

		if(!regExp.test(iframeObj[i].src))
		{
			if(iframeObj[i].src.indexOf(window.location.hostname) == -1)
			{
				arrIframeSrc = new Array();
				iframeDiv = window.location.hostname;
				if(regExpWWW.test(window.location.hostname))
				{
					iframeDiv = window.location.hostname.replace(/www\./,'');
				}
				arrIframeSrc = iframeObj[i].src.split(iframeDiv);
				if(arrIframeSrc[1])
				{
					iframeObj[i].src = "http://" + window.location.hostname + arrIframeSrc[1];
				}
				// 경로의 도메인 부분을 hostname으로 변경.
			}
		}

		try
		{
			iframe_autoresize(iframeObj[i],620,10000);
			if(navIE)
			{
				iframeObj[i].attachEvent("onload",function(event) { IframeAutoResize(event); });
			}
			else
			{
				iframeObj[i].onload = function(event) { IframeAutoResize(event); };
			}
		}
		catch(e)
		{
			if(iframeObj[i].getAttribute("autoresizing") !="no"){		//by echos(2009-10-22)
				if(navIE)
				{
					iframeObj[i].attachEvent("onload",function(event) { IframeAutoResize(event); });
				}
				else
				{
					iframeObj[i].onload = function(event) { IframeAutoResize(event); };
				}
			}
		}
	}

	//미리보기 시 설정하는 기능(전체 싸이트에 DIV 씌운다)
	objPreDiv = document.getElementById('PREVIEW');

	if(objPreDiv!=null){
		if(objPreDiv.value=="Y")
			preViewSite();
	}


}

function EnlargeImageView(event,viewType)
{
	var objId = "EnlargeImageViewLayer";
	var imageSrc = event.srcElement.src;

	if(viewType == 1)
	{
		var pElm = top.document.createElement("DIV");
		var cElm = top.document.createElement("IMG");

		pElm.style.display = 'block';
		pElm.style.position = 'absolute';
		pElm.style.zIndex = 1;
		pElm.style.left = event.clientX;
		pElm.style.top = event.clientY;
		//pElm.style.left = 0;
		//pElm.style.top = 0;
		pElm.style.bgColor = "#ffffff";
		pElm.id = objId;

		cElm.src = imageSrc;
		pElm.appendChild(cElm);
		top.document.body.appendChild(pElm);
	}
	else
	{
		if(top.document.getElementById(objId))
			top.document.getElementById(objId).parentNode.removeChild(top.document.getElementById(objId));
	}
}

//전체 선택 및 선택 반전
function all_chk(form) {
	for( i= 0 ; i < form.elements.length ; i++) {
		if(form.elements[i].name == "uid_chk[]") {
			if(form.elements[i].checked== false) form.elements[i].checked = true;
			else form.elements[i].checked = false;
		}
	}
}

function SetFalse(obj,msg)
{
	alert(msg);
	obj.select();
	obj.focus();
	return false;
}

function getPosition()
{
    var height = document.body.scrollHeight;
    var Left  = document.body.scrollWidth;
}

// 출처 : 네이버 지식 검색(아이디 : bulls1223)
function GetParameter(arg)
{
	var regExpr = new RegExp("[&?]" + arg + "=(.*?)(&|$)");
	if (arg) r = window.location.search.match(regExpr);

	return r&&r[1]?r[1]:null;
}

function ExecProgram(programUrl,frameName)
{

	var obj = document.createElement("IFRAME");
	var thisArgusCnt = ExecProgram.arguments.length;
	var queryStr = "";

	if(thisArgusCnt > 2) var arguStr = ExecProgram.arguments[2];

	queryStr = BuildQueryStr(arguStr);
	obj.setAttribute("src",programUrl + queryStr);

	obj.style.display = 'none';
	obj.setAttribute("name",frameName);
	document.body.appendChild(obj);
}

function BuildQueryStr(arguStr)
{
	var queryStr = "";
	var rs = /\//g;
	var urlPattern = /^[http:]{1}///gi;

	if(!arguStr) return queryStr;

	var arguArr = new Array();
	if(arguStr.charAt(':'))
	{
		arguArr = arguStr.split(':');

		for(var i = 0; i < arguArr.length; i++)
		{
			if(i == 0) queryStr = '?';
			else queryStr = queryStr + '&';
			queryStr = queryStr + arguArr[i] + '=';
			if(document.getElementById(arguArr[i]))
			{
				if(urlPattern.test(document.getElementById(arguArr[i]).value))
				{
					queryStr = queryStr + encodeURIComponent(document.getElementById(arguArr[i]).value);
				}
				else
				{
					queryStr = queryStr + document.getElementById(arguArr[i]).value;
				}
			}
		}
	}
	else
	{
		var queryStrTmp = queryStr;
		queryStr = '?' + queryStr + '=';
		if(document.getElementById(arguArr[i]))
		{
			if(urlPattern.test(document.getElementById(arguArr[i]).value))
			{
				queryStr = queryStr + encodeURIComponent(document.getElementById(queryStrTmp).value);
			}
			else
			{
				queryStr = queryStr + document.getElementById(queryStrTmp).value;
			}
		}
	}

	return queryStr;
}

function preViewSite()
{
	preDiv = document.getElementById("PREVIEW");
	preDiv.style.width = parseInt(document.body.scrollWidth);
	preDiv.style.height = parseInt(document.body.scrollHeight);
}



