function chkForm(form)
{
	F_ele = new_elements(form)
	for(i=0;i<F_ele.length;i++)
	{
		k=F_ele[i];
		currEl = form.elements[k]; 
		fname=currEl.getAttribute("name");
		ftype=currEl.type.toUpperCase();
		hname=currEl.getAttribute("hname");

		if(hname==null) continue;

		// Æû°ËÁõ-ÇÊ¼öÇ×¸ñ required
		if(currEl.getAttribute("required") != null && ftype !="CHECKBOX")
		{
			if(ftype=="RADIO")
			{
				if(chkRadio(form,currEl,hname)==false)return false;
			}
			else
			{
				if(chkText(currEl,hname)==false)return false;
			}
		}

		// Æû°ËÁõ-¹®ÀÚ¿­±æÀÌ maxlength  + Á¤±Ô½Ä			
		if(ftype == "TEXT" || currEl.tagName.toUpperCase() == "TEXTAREA" || ftype == "PASSWORD")
		{
			//# ¹®ÀÚ¿­ ±æÀÌ
			if(currEl.getAttribute("maxlength") != null && currEl.value.length > 0)
			{ 
				if(!chkLength(currEl,currEl.getAttribute("maxlength"),getName(currEl)))
				{
					return false;
				}
				if(!chkMinMax(currEl,getName(currEl)))
					return false;	
			}
			//# Á¤±Ô½Ä
			if(currEl.getAttribute("option") != null && currEl.value.length > 0)
			{ 
				if(!chkPatten(currEl,currEl.option,getName(currEl))) 
					return false; 
			}		
			//# Ãß°¡¿É¼Ç (¿É¼Ç°ªÇÊ¼ö addreq)
			if(currEl.getAttribute("addreq") != null)
			{ 
				if(!chkChekedText(form,currEl))
					return false;
			}
		}

		// Æû°ËÁõ-Ã¼Å©¹Ú½º Ã¼Å©°¹¼ö ¹× °ªÀÇ ÃÖ¼Ò°ª ÃÖ´ë°ª min max 
		if(ftype == "CHECKBOX")
		{
			if(chkCheckNum(form,currEl,hname)==false) return false;
		}
	}
	return true;
}


/* ÆûÀÇ ±¸¼º¿ä¼Ò Áß ¿¹ºñ·Î °Ë»ö¿ä¼Ò¸¸ °¡Á®¿Â´Ù. */
function new_elements(form)
{
	F_ele = new Array();
	var tmp_ele;
	var j=0;
	for(i = 0; i < form.elements.length; i++)
	{
		currEl = form.elements[i]; 
		fname=currEl.getAttribute("name");
		ftype=currEl.type.toUpperCase();	 // ´ë¹®ÀÚ
		ftag=currEl.tagName.toUpperCase();
		if(ftype =="TEXT" || ftype =="RADIO" || ftype =="CHECKBOX" || ftag =="SELECT" || ftag=="TEXTAREA")
		{
			if(ftype=="RADIO" || ftype=="CHECKBOX")
			{
				if(tmp_ele!=fname)		// Ã¼Å©¹Ú½º¿Í ¶óµð¿À´Â Áßº¹Ã¼Å©¸¦ ¸·´Â´Ù.
				{
					F_ele[j]=i;
					j++;
					tmp_ele=fname;
				}
			}
			else
			{
				F_ele[j]=i;
				j++;
			}
		}
	}
	return F_ele; // ¹è¿­¸®ÅÏ
}


/* º¸Á¶ ½ºÅ©¸³Æ® ÇÔ¼ö */
function trim(s)
{
	return s.replace( /^\s*/, "" ).replace( /\s*$/, "" );
}

function ChangeFocus(cur,next) 
{
	if( cur.value.length == cur.size) {
		next.focus();
	}
}

function getName(field)
{
	if (field.hname.length > 0)
	{
		return field.hname;
	} else {
		return field.name;
	}	
}

function chkText(field,hname)
{ 
	Field=trim(field.value);
	if(Field.length < 1){ 
		if (field.tagName.toUpperCase() == "SELECT")
			alert("[" + hname + "] Ç×¸ñÀ» ¼±ÅÃÇÏ¿© ÁÖ½Ê½Ã¿ä."); 
		else
			alert("[" + hname + "] Ç×¸ñÀ» ÀÔ·ÂÇÏ¿© ÁÖ½Ê½Ã¿ä."); 
			
		field.focus(); 
		return false; 
	} 
	return true; 
}

function chkRadio(form,field,hname)
{
	fieldname = eval(form.name+'.'+field.name);
	for (t=0;t<fieldname.length;t++)
	{
		if (fieldname[t].checked)
		{
			return true; 				
			break;
		}
	}
	alert("[" + hname + "] Ç×¸ñÀ» ¼±ÅÃÇÏ¿© ÁÖ½Ê½Ã¿ä."); 
	field.focus(); 
	return false; 
}

function getLength(str) 
{
	var l = 0;
	for (var t=0; t<str.length; t++) 
		l += (str.charCodeAt(t) > 128) ? 2 : 1;
	return l;
}

function chkLength(field,len,hname)
{
	if(getLength(field.value) > len){ 
		alert(hname + "\n\nÃÖ´ë " + len + "byte·Î ÀÔ·ÂÀÌ Á¦ÇÑµÇ¾î ÀÖ½À´Ï´Ù.\n(¿µ¹®¼ýÀÚ1byte,ÇÑ±Û2byte·Î °è»ê)"); 
		field.focus(); 
		return false; 
	}
	return true; 
}

function chkMinMax(field, hname)
{ 
	Field=parseInt(trim(field.value));
	if(field.getAttribute("min"))
	{
		min=parseInt(field.getAttribute("min"));
		if(Field < min)
		{
			alert("[" + hname + "] Ç×¸ñÀÇ °ª("+Field+")ÀÌ ÃÖ¼Ò¼³Á¤°ª "+min+"º¸´Ù ÀÛ½À´Ï´Ù.");
			field.focus();
			return false;
		}
	}
	if(field.getAttribute("max"))
	{
		max=parseInt(field.getAttribute("max"));
		if(Field > max)
		{
			alert("[" + hname + "] Ç×¸ñÀÇ °ª("+Field+")ÀÌ ÃÖ´ë¼³Á¤°ª "+max+"º¸´Ù Å®´Ï´Ù.");
			field.focus();
			return false;
		}
	}
	return true; 
}

function chkMinMax_tmp(field, hname)
{ 
	Field=parseInt(trim(field.value));
	if(field.getAttribute("min") || field.getAttribute("max"))
	{
		min=parseInt(field.getAttribute("min"));
		max=parseInt(field.getAttribute("max"));
		if(Field < min || Field > max)
		{
			alert("[" + hname + "] ÀÇ °ªÀ» "+min+"~"+max+"Á¡ »çÀÌ·Î Æò°¡ÇØ ÁÖ¼¼¿ä");
			field.focus();
			return false;
		}
	}
	return true; 
}


function chkPatten(field,patten,hname)
{ 
	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 regAlpha2 =/^[ a-zA-Z]+$/; //¿µ¹®+°ø¹é
	var regHost =/^[a-zA-Z-]+$/; 
	var regHangul =/[°¡-ÆR]/; // ÇÑ±ÛÆ÷ÇÔ
	var regHangulOnly =/^[°¡-ÆR]*$/; // ÇÑ±Û¸¸
	var regHangulOnly2 =/^[ °¡-ÆR]*$/; // ÇÑ±Û + °ø¹é¸¸
	var regHangulEng =/[°¡-ÆRa-zA-Z]/; //ÇÑ±Û°ú ¿µ¹®¸¸
	var regHangulEng2 =/[ °¡-ÆRa-zA-Z]/; //ÇÑ±Û°ú ¿µ¹® ±×¸®°í °ø¹é¸¸
	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(hname + "\n\nÇ×¸ñÀÇ Çü½ÄÀÌ ¿Ã¹Ù¸£Áö ¾Ê½À´Ï´Ù."); 
		field.focus(); 
		return false; 
	} 
	return true; 
}

function chkCheckNum(form,field,hname)
{
	var num = 0;
	fieldname = eval(form.name+'.'+field.name);
	for (t=0;t<fieldname.length;t++)
	{ 
		if (fieldname[t].checked)
		{
			num++;
		}
	}

	min_num=currEl.getAttribute("min");
	max_num=currEl.getAttribute("max");

	if (num < min_num)
	{
		alert(hname + '\n\nÃÖ¼Ò ' + min_num + '°³¸¦ ¼±ÅÃÇÏ¼Å¾ß ÇÕ´Ï´Ù.');
		return false;
	}
	if (num > max_num)
	{
		alert(hname + '\n\nÃÖ´ë ' + max_num + '°³±îÁö ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.');
		return false;
	}
	return true;		
}

function chkChekedText(form,currEl)
{
	RA=currEl.getAttribute("addreq");
	var RA_arr = new Array();
	RA_arr=RA.split(":");
	fv=RA_arr[1]-1;

	fm=form.getAttribute("name");
	fn=eval(fm+"."+RA_arr[0]);

	//k=fn.length;

	if(fn[fv].checked==true)
	{
		if(!chkText(currEl,getName(currEl))) 
		return false; 
	}
	
	if(fn[fv].checked==false) currEl.value="";
	return true;
}

//---------------------------------------------------------------------------------------------

function now_ing(form)
{
		var ing_tmp=new Array();
		ing=form.poll_ing.value;
		ing_tmp=ing.split(":");
		k=ing_tmp[0];
		t=ing_tmp[1];

		a=k/t;
		k=Math.round(a*100);
		ING1.innerText=k;

		j=Math.round(a*10);
		var ing_html="";
		for(i=1;i<11;i++)
		{
			if(j>=i) ing=1
			else ing=0
			ing_html=ing_html+"<img src=\"img/"+ing+".gif\" width=8 height=8 hspace=4>";
		}
		ING2.innerHTML=ing_html;
}

function next_page(form)
{
		this_SH=form.this_SH.value;
		next_SH=form.next_SH.value;

		ThisSH=eval(this_SH+".style");
		NextSH=eval(next_SH+".style");
		ThisSH.display="none";
		NextSH.display="block";
		show_moive(next_SH); // µ¿¿µ»ó ÆäÀÌÁö
}

function datamove(form,real_form)
{
	// ½ÇÁ¦ Æû°ªÀ» ÃÊ±âÈ­ÇÑ´Ù (Àß¸øÇØ¼­ ¹öÆ°À» 2¹ø ´­·¯ °ªÀÌ Áßº¹µÇÁö ¾Êµµ·Ï ÇÏ±â À§ÇÔ)
	real_form_init(form,real_form);

	// °°Àº ±×·ìÀÇ °ªÀ» ¹­¾î¼­ ½ÇÁ¦ Àü¼ÛÆûÀ¸·Î º¸³½´Ù.
	F_ele = new_elements(form);
	for(i=0;i<F_ele.length;i++)
	{
		k=F_ele[i];	
		currEl = form.elements[k]; 
		fname=currEl.getAttribute("name");
		ftype=currEl.type.toUpperCase();
		group=currEl.getAttribute("group");

/* ÀÌ½Ä¿¡ ¸Õ°¡°¡ ¿À·ù°¡ ÀÖ½¿..
		if(group !=null)
		{
			if(ftype=="CHECKBOX")	val=get_checkvalue(form,fname);
			else if(ftype=="RADIO") val=get_radiovalue(form,fname);
			else val =currEl.getAttribute("value");

			if(val !="")
			{
				fname2=eval("document."+real_form+"."+group);
				fname2_val=fname2.value;
				if(fname2_val) fname2.value=fname2_val+"::"+val;
				else fname2.value = val;			
			}
		}
		else
		{
			val =currEl.getAttribute("value");
			fname2=eval("document."+real_form+"."+fname);
			fname2.value=val;		
		}
*/

		if(ftype=="CHECKBOX")	val=get_checkvalue(form,fname);
		else if(ftype=="RADIO") val=get_radiovalue(form,fname);
		else
		{	
			val =currEl.getAttribute("value");
			val=val.replace(/,/g,'_'); // ÄÞ¸¶¸¦ ¹Ù²Û´Ù.
		}
		if(group !=null)
		{
			if(val !="")
			{
				fname2=eval("document."+real_form+"."+group);
				fname2_val=fname2.value;
				if(fname2_val) fname2.value=fname2_val+"::"+val;
				else fname2.value = val;			
			}
		}
		else
		{
			fname2=eval("document."+real_form+"."+fname);
			fname2.value=val;		
		}

	}
}	

function real_form_init(form,real_form)
{
	F_ele = new_elements(form);
	for(i=0;i<F_ele.length;i++)
	{
		k=F_ele[i];	
		currEl = form.elements[k]; 
		fname=currEl.getAttribute("name");
		group=currEl.getAttribute("group");

		if(group !=null) fname2=eval("document."+real_form+"."+group);
		else fname2=eval("document."+real_form+"."+fname);
		
		fname2.value="";
	}	
}

function get_checkvalue(form,fname)
{
	check=eval("form."+fname);
	k=check.length;
	val="";
	p=0;
	var temp = new Array();
	for(j=0;j<k;j++)
	{
		if(check[j].checked==true)
		{ 
			temp[p]=check[j].value;
			p++;
		}
		val = temp.join(",");
	}
	return val;
}

function get_radiovalue(form,fname)
{
	radio=eval("form."+fname);
	k=radio.length;
	for(j=0;j<k;j++)
	{
		if(radio[j].checked==true)
		{ 
			val=radio[j].value;
			break;
		}
	}
	return val;
}


function chk_same_val(arr)
{ // ¹è¿­Áß °°Àº °ªÀ» °¡Áö°í ÀÖ´ÂÁö Ã¼Å© (¼øÀ§Çü ¹Ú½º¾²±â)
	cnt=arr.length;
	for(i=0;i<cnt;i++)
	{
		a1=arr[i];
		for(j=0;j<cnt;j++)
		{
			a2=arr[j];
			if(i != j)
			{
				if(a1==a2)
				{
					return false;
					break;
				}
			}
		}
	}	
}

//---------------------------------------------------------------------------------------------