/******************************************************************
	title : 타입체크 v1.0
	contents : 데이터를 정규표현식을 이용하여 형식에 맞는지 검사
	함수첫문자가  c인 함수는 는 1 과 0을 리턴시키는 함수
	k인 함수는 실제 체크함수를 이용 검사,경고후 리턴
	by : http://nyaha.net
	******************************************************************/

	function cEng(data) {
		if(/^[a-zA-Z]*$/.test(data)) {
			return true;
		} else {
			return false;
		}
	}

	function cLowerEng(data) {
		if(/^[a-z]*$/.test(data)) {
			return true;
		} else {
			return false;
		}
	}

	function cNum(data) {
		if(/^[0-9]*$/.test(data)) {
			return true;
		} else {
			return false;
		}
	}

	function cLowerEngNum(data) {
		if(/^[a-z0-9]*$/.test(data)) {
			return true;
		} else {
			return false;
		}
	}

	function cEngNum(data) {
		if(/^[a-zA-Z0-9]*$/.test(data)) {
			return true;
		} else {
			return false;
		}
	}

	function cTelNum(data) {
		if(/^[0-9]{1,4}([-]|[0-9]{1,4}){1,2}$/.test(data)) {
			return true;
		} else {
			return false;
		}
	}

	function cDate(data) {
		if(/^[1-2][0-9]{3}-[0-2][0-9]-[0-3][0-9]$/.test(data)) {
			return true;
		} else {
			return false;
		}
	}

	function cMinMax(data, minlength,maxlength) {
		if(minlength == 0) {
			if(data.value.length<=maxlength) {
				return true;
			} else {
				return false;
			}
		}

		if(maxlength == 0) {
			if(data.value.length>=minlength) {
				return true;
			} else {
				return false;
			}
		}

		if(data.value.length>=minlength && data.value.length<=maxlength) {
			return true;
		} else {
			return false;
		}
	}

	function kMinMax(data, minlength,maxlength, message) {
		if(data.value!='' && !cMinMax(data, minlength,maxlength)) {
			message_data = ' * '+message+'은(는) ';
			if(minlength!=0) {
				message_data += '최소 '+minlength+' 자 이상 ';
			}
			if(maxlength!=0) {
				message_data += '최대 '+maxlength+' 자 이하로';
			}
			message_data += '입력하세요. ';
			alert(message_data);
			return false;
		} else {
			return true;
		}
	}

	function kNum(data, message) {
		if(data.value!='' && !cNum(data.value)) {
			alert(' * '+message+'은(는) 숫자만 입력가능합니다. * ');
			return false;
		} else {
			return true;
		}
	}

	function kTelNum(data, message) {
		if(data.value!='' && !cTelNum(data.value)) {
			alert(' * '+message+'의 번호형식이 올바르지 않습니다. * ');
			return false;
		} else {
			return true;

		}
	}

	function kEng(data,message) {
		if(data.value!='' && !cEng(data.value)) {
			alert(' * '+message+'은(는) 영문자만 입력가능합니다. * ');
			return false;
		} else {
			return true;
		}
	}

	function kLowerEng(data,message) {
		if(data.value!='' && !cLowerEng(data.value)) {
			alert(' * '+message+'은(는) 영문소문자만 입력가능합니다. * ');
			return false;
		} else {
			return true;
		}
	}

	function kEngNum(data, message) {
		if(data.value!='' && !cEngNum(data.value)) {
			alert(' * '+message+'은(는) 영문자와 숫자만 입력가능합니다. *' );
			return false;
		} else {
			return true;
		}
	}

	function kLowerEngNum(data, message) {
		if(data.value!='' && !cEngNum(data.value)) {
			alert(' * '+message+'은(는) 영문소문자와 숫자만 입력가능합니다. *' );
			return false;
		} else {
			return true;
		}
	}

	function kNull(data,message) {
		if(data.value=='') {
			alert(' * '+message+'란을 입력하세요. * ');
			return false;
		} else {
			return true;
		}
	}

/******************************************************************
	title : 메일&웹주소체크 v1.0
	contents : E-Mail 과 Homepage 의 주소형식을 검사
	by : http://nyaha.net
	******************************************************************/

	function cMail(mail) {
		if(/^[a-zA-Z0-9\-_]*@[a-zA-Z0-9]*[a-zA-Z](\.[a-zA-Z]{2,4}){1,2}$/.test(mail)) {
			return true;
		} else {
			return false;
		}
	}

	function cHomepage(homepage) {
		if(/^http\:\/\/[a-zA-Z\-][a-zA-Z0-9\-]*[a-zA-Z](\.[a-zA-Z]*){1,}/.test(homepage)) {
			return true;
		} else {
			return false;
		}
	}

	function kMail(data, message) {
		if(data.value!='' && !cMail(data.value)) {
			alert(' * '+message+'의 메일주소형식이 올바르지 않습니다. *' );
			return false;
		} else {
			return true;
		}
	}

	function kHomepage(data, message) {
		if(data.value!='' && !cHomepage(data.value)) {
			alert(' * '+message+'의 웹사이트주소형식이 올바르지 않습니다. *' );
			return false;
		} else {
			return true;
		}
	}

/******************************************************************
	title : 멀티셀렉트 v2.1.1
	update : 2008-02-18
	contents : Select, Checkbox, Radio, Text 의 값을 검사
	자동으로 Checked, Selected 값을 넣습니다.
	by : http://nyaha.net
 */

	function mSelect(input_name,input_value) {
		if(!input_name) {
			return false;
		}
		if(!(fn = document.getElementById(input_name))) {
			name = document.getElementsByName(input_name);
			fn = name[0];
		}
		if(fn!=null && input_value != '') {
			if(fn.type=='radio') {
				count = document.getElementsByName(input_name).length;
				for(i=0;i<count;i++) {
					if(document.getElementsByName(input_name)[i].value==input_value) {
						document.getElementsByName(input_name)[i].checked=true;
					}
				}
			} else {
				switch (fn.type) {
					case 'checkbox' :
						if(fn.value==input_value) {
							fn.checked = true;
						}
						break;
					case 'select-one' :
						fn.value = input_value;
						if(fn.value=='') {
							fn.options[0].selected = true;
						}
						break;
					case 'text' :
					case 'textarea' :
						fn.value = input_value;
						break;
					default :
				}
			}
		}
	}

/******************************************************************
	title : mEmbed v1.1
	contents : IE패치로 인한 embed 태그를 js로 출력한다.
	이 소스가 들어가는 JS파일은 반드시 src로 외부에서 호출되어야하고
	<script>mEmbed("src=source.swf","width=100","height=100", "wmode=Tranpsarent");</script>
	와 같은 형식으로 플래쉬 태그를 대신해서 넣어준다.
	mGET 함수는 두배열을 이용한 키값의 Data 를 가져오는 함수.(mEmbed에 필요)
	ex) srcdata = mGET(key,value,'src'); -> php의 $srcdata = $array['src'];
	by : http://nyaha.net
 */

	function mGET(arrayKey, arrayValue, Value) {
		count = arrayKey.length;
		for(i=0;i<count;i++) {
			if(arrayKey[i]==Value) {
				return arrayValue[i];
				break;
			}
		}
	}

	function mEmbed() {
		var key = new Array();
		var value = new Array();
		var contents;
		var embed_type;
		var error_check=0;
		var i, j;
		var count;
		var data;
		var temp;
		if(mEmbed.arguments.length==1) {
			contents = mEmbed.arguments[0];
		} else {
			for(i=0;i<mEmbed.arguments.length;i++) {
				temp = mEmbed.arguments[i].replace(/"|'/g,"");
				data = temp.split('=');
				key[i] = data[0];
				value[i] = data[1];
				count = data.length;

				for(j=2;j<count;j++) {
					value[i] += '=' + data[j];
				}
			}

			contents='';
			srcdata = mGET(key,value,'src');

			if(/\.(swf)$/.test(srcdata)) {
				embed_type = 1;
			} else if(/\.(mov|avi|wma|wmv)$/.test(srcdata)) {
				embed_type = 2;
			}

			var classid = mGET(key,value,'classid');
			var codebase = mGET(key,value,'codebase');

			if(embed_type==1) {
				classid = 'clsid:D27CDB6E-AE6D-11cf-96B8-444553540000';
				codebase = 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0';
			} else if(embed_type==2) {
				classid = 'clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95';
				codebase = 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715';
			}

			if(classid && codebase) {
				contents += '<object';
				if(classid) {
					contents += ' classid="' + classid + '"';
				}
				if(codebase) {
					contents += ' codebase="' + codebase + '"';
				}
				count = key.length;
				for(i=0;i<count;i++) {
					if(value[i]!='') {
						if(key[i]!='src') {
							contents += ' ' + key[i] + '="' + value[i] + '"';
						}
					}
				}
				contents += '>';
				for(i=0;i<count;i++) {
					if(value[i]!='') {
						if(embed_type==1 && key[i]=='src') {
							contents += '<param name="movie" value="' + value[i] + '" />';
						} else {
							contents += '<param name="' + key[i] + '" value="' + value[i] + '" />';
						}
					}
				}
			}
			count = key.length;
			contents += '<embed';
			for(i=0;i<count;i++) {
				if(value[i]!='') {
					contents += ' ' + key[i] + '="' + value[i] + '"';
				}
			}
			contents += '>';
			contents += '</embed>';
			if(classid && codebase) {
				contents += '</object>';
			}
		}
		document.write(contents);
	}

/**
 * 전체선택
 */
	function allCheck() {
		var cnt = $('listcnt').value;
		for(i=1;i<=cnt;i++) {
			if($('list'+i).disabled==false) {
				$('list'+i).checked=$('allCheck').checked;
			}
		}
	}

	function allCheck2() {
		var cnt = $('listcnt').value;
		for(i=1;i<=cnt;i++) {
			if($('list'+i).disabled==false) {
				$('list'+i).checked=$('allCheck').checked;
			}
		}
	}

/**
 * 목록 한개 선택검사
 */
	function oneCheck() {
		var j=0;
		var cnt = $('listcnt').value;
		for(i=1;i<=cnt;i++) {
			if($('list'+i).checked==true) {
				j++;
				if(j>1) {
					break;
				}
			}
		}
		if(j!=1) {
			return false;
		} else {
			return true;
		}
	}

/**
 * 목록을 AAA[]=xxx&AAA[]=yyy 형식의 GET 배열로 만듬
 */
	function getCheckList() {
		var j=0;
		var str='';
		
		var cnt = $('listcnt').value;
		for(i=1;i<=cnt;i++) {
			
			if($('list'+i).checked==true) {
				str+='&list[]='+$F('list'+i);
			}
		}
		return str;
	}

/**
 * 목록 한개이상 선택검사
 */
	function oneMoreCheck() {
		var cnt = $('listcnt').value;
		for(i=1;i<=cnt;i++) {
			if($('list'+i).checked==true) {
				break;
			}
		}
		if(i>cnt) {
			return false;
		} else {
			return true;
		}
	}

/**
 * 사진 선택시 지정된 ID위치에 src 를 바꾸어줌
 */
	function previewImage(obj, imgid) {
		if (/(\.gif|\.jpg|\.jpeg|\.png)$/i.test(obj.value)==false) {
			alert("이미지 파일을 선택하세요.");
			obj.value = '';
			return false;
		}
		if(imgid!='') {
			if(Prototype.Browser.IE) {
				$(imgid).src = obj.value;
				Element.show(imgid);
			} else {
				//alert('현재의 브라우져에서 미리보기를 지원하지 않습니다.');
			}
		}
	}

// flash 삽입 스크립트..
function f_flash_src(s,d,w,h,t){
// s: source url
// d: flash id
// w: source width
// h: source height
// t: wmode ("" for none, transparent, opaque ...)	
	return "<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9.0.45.0\" width="+w+" height="+h+" id="+d+"><param name=wmode value="+t+" /><param name=movie value="+s+" /><param name=quality value=high /><embed src="+s+" quality=high wmode="+t+" type=\"application/x-shockwave-flash\" pluginspage=\"https://www.macromedia.com/shockwave/download/index.cgi?p1_prod_version=shockwaveflash\" width="+w+" height="+h+"></embed></object>";
}

// write document contents
function f_document_write(src){
	document.write(src);
}