function chkForm(f)
{ 
	var i,currEl;

	for(i = 0; i < f.elements.length; i++){ 
		currEl = f.elements[i]; 
		//ÇÊ¼ö Ç×¸ñÀ» Ã¼Å©ÇÑ´Ù.  
		if (currEl.getAttribute("required") != null) { 
			if(currEl.type == "TEXT" || currEl.type == "text" || 
			   currEl.tagName == "SELECT" || currEl.tagName == "select" || 
			   currEl.tagName == "TEXTAREA" || currEl.tagName == "textarea"){ 
				if(!chkText(currEl,currEl.hname)) return false; 

			} else if(currEl.type == "PASSWORD" || currEl.type == "password"){ 
				if(!chkText(currEl,currEl.hname)) return false; 

			} else if(currEl.type == "CHECKBOX" || currEl.type == "checkbox"){ 
				if(!chkCheckbox(f, currEl,currEl.hname)) return false; 

			} else if(currEl.type == "RADIO" || currEl.type == "radio"){ 
				if(!chkRadio(f, currEl,currEl.hname)) return false; 

			}
		}
		// ÀÔ·Â ÆäÅÏÀ» Ã¼Å©ÇÑ´Ù.
		if(currEl.getAttribute("option") != null && currEl.value.length > 0){ 
			if(!chkPatten(currEl,currEl.option,currEl.hname)) return false; 
		} 
	}
} 

function chkPatten(field,patten,name)
{ 
	var regNum =/^[0-9]+$/; 
	var regPhone =/^[0-9]{2,3}-[0-9]{3,4}-[0-9]{4}$/; 
	var regMail =/^[_a-zA-Z0-9-]+@[._a-zA-Z0-9-]+\.[a-zA-Z]+$/; 
	var regDomain =/^[.a-zA-Z0-9-]+.[a-zA-Z]+$/; 
	var regAlpha =/^[a-zA-Z]+$/; 
	var regHost =/^[a-zA-Z-]+$/; 
	var regHangul =/[°¡-ÆR]/; 
	var regHangulEng =/[°¡-ÆRa-zA-Z]/; 
	var regHangulOnly =/^[°¡-ÆR]*$/; 
	var regId = /^[a-zA-Z]{1}[a-zA-Z0-9_-]{4,15}$/; 
	var regDate =/^[0-9]{4}-[0-9]{2}-[0-9]{2}$/; 

	patten = eval(patten); 
	if(!patten.test(field.value)){ 
		alert(name + "\n\nÇ×¸ñÀÇ Çü½ÄÀÌ ¿Ã¹Ù¸£Áö ¾Ê½À´Ï´Ù."); 
		field.focus(); 
		return false; 
	} 
	return true; 
} 

function chkText(field, name)
{ 
	if(field.value.length < 1){ 
		alert(name); 
		field.focus(); 
		return false; 
	} 
	return true; 
}

function chkCheckbox(form, field, name)
{
	fieldname = eval(form.name+'.'+field.name);
	if (!fieldname.checked){
		alert(name); 
		field.focus(); 
		return false; 
	}
	return true; 
}

function chkRadio(form, field, name)
{
	fieldname = eval(form.name+'.'+field.name);
	for (i=0;i<fieldname.length;i++) {
		if (fieldname[i].checked)
			return true; 
	}
//	alert(name); 
	field.focus(); 
	return false; 
}

function moveFocus(num,fromform,toform)
{	
	var str = fromform.value.length;
	if(str == num){
		if (event.keyCode!=8 && event.keyCode!=46)  toform.focus();		
	}
}

var _centerWnd = null;

// ¸®ÅÏ°ªÀ» ¹ÞÀ» ÇÊ¿ä°¡ ¾ø°í, »õÃ¢¿¡¼­ opener¸¦ È£ÃâÇÒ ÇÊ¿ä°¡ ¾ø´Â °æ¿ì »ç¿ë
// -------------------------------------------------------------------------------
function __getBrowserType()
{
    var userAgent = navigator.userAgent;

    if ( userAgent.indexOf('Opera') > 0 )
        return "OPERA";
    else if ( userAgent.indexOf('Firefox') > 0 )
        return "FIREFOX";
    else
        return "MSIE";

}
function __mgOpenPopup( szHtmlPage, szSetting, nWidth, nHeight )
{
	var browserType = navigator.appName
	var browserVersion = parseInt(navigator.appVersion)

	if ( browserType == "Microsoft Internet Explorer" && browserVersion >= 4 ) {
		OpenModalDialog( szHtmlPage, szSetting, nWidth+6, nHeight+28 );
	} else {
		WndCenterOpen( szHtmlPage, "_WndPopup", nWidth, nHeight, scroll, szSetting );	
	}

}

function WndCenterOpen(mypage,myname,w,h,scroll,option)
{
    LeftPosition = (screen.width) ? (screen.width-w)/2 : 0;
    TopPosition = (screen.height) ? (screen.height-h)/2 : 0;
    settings = 'height='+h+',width='+w+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+option;
    _centerWnd = window.open(mypage,myname,settings)

	return _centerWnd;
}


function OpenModalDialog( HtmlFile, vOptions, nWidth, nHeight )
{
    var browser_type = __getBrowserType();

    if ( browser_type == "OPERA" || browser_type == "FIREFOX" ) {
        var qResult = window.open( HtmlFile, vOptions,
                        "Width:"+nWidth+"px;Height:"+nHeight+"px;toolbar:no;location:no;help:no;directories:no;status:no;menubar:no;scrollbars:no;resizable:no");
        return qResult;
    } else {
        var qResult = window.showModalDialog( HtmlFile, vOptions,
                        "dialogWidth:"+nWidth+"px;dialogHeight:"+nHeight+"px;toolbar:no;location:no;help:no;directories:no;status:no;menubar:no;scrollbars:no;resizable:no");
        return qResult;
    }
}

function GetCookie( 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 ""; 
}

function PopupDisplay( id, sizew, sizeh, scroll, wtype, nx, ny )
{
	var pHtmlPage = "../popup/popup.php?uid="+id;

	// ¿À´ÃÀº ±×¸¸º¸±â?
	if ( GetCookie( "cookie_popup_"+id ) ) {
		return;
	}

	if ( nx == -1 && ny == -1 ) { // center mode

		if ( wtype == 0 ) { // HtmlWnd
			WndCenterOpen( pHtmlPage, 'popup_'+id, sizew, sizeh, scroll, '' )
		} else { // Dialog
			OpenModalDialog( pHtmlPage, "", sizew, sizeh )
		}

	} else {
		if ( wtype == 0 ) { // HtmlWnd
    		var settings = 'height='+sizeh+',width='+sizew+',top='+nx+',left='+ny+',scrollbars='+scroll;
		    _centerWnd = window.open( pHtmlPage, 'popup_'+id, settings );

		} else { // Dialog
    		window.showModalDialog( pHtmlPage, "", "dialogWidth:"+sizew+"px;dialogHeight:"+sizeh+"px;toolbar:no;location:no;help:no;directories:no;status:no;menubar:no;scrollbars:no;resizable:no;dialogLeft:"+nx+";dialogTop:"+ny );
		}
	}	
}



//¿ìÆí¹øÈ£ °Ë»öÃ¢ ¶ç¿ì±â
function zipopen(num){
	window.open("../member/search_post.php?mode="+num,"_box","width=536,height=350,scrollbars=yes");
}

// »õÃ¢ ¶ç¿ì±â
function openwindow(name, url, width, height, scrollbar) {
	scrollbar_str = scrollbar ? 'yes' : 'no';
	window.open(url, name, 'width='+width+',height='+height+',scrollbars='+scrollbar_str);
}



function gopage(selname){
	var i=selname.selectedIndex;
	if(selname.options[i].value) location=selname.options[i].value;
}

//·¹ÀÌ¾î ¸ð´ÞÃ¢À¸·Î ¶ç¿ì±â
function showModal(name, url, width, height) {
	var win = showModalDialog(url,name,"dialogWidth:"+width+"px; dialogHeight:"+height+"px; center=yes; screenTop=yes; scroll=auto; status=no; help=no;");
}

//¾ÆÀÌÇÁ·¹ÀÓ ¸®»çÀÌÁî
function iframe_autoresize(arg) {
	arg.width = eval(arg.name+".document.body.scrollWidth")+18;
    arg.height = eval(arg.name+".document.body.scrollHeight");
}

var req;	//°ª º¸³¾ requestº¯¼ö 

//request°´Ã¼»ý¼º ÇÔ¼ö 
// function from http://www-128.ibm.com/developerworks/kr/library/j-ajax1/index.html 
function newXMLHttpRequest() {
	var xmlreq = false;

	if(window.XMLHttpRequest) {
		xmlreq = new XMLHttpRequest(); 
	} else if (window.ActiveXObject) { 
	    try { 
			xmlreq = new ActiveXObject("Msxml2.XMLHTTP"); 
	    } catch (e1) { 
			try { 
		        xmlreq = new ActiveXObject("Microsoft.XMLHTTP"); 
			} catch (e2) {
		    }
	    }
	}
	return xmlreq; 
}

//¹®ÀÚ¿­ ÀÚ¸®¼ö ¸ÂÃÄ¼­ Ã¤¿ì±â
function FixString(obj,number,str){	
	var str_string;

	if (obj.value) {
		number=parseInt(number);
	
		for(i=0;i<number;i++) str_string=str_string+str;
		
		var fix_string=str_string+obj.value;

		obj.value=fix_string.substr(fix_string.length-number,number);
	}
}

//ÀÌ¹ÌÁö ·Ñ¿À¹ö È¿°ú
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


//input¹Ú½º¿¡ value°ª Ãâ·Â
function ChangeText (target,type) 
{  
       if ( target.value == target.defaultValue && type==0) target.value = ''; 
       if ( !target.value && type==1) target.value = target.defaultValue; 
}


//¸µÅ© µå·Ó´Ù¿î ¸Þ´º
var disappeardelay=250  //menu disappear speed onMouseout (in miliseconds)
var enableanchorlink=0 //Enable or disable the anchor link when clicked on? (1=e, 0=d)
var hidemenu_onclick=1 //hide menu when user clicks within menu? (1=yes, 0=no)


var ie5=document.all
var ns6=document.getElementById&&!document.all

function getposOffset(what, offsettype){
    var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
    var parentEl=what.offsetParent;
    while (parentEl!=null){
        totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
        parentEl=parentEl.offsetParent;
    }
    return totaloffset;
}

function showhide(obj, e, visible, hidden){
    if (ie5||ns6)
        dropmenuobj.style.left=dropmenuobj.style.top=-500
    if (e.type=="click" && obj.visibility==hidden || e.type=="mouseover")
        obj.visibility=visible
    else if (e.type=="click")
        obj.visibility=hidden
}

function iecompattest(){
    return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

function clearbrowseredge(obj, whichedge){
    var edgeoffset=0
    if (whichedge=="rightedge"){
    var windowedge=ie5 && !window.opera? iecompattest().scrollLeft+iecompattest().clientWidth-15 : window.pageXOffset+window.innerWidth-15
        dropmenuobj.contentmeasure=dropmenuobj.offsetWidth
    if (windowedge-dropmenuobj.x < dropmenuobj.contentmeasure)
        edgeoffset=dropmenuobj.contentmeasure-obj.offsetWidth
    }
    else{
    var windowedge=ie5 && !window.opera? iecompattest().scrollTop+iecompattest().clientHeight-15 : window.pageYOffset+window.innerHeight-18
        dropmenuobj.contentmeasure=dropmenuobj.offsetHeight
    if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure)
        edgeoffset=dropmenuobj.contentmeasure+obj.offsetHeight
    }
    return edgeoffset
}

function dropdownmenu(obj, e, dropmenuID){
    if (window.event) event.cancelBubble=true
    else if (e.stopPropagation) e.stopPropagation()
    if (typeof dropmenuobj!="undefined") //hide previous menu
        dropmenuobj.style.visibility="hidden"
        clearhidemenu()
    if (ie5||ns6){
        obj.onmouseout=delayhidemenu
        dropmenuobj=document.getElementById(dropmenuID)
    if (hidemenu_onclick) dropmenuobj.onclick=function(){dropmenuobj.style.visibility='hidden'}
        dropmenuobj.onmouseover=clearhidemenu
        dropmenuobj.onmouseout=ie5? function(){ dynamichide(event)} : function(event){ dynamichide(event)}
        showhide(dropmenuobj.style, e, "visible", "hidden")
        dropmenuobj.x=getposOffset(obj, "left")
        dropmenuobj.y=getposOffset(obj, "top")
        dropmenuobj.style.left=dropmenuobj.x-clearbrowseredge(obj, "rightedge")+"px"
        dropmenuobj.style.top=dropmenuobj.y-clearbrowseredge(obj, "bottomedge")+obj.offsetHeight+"px"
    }
    return clickreturnvalue()
}

function clickreturnvalue(){
    if ((ie5||ns6) && !enableanchorlink) return false
    else return true
}

function contains_ns6(a, b) {
    while (b.parentNode)
    if ((b = b.parentNode) == a)
    return true;
    return false;
}

function dynamichide(e){
    if (ie5&&!dropmenuobj.contains(e.toElement))
        delayhidemenu()
    else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget))
    delayhidemenu()
}

function delayhidemenu(){
    delayhide=setTimeout("dropmenuobj.style.visibility='hidden'",disappeardelay)
}

function clearhidemenu(){
    if (typeof delayhide!="undefined")
        clearTimeout(delayhide)
}


// ÀÌ¹ÌÁö °¶·¯¸® È¿°ú
function changeImage(filename) { 
	map.src = filename;
}
