function getCookie(Name) {
	var search = Name + "=";
	if (document.cookie.length > 0) 
	{
		offset = document.cookie.indexOf(search);
		if (offset != -1) 
		{
			offset += search.length;
			end = document.cookie.indexOf(";", offset);
			if (end == -1) 
			{
				end = document.cookie.length;
			}
			return unescape(document.cookie.substring(offset, end));
		}
		else 
		{
			return false;
		}
	}
	else
	{
		return false;
	}
}
function setCookie( name, value, expiredays )
{

	var year = new Date().getYear();
	var month = new Date().getMonth();
	var day = new Date().getDay();

	var todayDate = new Date();


	  todayDate.setDate( todayDate.getDate() + expiredays );

	  document.cookie = name + "=" + escape( value ) + "; path=/; expires=" + todayDate.toGMTString() + ";"
}

function closeWin(name)
{
	if (document.getElementById('ngcc_popup_check').checked)
	{
		setCookie(name, "done" , 1);
	}
	window.close();
}
function closeWin2(name)
{
	setCookie(name, "done" , 1);
	window.close();
}
jQuery(document).ready(function()
{
	var fm;
	try
	{
		
	
		fm = document.list_form;
	}
	catch (e)
	{
		
	}
	jQuery('#all_check_remove').click(function()
	{
		CHECKBOX(false);
		jQuery('#all_check_remove').css('display','none');
		jQuery('#all_check').css('display','');
		jQuery('#all_check_button_remove').css('display','none');
		jQuery('#all_check_button').css('display','');
	});
	jQuery('#all_check').click(function()
	{
		if (fm.popup_check != null || fm.checkbox != null)
		{
			CHECKBOX(true);
		jQuery('#all_check_remove').css('display','');
		jQuery('#all_check').css('display','none');
		jQuery('#all_check_button_remove').css('display','');
		jQuery('#all_check_button').css('display','none');
		}
	});
	jQuery('#all_check_button_remove').click(function()
	{
		CHECKBOX(false);
		jQuery('#all_check_remove').css('display','none');
		jQuery('#all_check').css('display','');
		jQuery('#all_check_button_remove').css('display','none');
		jQuery('#all_check_button').css('display','');
	});
	jQuery('#all_check_button').click(function()
	{
		CHECKBOX(true);
		jQuery('#all_check_remove').css('display','');
		jQuery('#all_check').css('display','none');
		jQuery('#all_check_button_remove').css('display','');
		jQuery('#all_check_button').css('display','none');
	});
	/****************************************************
	 * 우편번호 검색 버튼 눌렀을시 이벤트 처리
	****************************************************/
	jQuery('#search_btn').click(function()
	{
	   jQuery.post('/Zipcode/Zipcode.do',{search:jQuery('#zipcode_search').val()},function(data)
		{
		   jQuery('#zipcode_result').html(data);
		   jQuery('#zipcode_result').css('display','');
	   });
	});
	jQuery('#zipcode_btn').click(function()
	{
	   window.open('/Zipcode/Zipcode_Open.do','','width=410,height=170,scrollbars=yes');
	});
	/****************************************************
	 * 이메일 형식 이벤트 처리
	****************************************************/
	jQuery('#email_type').change(function()
	{
		var value = jQuery('#email_type').val();
		if (value == 1)
		{
			jQuery('#email_hidden').css('display','');
		}
		else
		{
			jQuery('#email_hidden').css('display','none');
			jQuery('#email_finaltype').val(value);
		}
		
	});
	/****************************************************
	 * 숨겨진 이메일 필트 입력시 이벤트 처리
	****************************************************/
	jQuery('#email_hidden').keypress(function()
	{
		jQuery('#email_finaltype').val(jQuery('#email_hidden').val());
	});
});	
function WINDOW_OPEN(name,width,height)
{
	window.open('/popuplist/'+name+'.html',''+name+'','width='+width+',height='+height+',scrollbars=no,resizable=no');
}
function DELETE_CHECK()
{
	var fm = document.list_form;
	var cnt = 0;
	if (typeof(fm.popup_check) == 'undefined')
	{
		alert('삭제하실 게시물이 존재하지 않습니다.');
		return false;
	}
	if (fm.popup_check.length >= 1)
	{		
		for (var i=0; i < fm.popup_check.length; i++)
		{
		
			if (fm.popup_check[i].checked)
			{
				cnt++;
			}
		}
		if (cnt == 0)
		{
			alert('삭제하실 게시물을 1가지이상 선택해주세요.');
			return false;
		}
	}
	else
	{
		if (!fm.popup_check.checked)
		{
			alert('삭제하실 게시물을 1가지이상 선택해주세요.');
			return false;
		}
	}
	if(!confirm(cnt + " 항목을 삭제하시겠습니까 ?")) {
			return false;		
	}
	fm.action = "Delete.do";
	return true;
}
function CHECKBOX(flag)
{
	var fm = document.list_form;
	
	if (fm.popup_check != null)
	{
		var len = fm.popup_check.length;
		if (len == null)
		{
			if (flag)
			{
				fm.popup_check.checked = true;
			}
			else
			{
				fm.popup_check.checked = false;
			}
			
		}
		else
		{
			for (var i=0; i < fm.popup_check.length; i++)
			{
				if (flag)
				{
					fm.popup_check[i].checked = true;
				}
				else
				{
					fm.popup_check[i].checked = false;
				}
			}
		}
	}
}
/***************************************
 * 오늘날짜 구하기
***************************************/
function getNowDate(TYPE)
{
	var today=new Date();
	var y = today.getFullYear().toString();
	var m = (today.getMonth()+1).toString();
	if (m.length==1)
	{
		m=0+m;
	}
	var d = today.getDate().toString();
	if(d.length==1){
		d=0+d;
	}
	var ymd = y+m+d;
	var iymd = parseInt(ymd);
	if (TYPE == 1)
	{
		ymd = y+'-'+m+'-'+d;	
	}
	return ymd;
}
/***************************************
 * 현재 날짜로부터 한달전 날짜 구하기
***************************************/
function PREV_MONTH_DATE(type)
{
	var preMonthDay = "";
	var yyyy = "";
	var mm = "";
	var dd = "";
	str = getNowDate();
	if (str.length == 10)
	{
		var Cal = str.split("/");
		yyyy = Cal[0];
		mm = Cal[1];
		dd = Cal[2];
	}
	else
	{
		yyyy = str.substring(0,4);
		mm = str.substring(4,6);
		dd = str.substring(6);
	}
	if (parseInt(mm,10) != 1)
	{
		var preMM = "" + (parseInt(mm,10) -1);
		if (type == 1)
		{
			preMonthDay = yyyy +"-" + LNG_Date(preMM) + "-" + dd;
		}
		else
		{
			preMonthDay = yyyy+ LNG_Date(preMM)+dd;
		}
	}
	else
	{
		if (type == 1)
		{
			preMonthDay = (parseInt(yyyy,10) - 1) + "-12-" + dd;
		}
		else
		{
			preMonthDay = (parseInt(yyyy,10) - 1) + "12" + dd;
		}
		
	}
	return preMonthDay;
}
/***************************************
 * 현재 날짜로부터 일주일전 날짜 구하기
***************************************/
function PREV_7DAY_DATE(TYPE)
{
	var sDay = new Date();
	var Year = sDay.getFullYear();
	var Month = sDay.getMonth()+1;
	var Day = sDay.getDate();     
	var Hour = sDay.getHours();
	var mm = sDay.getMinutes();
	var ToDay = Year + LNG_Date(Month) + LNG_Date(Day);
	var makeDay = new Date(new Date().getYear(), new Date().getMonth(), new Date().getDate() -10);
	Year = makeDay.getFullYear();
	Month = makeDay.getMonth() + 1;
	Day = makeDay.getDate();
	var makeDay = Year +""+ LNG_Date(Month) +""+ LNG_Date(Day);
	if (TYPE == 1)
	{
		makeDay = Year +"-"+ LNG_Date(Month) +"-"+ LNG_Date(Day);
	}
	return makeDay;
}
/***************************************
 * 월단위가 1단위일경우 0을 집어넣기
***************************************/
function LNG_Date(obj)
{
	var str = String (obj);
	if (str.length == 1)
	{
		str = "0" + str;
	}
	else
	{
		str = str
	}
	return str;
}
function CheckEMail (emailStr) {  
	// 전자메일 패턴. 사용자이름@도메인 의 형식을 검사함  
	var emailPat=/^(.+)@(.+)jQuery/ 
	// 포함되지 말아야할 특수문자들 ( ) < > @ , ; : \ " . [ ]  
	var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"; 
	// 포함될 수 있는 특수문자들 (나머지)  
	var validChars="\[^\\s" + specialChars + "\]";  
	// 아래의 경우는 사용자 이름에 따옴표가 있는 경우. RFC표준사항임  
	// 예를 들어 "Windy Hana"@luru.net은 올바른 메일 주소임  
	var quotedUser="(\"[^\"]*\")";  
	// 도메인 대신 IP를 사용할 수있음  
	// 예를 들어 laday@[210.120.253.10]은 올바른 메일 주소 "[", "]"이 반드시 필요  
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]jQuery/;
	// 기본적인 아토믹에 해당됨  
	var atom=validChars + '+';  // 사용자로 사용될 수 있는 문자를 나타냄  
	// 예를 들어 laday.luru@domain.net에서 laday와 luru가 워드가 됨  
	var word="(" + atom + "|" + quotedUser + ")"  
	// 사용자의 패턴을 나타냄. 위의 워드가 .단위로 여러개 올 수있음  
	var userPat=new RegExp("^" + word + "(\\." + word + ")*jQuery")  
	// 아래의 것은 일반적인 도메인 패턴에 해당됨  
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*jQuery")  
	// @을 기준으로 사용자와 도메인으로 나눔. 편의를 위함  
	var matchArray=emailStr.match(emailPat)  
	if (matchArray==null) 
	{    
		// 두개 이상 또는 @이 아예 없는 경우    
		alert("메일주소 형식이 잘못되어 있습니다 (@과 .을 확인해 보세요)"); 
		return false;
	} 
	var user=matchArray[1];  
	var domain=matchArray[2];  
	// 사용자 부분이 제대로 되었는지 검사 
	if (user.match(userPat)==null) 
	{    
		alert("사용자 이름이 올바르지 않습니다");  
		return false;
	}  
	// 도메인 부분이 IP로 되어 있는 경우  
	var IPArray=domain.match(ipDomainPat); 
	if (IPArray!=null) 
	{    
		for (var i=1;i<=4;i++) 
		{      
			if (IPArray[i]>255) 
			{       
				alert("IP 주소 형식이 올바르지 않습니다");       
				return false;    
			}   
		}    
		return true;
	}
	 // 도메인 이름이 심볼릭 네임인 경우 올바르지 않음 
	var domainArray=domain.match(domainPat); 
	if (domainArray==null) 
	{   
		alert("도메인 형식이 올바르지 않습니다");
		return false;
	}  
	// 도메인 형식 검사에 통과했더라도, 마지막 세개 또는 두개의 문자(com, net, kr등등)
	// 까지 올바른지 검사. 최상위 도메인은 반드시 세글자 아니면 두 글자임  
	var atomPat=new RegExp(atom,"g");  
	var domArr=domain.match(atomPat); 
	var len=domArr.length;  
	if (domArr[domArr.length-1].length<2 ||    domArr[domArr.length-1].length>3) 
	{    
		alert("도메인 주소의 마지막 필드는 반드시 세글자 도메인 또는 두글자 나라이어야 합니다.");   
		return false;  
	}  
	// 호스트이름이 있는지 검사  
	if (len<2) 
	{    
		alert("호스트 이름이 존재하지 않습니다. 호스트 이름은 반드시 2글자 이상이어야 합니다");    
		return false;  
	}  
	return true;
 }
/***************************************
 * SORT 정렬 TABLE 관리자 용
***************************************/
function TABLE_ROW_CONTROL()
{
	var idx = arguments[0]; // 선택된 row번호/
	var flag = arguments[1]; // 순위 업  다운
	var type = arguments[2]; // 업데이트 내용
 	if (flag && idx == 1)
	{
		alert("현재 제일 높은 순위권이므로 이보다 더 높게 설정할 순 없습니다.");
		return;
	}
	else
	{
		if (!flag && idx == size)
		{
			alert("현재 제일 낮은 순위권이므로 이보다 더 낮게 설정할 순 없습니다.");
			return;
		}
	}
	var table = document.getElementById('bbs_table');
	var message = new Array();
	var len = table.rows(idx).cells.length;
	var isFlagNum = 1;
	if (!flag)
	{
		isFlagNum = size;
	}
	if (idx!=isFlagNum)
	{
		for (var i=0; i < len; i++) //현재 아이템보다 -1인 row를 일단 백업
		{
			if (flag)
			{
				message[i] = table.rows(parseInt(idx)-1).cells[i].innerHTML;
			}
			else
			{
				message[i] = table.rows(parseInt(idx)+1).cells[i].innerHTML;
			}
			
		}
		for (var i=0; i < len; i++) //현재 아이템보다 -1인 row에 현재 row의 데이터로바꿈
		{
			if ((len-1) == i) //UP버튼에 SORT번호를 바꿀려면 마지막 ROW에서 indexOf로 위치로찾아 바꿔줘야함
			{
				var temp = table.rows(idx).cells[i].innerHTML;
				var str = temp.indexOf('TABLE_ROW_CONTROL(');
				var end = temp.indexOf(',');
				var num = temp.substring(str+18, end);
				if (flag)
				{
					num = parseInt(num)-1;
				}
				else 
				{
					num = parseInt(num)+1;
				}
				temp = temp.substring(0,str+18)+num+temp.substring(end,temp.length);
				str = temp.lastIndexOf('TABLE_ROW_CONTROL(');	
				end = temp.lastIndexOf(',');
				if (flag)
				{
					temp = temp.substring(0,str+18)+num+temp.substring(end-6,temp.length);
				}
				else
				{
					temp = temp.substring(0,str+18)+num+temp.substring(end-6,temp.length);
				}
				var input = document.createElement(table.rows(idx).cells[0].innerHTML);
				if (flag)
				{
					table.rows(parseInt(idx)-1).cells[i].innerHTML = temp;
				}
				else
				{
					table.rows(parseInt(idx)+1).cells[i].innerHTML = temp;
				}
				jQuery.post('/MMC/UPDATE.do',{no:input.value,rank:num,type:type},function(data)
				{;
				});
			}
			else if (i != 1)
			{
				if (flag)
				{
					table.rows(parseInt(idx)-1).cells[i].innerHTML = table.rows(idx).cells[i].innerHTML;
				}
				else
				{
					table.rows(parseInt(idx)+1).cells[i].innerHTML = table.rows(idx).cells[i].innerHTML;
				}
			}
		}
		for (var i=0; i < message.length; i++) //백업된 row내용을 현재 row데이터로 바꿈
		{
			if (i == (len-1))
			{
				var temp = message[i];		
				var str = temp.indexOf('TABLE_ROW_CONTROL(');
				var end = temp.indexOf(',');
				var num = temp.substring(str+18, end);
				if (flag)
				{
					num = parseInt(num)+1;
				}
				else
				{
					num = parseInt(num)-1;
				}
				temp = temp.substring(0,str+18)+num+temp.substring(end,temp.length);
				str = temp.lastIndexOf('TABLE_ROW_CONTROL(');	
				end = temp.lastIndexOf(',');
				if (flag)
				{
					temp = temp.substring(0,str+18)+num+temp.substring(end-6,temp.length);
				}
				else
				{
					temp = temp.substring(0,str+18)+num+temp.substring(end-6,temp.length);
				}
				var input = document.createElement(message[0]);
				table.rows(idx).cells[i].innerHTML = temp;	
				jQuery.post('/MMC/UPDATE.do',{no:input.value,rank:num,type:type},function(data)
				{;
				});
			}
			else if (i != 1)
			{	
				table.rows(idx).cells[i].innerHTML = message[i];
			}
		}
	}
}

function BROWSER_VERSION()
{ 
	var returnValue = 0;
	if( navigator.appName.indexOf("Microsoft") > -1 )
	{         
		returnValue = 1;
		if( navigator.appVersion.indexOf("MSIE 6") > -1)
		{         
			returnValue = 2;
		}
		else if(navigator.appVersion.indexOf("MSIE 7") > -1)
		{  
			returnValue = 3;
		}
	}
	else
	{                      
		returnValue = 4;
	}
	return returnValue;
}
var maxLen = 501;					// 최대길이 
var moveFlag = true;					// 이동가능
function InputLength(sInput)	
{
	var c;
	var i, len; 
	len = 0;       
	for (i=0;i<sInput.length;i++) 
	{
		c = escape(sInput.charAt(i));        //ISO-Latin-1 문자셋으로 변경
		if (c.substring(0, 2) == '%u') 
		{
			if (c.substring(2,4) == '00')
				len = len + 1;
			else
				len = len + 2;        //한글
		}
		else if (c.substring(0,1) == '%') 
		{
			if (parseInt(c.substring(1,3), 16) > 127)
				len = len + 2;        //한글
			else
				len = len + 1;
		} 
		else
		{
				len = len + 1;
		}

		}
		return len;
}
function InputLength_check(txtform,label)
{
	var ret = 0;
	ret = InputLength(document.getElementById(txtform).value);
	document.getElementById(label).innerHTML = ret + " byte 입니다";
	if(ret >= maxLen)
	{
		moveFlag = false;
		document.getElementById(label).style.color = "red";
		return; 
	}
	else
	{
		moveFlag = true;
		document.getElementById(label).style.color = "black";
	}
	return moveFlag;
}
