/**
 *	입력이 공백인지 검사하는 함수
 */
function isBlank(str) {
	// 길이가 0이면 공백
	if(str.length==0) {
		return true;
	}
			
	// 모든 캐릭터를 검사
	for(var i=0; i<str.length; i++) {
		if(str.charAt(i)!=' ') {
		// 공백이 아닌 문자가 있다면..
			return false;
		}
	}
	return true;
}

/**
 *	폼을 취소하는 함수
 */
function cancelForm(form) {
	form.reset();
	history.back();
	
	return false;
}


/**
 *	폼의 모든 checkbox를 체크하는 함수
 */
function selectAll(form)
{
	for(var i = 0; i < form.elements.length; i++) {
		if(form.elements[i].type == 'checkbox') {
			form.elements[i].checked = true;
		}
	}
}


/**
 *	폼의 checkbox를 선택/취소를 반복하는 함수
 */
function toggleSelect(form)
{
	var flag = true;
	
	if(form == null) {
		return;
	}
	
	for(var i = 0; i < form.elements.length; i++) {
		if(form.elements[i].type == 'checkbox') {
			if(form.elements[i].checked) {
				flag = false;
			}else {
				flag = true;
			}
			break;
		}
	}
	
	if(flag) {
		selectAll(form);
	}else {
		deselectAll(form);
	}
}


/**
 *	새로 창을 띄우는 함수		
 */
function openWindow(url,name,property) {
	var wnd = window.open(url, name, property);
	wnd.focus();
}

/**
 *	이메일주소체크
 */
function checkEmail(email)
{
	var oRegular = new RegExp("^([A-Z0-9_-]+)@([A-Z0-9_-]+)([.]([A-Z0-9_-]+))+$", "i");
	if(oRegular.exec(email)) {
		return true;
	}else {
		return false;
	}
}

// 패스워드가 일치하는지 검사하는 함수
function checkPasswd(passwd1, passwd2) {
	var oRegular = new RegExp("^([A-Z0-9]{8,12})$", "i");
	if(!oRegular.exec(passwd1)){
		window.alert('패스워드는 영문, 숫자 8 ~ 12자입니다.');
		return false;
	}else if(passwd1 != passwd2) {
		window.alert('패스워드 두 개가 일치하지 않습니다.');
		return false;
	}
	return true;
}

/**
 * 윤년인지 검사하는 함수
 */
function isLeapYear(year)
{
	if((year % 4) == 0 && (year % 100) != 0 || (year % 400) == 0) {
		return 1;
	}
	
	return 0;
}

/**
 * 유효한 날짜인지 검사하는 함수
 */
function isValidDate(year, month, day)
{
 	var monthDays = new Array(0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
	
	// 년 검사.
	if(year < 1) {
		return false;
	}
	
	// 월 검사.
	if(month < 1 || month > 12) {
		return false;
	}
	
	// 일 검사.
	if(day > monthDays[month]) {
		// 윤년에 2월 29일이 아니라면..
		if(!(day == 29 && month == 2 && isLeapYear(year))) {
			return false;
		}
	}

	return true;
}