var PATTERN = new Array();
PATTERN["id"] = /^[0-9a-z]{4,12}$/;
PATTERN["password"] = /^[0-9a-z]{4,12}$/i;
PATTERN["nickname"] = /^[0-9a-z가-힣]{1,10}$/i;
PATTERN["email"] = /^[0-9a-z\-\_]+\@[0-9a-z\-\.]+\.[a-z]{2,4}$/i;
PATTERN["required"] = /[^\s\t\r\n]+/;
PATTERN["numeric"] = /^[0-9]+$/;
PATTERN["integer"] = /^(0|\-?[1-9]{1}[0-9]*)$/;
PATTERN["positive"] = /^[1-9]{1}[0-9]*$/;
PATTERN["negative"] = /^\-[1-9]{1}[0-9]*$/;

var MESSAGE = new Array();
MESSAGE["id"] = " : 4바이트~12바이트의 영문 소문자와 숫자만 가능합니다.";
MESSAGE["password"] = " : 4바이트~12바이트의 영문자와 숫자만 가능합니다.";
MESSAGE["nickname"] = " : 1자~10자의 영문자와 숫자, 한글만 가능합니다.";
MESSAGE["email"] = " : 올바르지 못한 메일형식입니다.";
MESSAGE["required"] = " : 필수항목입니다.";
MESSAGE["numeric"] = " : 숫자형 문자만 가능합니다.";
MESSAGE["integer"] = " : 숫자만 가능합니다.";
MESSAGE["positive"] = " : 양수만 가능합니다.";
MESSAGE["negative"] = " : 음수만 가능합니다.";

function validate_element(element)
{
	var array = element.className.split(" ");
	for(var i = 0, count = array.length; i < count; i++)
	{
		var attribute = array[i];
		if(PATTERN[attribute] && (attribute == "required" || element.value) && PATTERN[attribute].test(element.value) == false)
		{
			window.alert(element.title + MESSAGE[attribute]);
			if(element.type != "hidden" && element.style.display != "none")
			{
				element.focus();
			}
			return false;
		}
	}
	return true;
}

function validate_form(form)
{
	var _validate_str = true;
	for(var i = 0, count = form.length; i < count; i++)
	{
		var element = form.elements[i];
		if(element.title && element.className && validate_element(element) == false)
		{
			_validate_str = false;
			//return false;
		}
	}
	return _validate_str;
}
