//윈도우 팝업
function MM_openBrWindow(para1,para2,para3){
		window.open(para1,para2,para3);
	}
// 한글을 포함한 길이 체크(한글 2, 영문 1)
// input  : string
// return : boolean
//
function lenString(inString) {
	var len=0;
	for(var i=0;i<inString.length;i++)
		len+=(escape(inString.charAt(i)).length>4) ? 2:1;
	return len
}


// desc  : 한글이 포함 되어있는지 체크
// input  : string
// return : boolean
//
function hasKorean(msg) {

	var isKr = false;

	if(msg == "")
		return false;

	for(inx=0; inx < msg.length; inx++) {

		if(escape(msg.charAt(inx)).length > 4) {
			isKr = true;
		}
	}

	return isKr;
}


// desc     : 체크박스를 모두 선택하거나 해지시킨다.
// input        : [form_name][checked]
// return   : void
//
function allCheck(combo_box, checkflag){

	var maxCnt = combo_box.list.options.length;


	if (checkflag == true) {

		for(var i = maxCnt - 1; i >= 0; i--)
			combo_box.list.options[i].selected = true;

		return;
	}
	else{

		for(var i = maxCnt - 1; i >= 0; i--)
			combo_box.list.options[i].selected = false;

		return;
	}
}

// desc     : 숫자만으로 이루어져있는지 체크
// input        : [msg]
// return   : boolean
//
function isNumber(msg) {
	var isNum = true;

	for ( inx=0; inx < msg.length; inx++ )  {

		if ( msg.charAt(inx) < '0' || msg.charAt(inx) > '9' )
			isNum = false;
	}
	return isNum;
}

// desc     : 영문 or 한글로만 이루어져 있는지 여부
// input        : [msg]
// return   : boolean
//
function isName(chk_value) {

	var alpha = "abcdefghijklmnopqrstuvwxyz ";

	var isAlpha = true;
	var isKorean = true;


	for(var i = 0; i < chk_value.length; i++)   {

		if(alpha.indexOf(chk_value.substring(i, i + 1)) < 0) {  isAlpha = false;    }
	}
	for(var i = 0; i < chk_value.length; i++)   {

		if(escape(chk_value.substring(i, i + 1)).length < 4 ) {  isKorean = false;  }
	}

	if( !isAlpha && !isKorean ||  isAlpha && isKorean ) {
		return false;
	}
	else {
		return true;
	}

}

// 체크박스 전체를 선택반전
function checkAllCheckbox(checkbox, checked) {
  if(!checkbox) {
	return;
  }

  if(!checkbox.length) {
	if(arguments.length == 1)
	  checkbox.checked = !checkbox.checked;
	else
	  checkbox.checked = checked;
	return;
  }

  for(var i=0;checkbox.length>i;i++) {
	if(checkbox[i].disabled)
		continue;
	if(arguments.length == 1)
	  checkbox[i].checked = !checkbox[i].checked;
	else
	  checkbox[i].checked = checked;
  }
}

// 체크박스 선택 수
function countCheckbox(checkbox) {
  var cnt = 0;
  if(!checkbox) {
	return 0;
  }
  if(!checkbox.length) {
	if(checkbox.checked) return 1; else return 0;
  }
  for(var i=0;checkbox.length>i;i++) {
	if(checkbox[i].checked)
		cnt++;
  }
  return cnt;
}

// 체크박스 선택 수
function countSeqCheckbox(checkboxNm) {
  var cnt=0;
  for(var i=1;i<1000;i++) {
	cb = eval(checkboxNm+"_"+i);
	if(!cb) return;
	cnt++;
  }
  return cnt;
}

// 라디오박스의 선택값
function getRadioValue(radio) {
  if(!radio.length) return radio.value;
  for (var i = 0; i < radio.length; i++) {
	if (radio[i].checked == true) {
	  return radio[i].value;
	}
  }
  return null;
}

// 셀렉트의 선택값
function getSelectValue(select) {
  return select.options[select.selectedIndex].value;
}

// 팝업 폰창을 연다.
function openSmsWindow() {
	openWin("/usr/com/sms_send_wrt_p.php", 160, 500, "no");
}

function cutStr(str,limit){
  var tmpStr = str;
  var byte_count = 0;
  var len = str.length;
  var dot = "";

  for(i=0; i<len; i++){
	byte_count += chr_byte(str.charAt(i));
	if(byte_count == limit-1){
	  if(chr_byte(str.charAt(i+1)) == 2){
		tmpStr = str.substring(0,i+1);
		dot = "...";
	  }else {
		if(i+2 != len) dot = "...";
		tmpStr = str.substring(0,i+2);
	  }
	  break;
	}else if(byte_count == limit){
	  if(i+1 != len) dot = "...";
	  tmpStr = str.substring(0,i+1);
	  break;
	}
  }
  document.writeln(tmpStr+dot);
  return true;
}

// 길이 체크
// 한/영 포함
// inString길이가 len보다 길면 false, 짧으면 true
function chkLen(inString, len) {
	var len1=0;
	for(var i=0;i<inString.length;i++){
		len1+=(escape(inString.charAt(i)).length>4) ? 2:1;
	}
	if(len >= len1){
		return true;
	}else 
		return false;
}

// 라디오 버튼 선택 여부
function checkRadioButton(radioButton) {
  var check = false;
  if(!radioButton) {
	return 0;
  }
  if(!radioButton.length) {
	if(radioButton.checked) return true; else return false;
  }
  for(var i=0;radioButton.length>i;i++) {
	if(radioButton[i].checked)
		check =  true;
  }
  return check;
}

//공백 제거
function rtrim(val){
	var tgt="";
	var len=0;
	
	tgt=val;	
	len=tgt.length;	
	
	for(var i=len; i>0; i--){		
		if(tgt.substring(i-1,i) == ' ')			
		tgt = tgt.substring(0,i-1);		
		else break;
	}		
	return tgt;
}

// 길이 측정
function length(arg_str){	
	var j = 0;	
	var tempStr;	
	var tempStr2;	
	for(var i = 0; i < arg_str.length; i++) {		
		tempStr = arg_str.charCodeAt(i);	        
		tempStr2 = tempStr.toString();	        
		if(tempStr2.length >= 5) {
			j++;
		}
	}	
	return i+j;
}

//전체 한방향
function allCheckOnlyWay(combo_box, checkflag){

	var maxCnt = combo_box.list.options.length;

	for(var i = maxCnt - 1; i >= 0; i--)
		combo_box.list.options[i].selected = checkflag;

	return;
}

// 숫자와 영문으로만 되어 있는지 체크
function isAlphaNumeric(strUserName)	{ // Input ID valid character check.
	var nIndex;
	var chrCurrent;
	var ascChrCurrent;
	var bReturn;

	bReturn = true;

	// for the length of the string...
	for ( nIndex = 0; nIndex < strUserName.length; nIndex++)	{
		// check each character
		ascChrCurrent = strUserName.charAt(nIndex);
		// UserName should be alphanumeric
		if ( (ascChrCurrent >= '0' && ascChrCurrent <= '9'	) || (ascChrCurrent >= 'a' && ascChrCurrent <= 'z') || (ascChrCurrent >= 'A' && ascChrCurrent <= 'Z') )		{
			bReturn = true;
		}
		else		{
			bReturn = false;
			break;
		}
	}

	return bReturn;
}

/*
	주민번호 체크
	parameter : sid1(주민번호 앞자리), sid2(주민번호 뒷자리)
	return : 성공(true), 실패(false)
*/
function checkSocialNumber(sid1, sid2) {
	var chk  = 0;
    var flag = 0;
    var yy  = sid1.substring(0,2);
    var mm  = sid1.substring(2,4);
    var dd  = sid1.substring(4,6);
    var sex = sid2.substring(0,1);

    if (sex == 3) sex = 1;
    if (sex == 4) sex = 2;

    for (var i = 0; i <=5 ; i++) {
		chk = chk + ((i%8+2) * parseInt(sid1.substring(i,i+1)));
    }

    for (var i = 6; i <=11 ; i++) {
    	chk = chk + ((i%8+2) * parseInt(sid2.substring(i-6,i-5)));
    }

    chk = 11 - (chk % 11);

    chk = chk % 10;

    if(chk != sid2.substring(6,7)) {
        return false;
    } else {
    	return true;
    }
}

function checkCorrectEmail(email) {
	if(email.indexOf("@")<3){
		alert("이메일 형식이 잘못 되었거나 @가 빠졌습니다.");
		return false;
	}

	var checkMail = email;
	checkMail = checkMail.split("@");
	if(checkMail[1] == "hanmail.net" || checkMail[1] == "daum.net") {
		alert("hanmail(daum)은 사용하실 수 없습니다.");
		return false;
	}

   // 최상위 도메인 추가시 &&(email.indexOf("최상위도메인")<5) 하면 됨
   // 최상위 도메인즉 kr/com/net/org 등이 아닐결우 에러 출력 부분
   if ( (email.indexOf(".com")<5)&&(email.indexOf(".org")<5)
       &&(email.indexOf(".gov")<5)&&(email.indexOf(".net")<5)
       &&(email.indexOf(".mil")<5)&&(email.indexOf(".edu")<5)
       &&(email.indexOf(".kr")<4)&&(email.indexOf(".st")<4)
       &&(email.indexOf(".tv")<4)&&(email.indexOf(".ro")<4)
       &&(email.indexOf(".arpa")<6)&&(email.indexOf(".biz")<5)
       &&(email.indexOf(".aero")<6)&&(email.indexOf(".name")<6)
       &&(email.indexOf(".coop")<6)&&(email.indexOf(".info")<6)
       &&(email.indexOf(".pro")<5)&&(email.indexOf(".museum")<7)
      ) {
   // 참고로 alert 이벤트에서 멘트가 길어질경우 아래에 입력할경우 +"멘트" 이렇게 하면 됩니다.
		alert("이메일 형식의 최상위 도메인형식이 잘못되었습니다.\n\n"
			+" .kr .com .org .gov .net .mil .edu .arpa .biz\n\n"
			+".aero .name .coop .info .pro .museum .st .tv .ro"
		);
		return false ;
    } else {
    	return true;
    }
 
}

/*
	해당 아이디로 이동
*/
function gotoBlog(usrId) {
	//_enfunvil = window.open("/blog/blog/personalIndex.vw?blogId=" + usrId,"_enfunvil");
	//_enfunvil.focus();
	window.open("/blog/blog/personalIndex.vw?blogId=" + usrId, "");
}

/*
	주어진 주소로 
*/
function gotoBlogUrl(goUrl) {
	_enfunvil = window.open(goUrl,"_enfunvil");
	_enfunvil.focus();
}

function cutString(str,limit){
  var tmpStr = str;
  var byte_count = 0;
  var len = str.length;
  var dot = "";

  for(i=0; i<len; i++){
	byte_count += chr_byte(str.charAt(i));
	if(byte_count == limit-1){
	  if(chr_byte(str.charAt(i+1)) == 2){
		tmpStr = str.substring(0,i+1);
		dot = "...";
	  }else {
		if(i+2 != len) dot = "...";
		tmpStr = str.substring(0,i+2);
	  }
	  break;
	}else if(byte_count == limit){
	  if(i+1 != len) dot = "...";
	  tmpStr = str.substring(0,i+1);
	  break;
	}
  }
  document.writeln(tmpStr);
  return true;
}

function roundTable(objID,round1) {

	var obj = document.getElementById(objID);
	var Parent, objTmp, Table, TBody, TR, TD;
	var bdcolor, bgcolor, Space;
	var trIDX, tdIDX, MAX;
	var styleWidth, styleHeight;

	// get parent node
	Parent = obj.parentNode;
	objTmp = document.createElement('SPAN');
	Parent.insertBefore(objTmp, obj);
	Parent.removeChild(obj);

	// get attribute
	bdcolor = obj.getAttribute('rborder');
	bgcolor = obj.getAttribute('rbgcolor');
	radius = parseInt(obj.getAttribute('radius'));
	if (radius == null || radius < 1) radius = 1;
	else if (radius > 6) radius = 6;

	MAX = radius * 2 + 1;

	/*
	create table {{
	*/
	Table = document.createElement('TABLE');
	TBody = document.createElement('TBODY');

	Table.cellSpacing = 0;
	Table.cellPadding = 0;

	for (trIDX=0; trIDX < MAX; trIDX++) {
	TR = document.createElement('TR');
	Space = Math.abs(trIDX - parseInt(radius));
	for (tdIDX=0; tdIDX < MAX; tdIDX++) {
	TD = document.createElement('TD');

	styleWidth = '1px'; styleHeight = '1px';
	if (tdIDX == 0 || tdIDX == MAX - 1) styleHeight = null;
	else if (trIDX == 0 || trIDX == MAX - 1) styleWidth = null;
	else if (radius > 2) {
	if (Math.abs(tdIDX - radius) == 1) styleWidth = '2px';
	if (Math.abs(trIDX - radius) == 1) styleHeight = '2px';
	}

	if (styleWidth != null) TD.style.width = styleWidth;
	if (styleHeight != null) TD.style.height = styleHeight;

	if (Space == tdIDX || Space == MAX - tdIDX - 1) TD.style.backgroundColor = bdcolor;
	else if (tdIDX > Space && Space < MAX - tdIDX - 1) TD.style.backgroundColor = bgcolor;

	if (Space == 0 && tdIDX == radius) TD.appendChild(obj);
	TR.appendChild(TD);
	}
	TBody.appendChild(TR);
	}


	Table.appendChild(TBody);

	// insert table and remove original table
	Parent.insertBefore(Table, objTmp);
}
