//Overture 2010. 10. 20
//var siteCode = '4B5564634922E';
//var ptcProtocol	= window.location.protocol;
//document.write("<scr"+"ipt type='text/javascript' src='"+ptcProtocol+"//chkv3.protelc.com/js/protelc_counter_v3.php?siteCode="+siteCode+"'></scr"+"ipt>");

// 체크박스 전체선택/해제
// obj : 체크객체(this), pid : 체크/해제될 체크박스의 상위 DOM ID, chkclass : 체크/해제할 체크박스 class name
function selectCheckbox(obj, pid, chkclass) {
	var items = $(pid).getElementsByClassName(chkclass);

	if(items == null) return;
	if(items.length == null) return;

	for(var i=0 ; i < items.length ; i++) {
		if(items[i].disabled == false) {
			if(obj.checked==true) {
				items[i].checked = true;
			}
			else {
				items[i].checked = false;
			}
		}
	}

}




function detailchkSelectedCheckbox(pid, chkclass) {
	var items = $(pid).getElementsByClassName(chkclass);

	if(items == null) return;
	if(items.length == null) return;

	for(var i=0 ; i < items.length ; i++) {
			if(items[i].checked) {
				return  true;
			}
	}

	alert('항목이 선택되지 않았습니다');
	return false;

}

function chkSelectedCheckbox(pid, chkclass) {
	var items = $(pid).getElementsByClassName(chkclass);
	if(items == null) return;
	if(items.length == null) return;

	var val = '';

	for(var i=0 ; i < items.length ; i++) {
		if(items[i].checked) {
			if(val) {
				val += ",";
			}
			val += items[i].value;
		}
	}

	if(val=='') {
		alert('항목이 선택되지 않았습니다');
		return false;
	}
	else {
		return val;
	}

}


// 헬퍼정의 레이어팝업 닫기(다른 레이어들은 닫고)
function openLayerPopup(obj) {
	var layer = document.getElementsByClassName('layerPopup');
	if(layer != null) {
		for(var i=0;i<layer.length;i++) {
			if(layer[i].id == obj) {
				layer[i].style.display = '';
			}
			else {
				layer[i].style.display = 'none';
			}
			
		}
	}

}

function closeLayerPopup(obj) {
	$(obj).style.display='none';

	if($('IB_sendPurpose')!=null) {
		$('IB_sendPurpose').style.display='';
	}

	if($('msgbox_search_body')!=null) {
		$('msgbox_search_body').style.display = '';
	}
}




/* body에 onload를 사용하지않고, window.onload에 두개이상의 액션을 주기 위한... */
function addLoadEvent(funct) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = funct;
	} 
	else {
		window.onload = function() {
			oldonload();
			funct();
		}
	}
}

function afterLoad(obj,url) {
		new Ajax.Request( url, { 
				asynchronous:true, 
				evalScripts:true, 
				onComplete:function(t) {
					try {
						if(t.responseText ==null ) {
							obj.innerHTML = '';
							obj.style.display='none';
						}
						else {
							obj.innerHTML = t.responseText;
						}
					}
					catch(e) {
						alert(e.message);
						return;
					}
					
				}
			} );
}


/* 페이징시 로딩바 */
function pagingLoading(obj) {
	if($(obj) != null ) {
		$(obj).innerHTML = "<img src='/webroot/img/common/loading_kit.gif' width='78' height='7' style='margin-top:5px;'>"
	}
}


/* 페이징 헬퍼 POST  */
function pagingAction(frm,act) {
	$(frm).action=act;
	$(frm).submit();
}


/* 팝업등을 위한 쿠키 설정 : 쿠키값 받아옴 */
function getCookie( name )
{
	var nameOfCookie = name + "=";
	var x = 0;
	while ( x <= document.cookie.length )
	{
		var y = (x+nameOfCookie.length);
		if ( document.cookie.substring( x, y ) == nameOfCookie ) {
			if ( (endOfCookie=document.cookie.indexOf( ";", y )) == -1 )
				endOfCookie = document.cookie.length;
			return unescape( document.cookie.substring( y, endOfCookie ) );
		}
		x = document.cookie.indexOf( " ", x ) + 1;
		if ( x == 0 )
			break;
	}
	return "";
}

/* 팝업등을 위한 쿠키 설정 : 쿠키값 저장 */
function setCookie( name, value, expiredays ) {
	var todayDate = new Date();
	todayDate.setDate( todayDate.getDate() + expiredays );
	if(expiredays!=0) {
		document.cookie = name + "=" + escape( value ) + "; path=/; expires=" + todayDate.toGMTString() + ";"
	}
	else {
		document.cookie = name + "=" + escape( value ) + "; path=/; "
	}
}


/* 플래시 구현을 위한 스크립트 */
function FlashEolas(FlashWidth,FlashHeight,FlashURL,FlashVer,param)
{
	var ObjNo = "";
	if(document.getElementById("FlashEolasSwfBasic1")==null) {
		ObjNo = 1;
	}
	else {
		for(var i=1;i<15;i++) {
			if(document.getElementById("FlashEolasSwfBasic"+i)==null) {
				ObjNo = i;
				break;
			}
		}
	}
	if(param) {
		FlashURL+=param;
	}
	//if(FlashVer==null||FlashVer=="") { FlashVer = "7"; }
	FlashVer = 9;
	document.write("<object style='z-index:1;' classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=" + FlashVer + ",0,0,0' width='" + FlashWidth + "' height='" + FlashHeight + "' id='FlashEolasSwfBasic"+ObjNo+"'><param name='movie' value='" + FlashURL + "'><param name='quality' value='high'><param name='wmode' value='transparent'><param name='allowScriptAccess' value='always'><embed src='" + FlashURL + "' quality='high' wmode='transparent' pluginspage='http://www.macromedia.com/go/getflashplayer' type='application/x-shockwave-flash' width='" + FlashWidth + "' height='" + FlashHeight + "' allowScriptAccess='always' name='FlashEolasSwfBasic"+ObjNo+"'></embed></object>")
}


// 팝업
function popupWindow(mypage,w,h,scroll,location,windowname){
var win= null;
  if (scroll==0) {
    var scrollPrn = "no"
  }
  else {
    var scrollPrn = "yes"
  }

  if (location==0) {
    var winl = 0
    var wint = 0
  }
  else {
    var winl = (screen.width-w)/2;
    var wint = (screen.height-h)/2 - 50;
  }

  if (windowname==""||windowname==null) {
  	var popwindowname = "WIN_SUB_Second";

  }
  else {
  	var popwindowname = windowname
  }

  var settings  ='height='+h+',';
      settings +='width='+w+',';

      settings +='top='+wint+',';
      settings +='left='+winl+',menubar=0, toolbar=0,location=0,directory=0,scrollbars=' + scrollPrn + ',resizable=0';
  win=window.open(mypage,popwindowname,settings);

  if(parseInt(navigator.appVersion) >= 4){win.window.focus();}

  return win;
}



/**
 *	문자열에서 원하는 길이(byte형식)를 돌려줍니다.
 *	@return int length
 *	@ IE,FF 에서 확인됨
 */
String.prototype.bytes = function(str) {
	str = this != window ? this : str; len = 0;
	for(var i=0; i < str.length; i++) {
		len += (str.charCodeAt(i) > 128) ? 2 : 1
	}
	return len;
};

/**
 *	문자열에서 원하는 길이(byte형식)만큼 잘라내어 돌려준다.
 *	@param Int (byte의 길이)
 *	@return String
 *	@ IE,FF 에서 확인됨
 */
String.prototype.cut = function(len,str) {
	str = this != window ? this : str;
	var l = 0;
	for (var i=0; i<str.length; i++) {
			l += (str.charCodeAt(i) > 128) ? 2 : 1;
			if (l > len) return str.substring(0,i);
	}
	return str;
};



function getByteLength(input) {
	var byteLength = 0;
	for (var inx = 0; inx < input.length; inx++) {
		var oneChar = escape(input.charAt(inx));
		if ( oneChar.length == 1 ) {
			byteLength ++;
		} else if (oneChar.indexOf("%u") != -1) {
			byteLength += 2;
		} else if (oneChar.indexOf("%") != -1) {
			byteLength += oneChar.length/3;
		}
	}
	return byteLength;
}


function chkExtChar(str) {
	if(str.search(/[?'",/;:*\\|=]/g) > -1) {
		return false;
	}
	return;
}


function isValidId(str)  {
	var re=new RegExp("^[_a-zA-Z0-9]{4,20}$","gi");
    var matchArray=str.match(re);
    if (matchArray) return true;
    else return false;
}


function isValidEngNum(str)  {
	len = str.length; 
	ch = str.charAt(0); 

	for(i = 0; i < len; i++)  { 
		ch = str.charAt(i); 
		if( (ch >= '0' && ch <= '9') || (ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z') )  { 
			continue; 
		} 
		else  { 
			return false; 
		} 
	}

	return true; 
}

function isValidEmail(str) 
{
    var re=new RegExp("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$","gi");
    var matchArray=str.match(re);
    if (matchArray) return true;
    else return false;
}


function isValidMobile(str) 
{
	str = str.replace(/\s/gi,'').replace(/-/gi,'');
	var re=new RegExp("^([0]{1}[1]{1}[167890]{1})-?([1-9]{1}[0-9]{2,3})-?([0-9]{4})$","gi");
    var matchArray=str.match(re);
    if (matchArray) return true;
    else return false;
}

function isNumeric(str){
    var matchArray=str.match(/^\d+$/ig)
    if (matchArray) return true;
    else return false;
}


function checkCR(obj,maxLine) 
{

	var str_line = obj.value;
	line = str_line.split("\n");
	ln = line.length;
	if(ln == maxLine && event.keyCode == 13) {
		alert(maxLine+"줄까지만 입력가능합니다");
		event.returnValue = false;
	}


}

function isObject(a) {
    return (a && typeof a == 'object') || isFunction(a);
}

function isFunction(a) {
    return typeof a == 'function';
}

 //① 입력필드에 숫자키, 삭제키, 방향키, 탭키, 홈, 엔드키 만 입력할수 있음.
function handlerNum( obj ) {
//숫자만 입력 받게끔 하는 함수.
  e = window.event; //윈도우의 event를 잡는것입니다.
//  alert(e.keyCode);

   //입력 허용 키
  if( ( e.keyCode >=  48 && e.keyCode <=  57 ) ||   //숫자열 0 ~ 9 : 48 ~ 57
( e.keyCode >= 96 && e.keyCode <= 105 ) || //키패드 0 ~ 9 : 96 ~ 105
        e.keyCode ==   8 ||    //BackSpace
        e.keyCode ==  46 ||    //Delete
        e.keyCode == 110 ||    //소수점(.) : 문자키배열
        e.keyCode == 190 ||    //소수점(.) : 키패드
        e.keyCode ==  37 ||    //좌 화살표
        e.keyCode ==  39 ||    //우 화살표
        e.keyCode ==  35 ||    //End 키
        e.keyCode ==  36 ||    //Home 키
        e.keyCode ==   9       //Tab 키
    ) {
  
    if(e.keyCode == 48 || e.keyCode == 96) { //0을 눌렀을경우
      if ( obj.value == "" || obj.value == '0' ) //아무것도 없거나 현재 값이 0일 경우에서 0을 눌렀을경우
        e.returnValue=false; //-->입력되지않는다.
      else //다른숫자뒤에오는 0은
        return; //-->입력시킨다.
      }
      
    else if ( e.keyCode == 110 || e.keyCode == 190 ) { //소수점을 눌렀을 경우
      if ( obj.value == "" ) {  //아무것도 없는 상태에서 소수점을 입력했을경우 "0."으로 표기
        obj.value = "0";
        return;
      }
      
      if ( obj.value.indexOf(".") != -1 ) {  //기존에 소수점이 들어있다면
        e.returnValue=false;                 //입력시키지 않는다.
      }
    }
    else //0이 아닌숫자
      return; //-->입력시킨다.
    }
    else //숫자가 아니면 넣을수 없다.
  e.returnValue=false;
}
/**
 * 입력값이  null 인지 체크한다
 */
function isNull(input){
       if (input.value == null || input.value == ""){
             return true;
       }else{
             return false;
       }
}
/**
 * 입력값이 스페이스 이외의 의미있는 값이 있는지 체크한다
 * if (isEmpty(form.keyword)){
 *       alert('값을 입력하여주세요');
 * }
 */
function isEmpty(input){
       if (input.value == null || input.value.replace(/ /gi,"") == ""){
             return true;
       }else{
             return false;
       }
}

/**
 * 입력값이 사용자가 정의한 포맷 형식인지 체크
 * 자세한 format 형식은 자바스크립트의 'reqular expression' 참고한다
 */
function isValidFormat(input, format){
       if (input.value.search(format) != -1){
             return true; // 올바른 포멧형식
       }      
       return false;
}

/**
 * 입력값이 이메일 형식인지 체크한다
 * if (!isValidEmail(form.email)){
 *       alert("올바른 이메일 주소가 아닙니다");
 * }
 */
 /*
function isValidEmail(input){
       var format = /^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/;
       return isValidFormat(input, format);
}
*/
/**
 * 입력값이 전화번호 형식(숫자-숫자-숫자)인지 체크한다
 */
function isValidPhone(input){
       var format = /^(\d+)-(\d+)-(\d+)$/;
       return isValidFormat(input, format);
}
/**
 * 입력값의 바이트 길이를 리턴한다.
 * if (getByteLength(form.title) > 100){
 *    alert("제목은 한글 50자 (영문 100자) 이상 입력할수 없습니다");
 * }
 */


/* 이미지 파일 체크 */
function checkImageFile(obj) {
	if (obj.value == "" || !obj.value.match(/(\.jpg)|(\.jpeg)|(\.gif)|(\.png)/i)) {
	  alert("이미지파일만 업로드 할 수 있습니다.");
	  return false;
	}
}

/* CSV 파일 체크 */
function checkCSVFile(obj) {
	//if (obj.value == "" || !obj.value.match(/(\.csv)/i)) {
	if (obj.value == "" || !obj.value.match(/(\.xls)/i)) {
	  alert("XLS파일만 업로드 할 수 있습니다.");
	  obj.value = '';
	  return false;
	}
}
/* 로그인 */
function login(){
	var login_id = $('UserLogin_id').value.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
}
/*아이디 저장 체크시 경고창*/
function confirmSave(checkbox)
{
 var isRemember;

	 if(checkbox.checked) {
		 isRemember = confirm("이 PC에 로그인 정보를 저장하시겠습니까? PC방등의 공공장소에서는 개인정보가 유출될 수 있으니 주의해주십시오.");

		if(!isRemember)
			checkbox.checked = false;
	}
}
/* 아이디 저장 */
function saveLogin(id)
{
	if(id != ""){
	// userid 쿠키에 id 값을 7일간 저장
		setCookie("userid", id, 7);
	}else{
	// userid 쿠키 삭제
		setCookie("userid", id, -1);
	}
}
/* 저장된 아이디 출력*/
function getLogin()
{
	if(isObject($('UserLogin_id'))){
		$('UserLogin_id').value = getCookie("userid");
		if(getCookie("userid")!=""){
			$('UserIdchk').checked = true;
		}
	}
}


//로그인
function login_web(){
	//아이디 입력 체크
	if($('UserLogin_id').value.replace(/^\s\s*/, '').replace(/\s\s*$/, '').length<=0){
		alert('아이디를 입력해 주세요');
		return;
	}
	//패스워드 입력체크
	if($('UserLogin_passwd').value.replace(/^\s\s*/, '').replace(/\s\s*$/, '').length<=0){
		alert('패스워드를 입력해 주세요');
		return;
	}

	// submit
	if($('UserIdchk').checked == true){
		saveLogin($('UserLogin_id').value);
	}else{
		saveLogin('');
	}
	$('frmLogin').submit();
}


//엔터키로 로그인
function enterId(event) {
	if(event.keyCode==13) {
		if(!$('UserLogin_id').value) {
			alert('아이디를 입력해 주세요.');
			$('UserLogin_id').focus();
			return;
		}
		$('UserLogin_passwd').focus();
	}
}

function enterPassword(event) {
	if(event.keyCode==13) {
		login_web();
	}
}


//숫자 출력형식 xxx,xxx 회계 단위
String.prototype.numberFormat=function() {
	return this.replace(/(\d)(?=(?:\d{3})+(?!\d))/g,'$1,');
};


function msg_delete(d_id,s_type)	{

	if(confirm('선택하신 메시지를 삭제하시겠습니까?')) {
		var d_id, s_type;
		location.href="mn_mymsg.php?content_ids[]="+d_id+"&service_type="+s_type;
	} return false;
}


//Byte계산
function length_count(field, max_count)  { 
    var str; 
    var str_count = 0; 
    var cut_count = 0; 
    var str_length = field.value.length; 

    for(k=0; k < str_length; k++) { 
        str=field.value.charAt(k); 
        if(escape(str).length > 4) { 
            str_count += 2; 
        } else { 
            if(escape(str)=='%0A') { 
            } else { 
                str_count++; 
            } 
        } 

        if(max_count < str_count) { 
            alert("글자수가 "+ max_count +" byte 이상은 사용불가능합니다"); 
            if(escape(str).length > 4) str_count -= 2; 
            else str_count--; 
            
            field.value = field.value.substring(0,k); 
            break; 
        } 
    } 
    //eval("document.all."+ field.name+"_count.innerHTML = str_count;"); 
} 

//로그인체크
function chkLogin(pid) {
	var pid;
	if (pid == '')
	{
		alert('로그인하여 사용하여 주십시요');
		return false;
	} else {
		return true;
	}

}

//숫자체크
function checkNumber(obj,str)	{
	if (obj==null || isNaN(obj.value))
	{
		if (str == "c_join") {
			alert("사업자 등록번호가 입력형식과 맞지 않습니다. 다시 입력하시오.");
		} else {
			alert("숫자만 입력이 가능합니다.");
		}
		
		obj.value = "";	
		return;		
	}
}


//이메일 체크
function checkEmail(email1,email2) {

	if( email1=="" || email2==""){
		alert("이메일을 입력해 주세요.");
		return;
	}

	var str1=email1; 
	var str2=email2; 
	var str=str1+'@'+str2; 
	var atPos = str.indexOf('@');
	var atLastPos = str.lastIndexOf('@');
	var dotPos = str.indexOf('.');
	var spacePos = str.indexOf(' ');
	var commaPos = str.indexOf(',');
	var eMailSize = str.length;
	if(!isValidEmail(str) ){
		alert('이메일 형식이 잘못되었습니다.');
		email.value = "";	
		return;

	}
}

function num_check(evt) { 
	var keyCode; 
	var NN = (navigator.appName == "Netscape") ? 1: 0; 

	if ( NN ) { 
		keyCode=evt.which; 
		if ((keyCode >13 && keyCode < 48) || keyCode > 57){ 
			evt.preventDefault(); 
		}	 
	} else { 
		keyCode = event.keyCode; 
		if (keyCode < 48 || keyCode > 57){ 
			event.returnValue=false; 
		} 
	} 
}
function length_check(value,length) { 

	if(value.length ==length){
		alert('비밀번호는 14자리 까지 입니다.');
		return;
	}
} 

function chgMmsLocation(asType){
	var ContURL = '/views/main/saving_action.php?type=' + asType;
	new Ajax.Request( ContURL, {
		asynchronous:true,
		evalScripts:true,
		onComplete:function(t) {
			var json = false;

			try {
				json = eval( "(" + t.responseText + ")" );
				if(json.resultCode==true) {
					location.href="/views/mt_send.php";
					return;
				}

			}
			catch(e) {
				alert(e.message);
				return;
			}

		}
	} );
}
function goMain(){
	//opener 가 있다면 재귀함수 호출

	if(isObject(parent)){
		parent.location.href="/login.php";
	}else if(isObject(opener)){
		opener.location.href="/login.php";
		self.close;
	}else{
		document.location.href="/login.php";
	}
}
