<!--
/*------------------------------------------------------------------------------------------
// 전역변수 설정
------------------------------------------------------------------------------------------*/
var jsGblUsrNum		= "";																				// 회원 고유번호(전역변수)
var timerStrLength;
var drag1, drag2;


/*------------------------------------------------------------------------------------------
// 화면 로드 후 처리
------------------------------------------------------------------------------------------*/
addOnLoadEvents(ini_left);


/*------------------------------------------------------------------------------------------
// 윈도우 로드 후 처리 공용 함수
// window.onload를 여러곳에서 사용가능하게 하는 함수
------------------------------------------------------------------------------------------*/
function addOnLoadEvents(func)
{
  var oldonload = window.onload;

  if ( typeof window.onload != 'function' )
  {
    window.onload = func;
  }
  
  else
  { 
    window.onload = function()
    {
      oldonload();
      func();
    }
  }
}


/*------------------------------------------------------------------------------------------
// 초기화 : 화면 로드 후 각종 처리
1. div 레이어 드래그 설정 초기화
2. 확인 : 받은 쪽지
------------------------------------------------------------------------------------------*/
function ini_left()
{
	// 도움말 레이어창
	var helpLayerView=1;

	// Draggable 초기화
	ini_draggable();


	// 확인 : 받은 쪽지
	// 받은 쪽지가 있으면 쪽지 팝업창을 띄워서 보여준다.(쪽지함 화면이 아닌 경우에만)
	if(document.getElementById('hidLoadNewMemoCnt').value>0)
	{
		if(!(document.getElementById('hidLoadRequestUrl').value.indexOf("cM=3")>0))
		{
			// 쪽지 레이어 창을 띄우게 되면 도움말 레이어창을 띄우지 않는다.
			helpLayerView = 0;
			query_memoGet(document.getElementById('hidLoadNewMemoNum').value,document.getElementById('hidLoadUserNo').value);
		}
	}

	// 확인 : 리퍼러
	if(document.getElementById("hidLoadReferer").value!='')
	{
		// 리퍼터를 쿠키로 생성
		setCookie("visit_ref", document.getElementById("hidLoadReferer").value, 1);
	}


	// 도움말 : 레이어창 (다른 레이어창을 사용하고 있지 않은 경우에만)
	if( helpLayerView==1 && 
			(document.getElementById("spnPopView").innerHTML=="" && document.getElementById("spnPopView2").innerHTML=="")
			)
	{

		//getCookie 함수를 호출하여 쿠키값을 가져온다. 
		var blnCookie = getCookie("twarhelp0902"); 

		//쿠키값이 true가 아닐 경우에만 새 창을 띄운다. 
		if(!blnCookie || blnCookie=="")
		{ 
			//help_layer();
		}		
	}
}


/*------------------------------------------------------------------------------------------
// 드래그 초기화
------------------------------------------------------------------------------------------*/
function ini_draggable()
{
	// div 레이어 드래그 설정 초기화
	// AJAX etc.	: div 창 이동
	drag1 = new Draggable('divPopViewArea',{
		endeffect:function(){
		  new Effect.Highlight('divPopViewArea',{queue:'end'});
		}
	});
	
	
	// AJAX etc.	: div 창 이동
	drag2 = new Draggable('divPopViewArea2',{
		endeffect:function(){
		  new Effect.Highlight('divPopViewArea2',{queue:'end'});
		}
	});
}


/*------------------------------------------------------------------------------------------
// AddFavorie()라는 함수가 호출되면 twar.co.kr즐겨찾기에 추가
------------------------------------------------------------------------------------------*/
function bookmark()
{
	window.external.AddFavorite('http://www.twar.co.kr', '세상에서 가장 재미있는 게시판 "티워"');
}


/*------------------------------------------------------------------------------------------
// 도움말 레이어 창 보이기
------------------------------------------------------------------------------------------*/
function help_layer()
{
	document.getElementById("helpLayer").style.display = "";


	// 설정 : 창 위치(높이)
	var windowHeight = document.viewport.getDimensions();
	var scrollHeight = document.viewport.getScrollOffsets();

	var w = 565;			// 창 가로 크기
	var h = 375;			// 창 세로 크기
	var t = (windowHeight.height/2)+scrollHeight.top-(h/2)				// 창 상단 위치
	var l = '';				// 창 좌측 위치


	// I : 값이 없으면 가운데 정렬
	if(l=='undefined' || l=='')
	{
		l = (document.body.scrollLeft + (document.body.clientWidth/2)-50)-(w/2);		// 창 좌측 위치
	}

	// I : 스크롤 left 값보다 적으면 기본 설정
	if(l<(document.body.scrollLeft + 50))
	{
		l = (document.body.scrollLeft + 50);
	}

	document.getElementById("helpLayer").style.left = l+"px";
	document.getElementById("helpLayer").style.top = t+"px";
	document.getElementById("helpLayer").style.zIndex = 200;


	// 도움말 레이어창을 띄우지 않게 자동 설정 : comp_help_layer.inc
	controlCookie(document.getElementById('chkhelpLayer'));

	
	// 5초 후에 "다시 창을 열지 않음"
	setTimeout("close_help_layer()",5000);
}


/*------------------------------------------------------------------------------------------
// 닫기 : 도움말 레이어 창 다시 창을 열지 않음 보이기
------------------------------------------------------------------------------------------*/
function close_help_layer()
{
	document.getElementById("closeHelpLayer").style.display = "";
}


/*------------------------------------------------------------------------------------------
// 이동 : 프로필관리
------------------------------------------------------------------------------------------*/
function profileManagement()
{
	var strUsrNum	= document.getElementById('hidLoadUserNo').value;			// 고유번호


	// 로그인 확인
	if(!strUsrNum)
	{
		alert("로그인을 해주세요.");
		return false;
	}	

	window.location.href='../user/mypage.php';
}


/*------------------------------------------------------------------------------------------
// 이동 : 내정보
------------------------------------------------------------------------------------------*/
function myInfo()
{
	var strUsrNum	= document.getElementById('hidLoadUserNo').value;			// 고유번호


	// 로그인 확인
	if(!strUsrNum)
	{
		alert("로그인을 해주세요.");
		return false;
	}	

	window.location.href='../user/mypage.php?cM=3';
}


/*------------------------------------------------------------------------------------------
// ajax : 조회
// 프로필(회원/본인) 조회
------------------------------------------------------------------------------------------*/
function query_myProfilePopView(uid)
{
	var gbnCode		= "qMyProfile"
	var strUsrNum	= uid;			// 고유번호

	// 찬성/반대했던 전우들 조회시 사용
	jsGblUsrNum = uid;				// 회원 고유번호(전역변수)

	// 로그인 확인
	if(!strUsrNum)
	{
		alert("로그인을 해주세요.");
		return false;
	}	


	var src = "../user/profile_user_pop.php";

	// 확인 : 회원/본인
	if(document.getElementById('hidLoadUserNo').value==strUsrNum)
	{
		src = "../user/profile_my_pop.php";
	}


  // ajax
  if (window.ActiveXObject)
  {
  	xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
	} 
  
  else if (window.XMLHttpRequest)
	{
  	xmlHttp = new XMLHttpRequest();
	}

	var handlerFunction = query_myProfilePopView_check;

	xmlHttp.onreadystatechange = handlerFunction;
	xmlHttp.open("POST",src,true);
	xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	xmlHttp.send("gbnCode="+gbnCode+"&strUsrNum="+strUsrNum);
}


/*------------------------------------------------------------------------------------------
// ajax : 조회
// 프로필(회원/본인) 조회 에러 확인
------------------------------------------------------------------------------------------*/
function query_myProfilePopView_check()
{
	if(xmlHttp.readyState == 4)
	{
		if(xmlHttp.status == 200)
		{
			ret_query_myProfilePopView();
		}

		else
		{
			alert("There was a problem retrieving the XML data:\n" + xmlHttp.statusText);
		}
	}
}


/*------------------------------------------------------------------------------------------
// ajax : 조회
// 프로필(회원/본인) 조회 결과 확인
------------------------------------------------------------------------------------------*/
function ret_query_myProfilePopView()
{
	var res = xmlHttp.responseText;


	// 설정 : 창 위치(높이)
	var windowHeight = document.viewport.getDimensions();
	var scrollHeight = document.viewport.getScrollOffsets();

	var w = 574+150;	// 창 가로 크기 : 메신저창보다 왼쪽에 위치 시키기위해 크기를 약간 늘렸다.
	var h = 420;			// 창 세로 크기
	var t = (windowHeight.height/2)+scrollHeight.top-(h/2)				// 창 상단 위치
	var l = '';				// 창 좌측 위치
	var zI = 100;			// 창 

	var divID = "divPopViewArea";
	var spnID = "spnPopView";

	divPopCenter(res, w, h, t, l, zI, divID, spnID);
}


/*------------------------------------------------------------------------------------------
// div창 열기 : 중앙 정렬되어서 보여주는 div 창 열기
------------------------------------------------------------------------------------------*/
function divPopCenter(strHtml, w, h, t, l, zI, divID, spnID)
{
	if(divID==null || divID == undefined || divID == '')
	{
		divID = "divPopViewArea";
	}

	if(spnID==null || spnID == undefined || spnID == '')
	{
		spnID = "spnPopView";
	}

	// w값이 없으면 0
	if(w=='undefined' || w=='')
	{
		w = 0;
	}

	// h값이 없으면 0
	if(h=='undefined' || h=='')
	{
		h = 0;
	}

	// zI값이 없으면 100
	if(zI=='undefined' || zI=='')
	{
		zI = 100;
	}


	// t : 값이 없으면 가운데 정렬
	if(t=='undefined' || t=='')
	{
		t = (document.body.scrollTop + (document.body.clientHeight/2)-50)-(h/2);		// 창 상단 위치
	}

	// I : 값이 없으면 가운데 정렬
	if(l=='undefined' || l=='')
	{
		l = (document.body.scrollLeft + (document.body.clientWidth/2)-50)-(w/2);		// 창 좌측 위치
	}


	// t : 스크롤 height 값보다 적으면 기본 설정
	if(t<(document.body.scrollTop + 50))
	{
		t = (document.body.scrollTop + 50);
	}

	// I : 스크롤 left 값보다 적으면 기본 설정
	if(l<(document.body.scrollLeft + 50))
	{
		l = (document.body.scrollLeft + 50);
	}


	// 마이 프로필을 중앙 정렬해서 보여준다.
	document.getElementById(spnID).innerHTML = strHtml;

	// 가운데 정렬
	document.getElementById(divID).focus;
	document.getElementById(divID).style.left = l+"px";
	document.getElementById(divID).style.top = t+"px";
	document.getElementById(divID).style.zIndex = zI;
}


/*------------------------------------------------------------------------------------------
// div창 닫기 : 중앙 정렬되어서 보여주는 div 창을 닫는다.
// 사용 예>spnPopView_Close('divPopViewArea','spnPopView')
------------------------------------------------------------------------------------------*/
function spnPopView_Close(dPA, sPV)
{
	document.getElementById(dPA).style.width = "";
	document.getElementById(dPA).style.height = "";
	document.getElementById(sPV).innerHTML = "";
}

/*------------------------------------------------------------------------------------------
// div창 열기 : 이미지 클릭시 중앙 정렬되어서 보여주는 이미지 div 창
// 수정 : 최창환
------------------------------------------------------------------------------------------*/
function showImgPopUp(url) {
	/*
	 * 오버레이 레이어 획득.
	 * 없으면 만든다.
	 */
	var imgOverlay = $('lyr_imgOverlay');
	
	if (imgOverlay == null) {
		Element.insert(document.getElementsByTagName('body')[0], {bottom: '<div id="lyr_imgOverlay" style="filter:alpha(opacity=50);-moz-opacity:.50;opacity:.50;"></div>'});
		imgOverlay = $('lyr_imgOverlay');
	}

	/*
	 * 이미지 표시용 레이어 획득.
	 * 없으면 만든다.
	 */
	var imgPopup = $('lyr_imgPopup');

	if (imgPopup == null) {
		Element.insert(document.getElementsByTagName('body')[0], {bottom: '<div id="lyr_imgPopup"></div>'});
		imgPopup = $('lyr_imgPopup');
	}

	/*
	 * 임시이미지 로딩
	 */
	var tempImg = new Element('img');
	
	/*
	 * 이미지 로드 이벤트 핸들러 작성
	 */
	tempImg.onload = function() {
		/*
		 * 각종 위치 좌표들
		 */
		var scrollOffsets = document.viewport.getScrollOffsets();
		var viewportDims = document.viewport.getDimensions();
		var imgPopupDims = imgPopup.getDimensions();
		var bodyDims = document.getElementsByTagName('body')[0].getDimensions();

		var horizon = 0;
		var vertical = 0;
		var padding = 10;
		var bottomHeight = 30;
		var margin = 20;
		var space = (padding + margin) * 2;
		
		var width = tempImg.width;
		var height = tempImg.height;
		
		/*
		 * 이미지 크기를 조절한다.
		 */
		if (width > viewportDims.width - space) {
			var scale = (viewportDims.width - space) / width;
			
			width *= scale;
			height *= scale;
		}
		
		if (height > viewportDims.height - space) {
			var scale = (viewportDims.height - space - bottomHeight) / height;
			
			width *= scale;
			height *= scale;
		}
		
		var imgTag = '<img src="'+ url + '" width="' + width + '" height="' + height + '" />';
		
		/*
		 * 이미지 레이어의 위치를 가운데로 맞춘다.
		 */
		var imgStyles = {
			position: 'absolute',
			padding: padding + 'px',
			margin: margin + 'px',
			textAlign: 'right',
			backgroundColor: '#FFFFFF',
			top : (((viewportDims.height - bottomHeight - (height + space)) / 2) + scrollOffsets.top) + 'px',
			left : (((viewportDims.width - (width + space)) / 2) + scrollOffsets.left) + 'px',
			width: width + 'px',
			height: (height + bottomHeight) + 'px',
			'z-index' : '1001 !important'
		};

		/*
		 * 오버레이 레이어를 화면에 가득 채운다.
		 */
		var overlayStyles = {
			position: 'absolute',
			left: 0 ,
			top: 0,
			backgroundColor: '#000000',
			width: (bodyDims.width) + 'px',
			height: (bodyDims.height) + 'px',
			'z-index' : '1000 !important'
		}
		
		/*
		 * 오버레이를 보여준다
		 */
		imgOverlay.setStyle(overlayStyles);
		imgOverlay.show();
		Event.observe(imgOverlay, 'click', function(event) {
			closeImgPopUp();
		});

		/*
		 * 이미지를 보여준다.
		 */
		imgPopup.update('<div><a href="#close" onClick="closeImgPopUp(); return false;">' + imgTag + '</a></div><div style="height:'+bottomHeight+'px;"><a href="'+url+'" target="_blank"><img src="/images/0/btn/btn_newwin.gif" style="margin-top:10px;"/></a> <a href="#close" onClick="closeImgPopUp(); return false;"><img src="/images/0/btn/btn_close05.gif" /></a></div>');
		imgPopup.setStyle(imgStyles);
		imgPopup.show();
		tempImg.onload = null;
	} /* tempImg.onload 끝 */
	
	/*
	 * 실제로 이미지 로드
	 */
	tempImg.src = url;
}

/*------------------------------------------------------------------------------------------
// div창 닫기 : 이미지 클릭시 중앙 정렬되어서 보여주는 이미지 div 창 닫기
------------------------------------------------------------------------------------------*/
function closeImgPopUp()
{
		var imgOverlay = $('lyr_imgOverlay');
	
		if (imgOverlay != null) {
			imgOverlay.hide();
		}
		
		var imgPopup = $('lyr_imgPopup');
		
		if (imgPopup != null) {
			imgPopup.hide();
		}
		
}

/*------------------------------------------------------------------------------------------
// 확인 : SSO 가입 닉네임
------------------------------------------------------------------------------------------*/
function data_check_joinconusernick()
{
	// 확인 : 닉네임 : 제한 문자
	if(!isSpecialChar(document.getElementById("txtJoinConUserNick").value))
	{
		alert("사용하실 수 없습니다.");
		return false;
	}
	
	// 확인 : 닉네임 : 입력 글자 수
	if(document.getElementById("txtJoinConUserNick").value.length > 5)
	{
		alert("닉네임 입력 글자 수는 최대 5자입니다.");
		return false;
	}
	
	return true;
}


/*------------------------------------------------------------------------------------------
// 확인 : SSO 가입 비밀번호, 닉네임, 휴대전화번호
------------------------------------------------------------------------------------------*/
function data_check_joinconinfo()
{
	// 확인 : 비밀번호
	document.getElementById('txtJoinConPassword').value  = document.getElementById('txtJoinConPassword').value.trim();

	if(!isEngNum(document.getElementById('txtJoinConPassword').value))
	{
		alert("비밀번호는 영문/숫자/4글자이상 20글자 이하여야 합니다.");
		document.getElementById('txtJoinConPassword').value = "";
		document.getElementById('txtJoinConPassword2').value = "";
		document.getElementById('txtJoinConPassword').focus();
		return false;
	}

	if(document.getElementById('txtJoinConPassword').value.length < 4 || 20 < document.getElementById('txtJoinConPassword').value.length)
	{
		alert("비밀번호는 영문/숫자/4글자이상 20글자 이하여야 합니다.");
		document.getElementById('txtJoinConPassword').value = "";
		document.getElementById('txtJoinConPassword2').value = "";
		document.getElementById('txtJoinConPassword').focus();
		return false;
	}

	if(!isTabSpace(document.getElementById('txtJoinConPassword').value))
	{
		alert("비밀번호는 띄어쓰기없는 영문/숫자/4글자이상 20글자 이하여야 합니다.");
		document.getElementById('txtJoinConPassword').value = "";
		document.getElementById('txtJoinConPassword2').value = "";
		document.getElementById('txtJoinConPassword').focus();
		return false;
	}

	if(document.getElementById('txtJoinConPassword').value!=document.getElementById('txtJoinConPassword2').value)
	{
		alert("비밀번호가 일치하지 않습니다. 다시 입력해주세요.");
		document.getElementById('txtJoinConPassword').value = "";
		document.getElementById('txtJoinConPassword2').value = "";
		document.getElementById('txtJoinConPassword').focus();
		return false;
	}


	// 확인 : 닉네임
	if(document.getElementById('txtJoinConUserNick_check').value != 'true')
	{
		alert("닉네임 중복체크를 해주세요.");
		document.getElementById('txtJoinConUserNick').focus();
		return false;
	}	


	// 확인 : 휴대전화
	document.getElementById('txtJoinConPhone2').value  = document.getElementById('txtJoinConPhone2').value.trim();
	document.getElementById('txtJoinConPhone3').value  = document.getElementById('txtJoinConPhone3').value.trim();

	if(document.getElementById('selJoinConPhone1').value=='')
	{
		alert("휴대폰 번호를 선택해주세요.");
		document.getElementById('selJoinConPhone1').focus();
		return false;
	}


	if(document.getElementById('txtJoinConPhone2').value=='')
	{
		alert("휴대폰 번호를 입력해주세요.");
		document.getElementById('txtJoinConPhone2').focus();
		return false;
	}

	if(!isNumber(document.getElementById('txtJoinConPhone2').value))
	{
		alert("숫자만 입력해주세요.");
		document.getElementById('txtJoinConPhone2').value="";
		document.getElementById('txtJoinConPhone2').focus();
		return false;
	}

	if(document.getElementById('txtJoinConPhone3').value=='')
	{
		alert("휴대폰 번호를 입력해주세요.");
		document.getElementById('txtJoinConPhone3').focus();
		return false;
	}

	if(!isNumber(document.getElementById('txtJoinConPhone3').value))
	{
		alert("숫자만 입력해주세요.");
		document.getElementById('txtJoinConPhone3').value="";
		document.getElementById('txtJoinConPhone3').focus();
		return false;
	}

	if(document.getElementById('selJoinConPhone1').value != "" && !isCellPhone(new Array(document.getElementById('selJoinConPhone1').value, document.getElementById('txtJoinConPhone2').value, document.getElementById('txtJoinConPhone3').value)))
	{
		alert("핸드폰 번호를 올바르게 입력해주세요");
		document.getElementById('txtJoinConPhone2').value="";
		document.getElementById('txtJoinConPhone3').value="";
		document.getElementById('txtJoinConPhone2').focus();
		return false;
	}

	return true;
}

/*------------------------------------------------------------------------------------------
// ajax : 수정
// SSO 가입 비밀번호, 닉네임, 전화번호 변경
------------------------------------------------------------------------------------------*/
function ajaxRequestJoinConUserNick()
{
	document.getElementById("txtJoinConUserNick").value  = document.getElementById("txtJoinConUserNick").value.trim();

	if(document.getElementById("txtJoinConUserNick").value.length<1)
	{
		alert("닉네임을 입력해주세요.");
		document.getElementById("txtJoinConUserNick").select();
	}
	
	else
	{
		// 확인 : 데이터
		var ret = data_check_joinconusernick();
		
		if(ret==false)
		{
			document.getElementById("txtJoinConUserNick").value = "";
			document.getElementById("txtJoinConUserNick").select();
			return false;
		}
	
		var ajax = new Ajax.Request(
			"../user/chk_nick.php",{
				parameters:'nick='+document.getElementById("txtJoinConUserNick").value,
				onComplete:ajaxResponseJoinConUserNick
			}
		);
	}
}


function ajaxResponseJoinConUserNick(responseHttpObj)
{
	var returnData = responseHttpObj.responseText;
	if(returnData == 'true'){
		alert('사용 가능한 닉네임입니다.');
		document.getElementById("txtJoinConUserNick_check").value='true';
		document.getElementById("txtJoinConPhone2").select();
	}else{
		alert('이미 사용중인 닉네임입니다. 다른 닉네임을 입력해 주세요.');
		document.getElementById("txtJoinConUserNick_check").value='false';
		document.getElementById("txtJoinConUserNick").value = "";
		document.getElementById("txtJoinConUserNick").select();
	}
}


/*------------------------------------------------------------------------------------------
// ajax : 수정
// SSO 가입 비밀번호 수정
------------------------------------------------------------------------------------------*/
function update_JoinConInfo()
{
/*
	var retConfirm = confirm("적용하시겠습니까?");

	if(!retConfirm)
	{
		return false;
	}
*/
	//=== 확인 : 필수 데이터

	// 확인 : 로그인( 고유번호)
	if(!document.getElementById('hidLoadUserNo').value)
	{
		alert("로그인을 먼저 해 주세요.");
		return false;
	}


	// 확인 : 데이터
	var ret = data_check_joinconinfo();
		
	if(ret==false)
	{
		return false;
	}


	var gbnCode		= "uJoinConInfo"
	var strUsrNum	= document.getElementById('hidLoadUserNo').value;							// 고유번호
	var strPassword	= document.getElementById("txtJoinConPassword").value;			// 변경 비밀번호
	var strUserNick	= document.getElementById("txtJoinConUserNick").value;			// 닉네임
	var strPhone		= ""			// 휴대전화번호

	strPhone = document.getElementById('selJoinConPhone1').value + '-' + document.getElementById('txtJoinConPhone2').value + '-' + document.getElementById('txtJoinConPhone3').value;


  // ajax
  if (window.ActiveXObject)
  {
  	xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
	} 
  
  else if (window.XMLHttpRequest)
	{
  	xmlHttp = new XMLHttpRequest();
	}

	var handlerFunction = update_JoinConInfo_check;

	xmlHttp.onreadystatechange = handlerFunction;
	xmlHttp.open("POST","../sso/sso_join_congratulation.php",true);
	xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	xmlHttp.send("gbnCode="+gbnCode+"&strUsrNum="+strUsrNum+"&strPassword="+strPassword+"&strUserNick="+strUserNick+"&strPhone="+strPhone);
}


/*------------------------------------------------------------------------------------------
// ajax : 수정
// SSO 가입 비밀번호 수정 에러 확인
------------------------------------------------------------------------------------------*/
function update_JoinConInfo_check()
{
	if(xmlHttp.readyState == 4)
	{
		if(xmlHttp.status == 200)
		{
			ret_update_JoinConInfo();
		}

		else
		{
			alert("There was a problem retrieving the XML data:\n" + xmlHttp.statusText);
		}
	}
}


/*------------------------------------------------------------------------------------------
// ajax : 수정
// SSO 가입 비밀번호 수정 결과 확인
------------------------------------------------------------------------------------------*/
function ret_update_JoinConInfo()
{
	var res = xmlHttp.responseText;
	var ret_res = res.split(",");

	// 취소
	if(ret_res[0] == 0)
	{
		alert("취소되었습니다. 다시 실행하세요.");
	}

	// 성공
	else if(ret_res[0] == 1)
	{
		alert("적용되었습니다.");
		
		// div창 닫기 : 활성화
		document.getElementById('imgJoinConClose1').style.display = "";
		document.getElementById('imgJoinConClose2').style.display = "none";
		document.getElementById('txtJoinConUserNick_check').value = "false";
	}

	// 메시지 출력
	else
	{
		alert(ret_res);
	}
}


/*------------------------------------------------------------------------------------------
// ajax : 수정
// 메신저 사운드 수정
------------------------------------------------------------------------------------------*/
function update_soundMsger()
{
	var on = document.getElementById("hidSoundSet").value;


  // ajax
  if (window.ActiveXObject)
  {
  	xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
	} 
  
  else if (window.XMLHttpRequest)
	{
  	xmlHttp = new XMLHttpRequest();
	}

	var handlerFunction = update_soundMsger_check;

	xmlHttp.onreadystatechange = handlerFunction;
	xmlHttp.open("POST","../user/p_sound.php",true);
	xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	xmlHttp.send("type=msger&on="+on);
}


/*------------------------------------------------------------------------------------------
// ajax : 수정
// 메신저 사운드 수정 에러 확인
------------------------------------------------------------------------------------------*/
function update_soundMsger_check()
{
	if(xmlHttp.readyState == 4)
	{
		if(xmlHttp.status == 200)
		{
			ret_update_soundMsger();
		}

		else
		{
			alert("There was a problem retrieving the XML data:\n" + xmlHttp.statusText);
		}
	}
}


/*------------------------------------------------------------------------------------------
// ajax : 수정
// 메신저 사운드 수정 결과 확인
------------------------------------------------------------------------------------------*/
function ret_update_soundMsger()
{
	var res = xmlHttp.responseText;
	var ret_res = res.split(",");

	// 취소
	if(ret_res[0] == 0)
	{
		alert("취소되었습니다. 다시 실행하세요.");
	}

	// 성공
	else if(ret_res[0] == 1)
	{
		// 사운드 이미지(아이콘)을 바꾼다.
		if(document.getElementById("hidSoundSet").value==0)
		{
			document.getElementById("imgSoundMsger").src = "../images/newtwar2/images/btn_audio_o.gif";
			document.getElementById("hidSoundSet").value = 1;
		}
		
		else
		{
			document.getElementById("imgSoundMsger").src = "../images/newtwar2/images/btn_audio_x.gif";
			document.getElementById("hidSoundSet").value = 0;
		}

		alert(ret_res[1]);
	}

	// 메시지 출력
	else
	{
		alert(ret_res);
	}
}


function clearTimerStrLength()
{
	clearTimeout(timerStrLength);
}


function setTimerStrLength(objThis,eid)
{
	if(document.getElementById(objThis.id) == null)
	{
		return;
	}
	
	var str = document.getElementById(objThis.id).value;
	var l = 0;

	for(var i=0, c; i<str.length; i++)
	{
		c=str.charCodeAt(i);

		/*if(c > 128 )
		{
			l +=  2;
		}
		
		else
		{
		*/
			l +=  1;
		//}
	}

	document.getElementById(eid.id).innerHTML = l;

	var fn = function()
	{
  	setTimerStrLength(objThis,eid);
	}

	timerStrLength =	setTimeout(fn,100);
}


/*------------------------------------------------------------------------------------------
// ajax : 조회
// 팝업 : 쪽지 보내기 폼 불러오기
------------------------------------------------------------------------------------------*/
function query_memoSend(userno,usernick)
{
	if(!userno)
	{
		alert("받는 사람의 정보를 확인할 수 없습니다.");
		return;
	}


	var gbnCode				= "qMemoSend";
	var strToUsrNum		= userno;											// 받는 사람 고유번호
	var strToUsrNick	= usernick;										// 받는 사람 별명
	var strFromUsrNum	= document.getElementById('hidLoadUserNo').value;		// 보내는 사람 고유번호
	var strFromUsrNick= document.getElementById('hidLoadUserNick').value;	// 보내는 사람 별명


  if (window.ActiveXObject)
  {
  	xmlMemoSendFormHttp = new ActiveXObject("Microsoft.XMLHTTP");
	} 
  
  else if (window.XMLHttpRequest)
	{
  	xmlMemoSendFormHttp = new XMLHttpRequest();
	}

  xmlMemoSendFormHttp.onreadystatechange = query_memoSend_check;
	xmlMemoSendFormHttp.open("POST","../user/pop_memo_send.php",true);
	xmlMemoSendFormHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	xmlMemoSendFormHttp.send("gbnCode="+gbnCode+"&strToUsrNum="+strToUsrNum+"&strToUsrNick="+strToUsrNick+"&strFromUsrNum="+strFromUsrNum+"&strFromUsrNick="+strFromUsrNick);
}


/*------------------------------------------------------------------------------------------
// ajax : 조회
// 팝업 : 쪽지 보내기 폼 불러오기 에러 확인
------------------------------------------------------------------------------------------*/
function query_memoSend_check()
{
	if(xmlMemoSendFormHttp.readyState == 4)
	{
		if(xmlMemoSendFormHttp.status == 200)
		{
			ret_query_memoSend();
		}

		else
		{
			alert("There was a problem retrieving the XML data:\n" + xmlMemoSendFormHttp.statusText);
		}
	}
}


/*------------------------------------------------------------------------------------------
// ajax : 조회
// 팝업 : 쪽지 보내기 폼 불러오기 결과 확인
------------------------------------------------------------------------------------------*/
function ret_query_memoSend()
{
	var res = xmlMemoSendFormHttp.responseText;


	// 설정 : 창 위치(높이)
	var windowHeight = document.viewport.getDimensions();
	var scrollHeight = document.viewport.getScrollOffsets();

	var w = 354+150;	// 창 가로 크기 : 메신저창보다 왼쪽에 위치 시키기위해 크기를 약간 늘렸다.
	var h = 342;			// 창 세로 크기
	var t = (windowHeight.height/2)+scrollHeight.top-(h/2)				// 창 상단 위치
	var l = '';				// 창 좌측 위치
	var zI = 100;			// 창 

	var divID = "divPopViewArea2";
	var spnID = "spnPopView2";

	divPopCenter(res, w, h, t, l, zI, divID, spnID);
}


/*------------------------------------------------------------------------------------------
// 확인 : 쪽지 보내기 등록
------------------------------------------------------------------------------------------*/
function data_check_memoSend()
{
	var strFromUsrNum = document.getElementById("hidFromUsrNum").value;
	var strUsrNick 		= document.getElementById("hidFromUsrNick").value;
	var strToUsrNum 	= document.getElementById("hidToUsrNum").value;
	var strToUsrNick	= document.getElementById("hidToUsrNick").value;
	var strMemo				= document.getElementById("tareaMemo").value;


	// 확인 : 보내는 사람 정보 및 받는 사람 정보
	if( (strFromUsrNum=='') || (strUsrNick=='') || (strToUsrNum=='') || (strToUsrNick=='') )
	{
		alert("쪽지를 보내기 위한 정보를 알 수 없습니다.");
		spnPopView_Close('divPopViewArea2','spnPopView2');
		return false;
	}

	// 확인 : 내용 - 입력 글자 수(최소)
	if(strMemo.length < 1)
	{
		alert("내용을 입력해 주세요.");
		document.getElementById("tareaMemo").focus();
		return false;
	}

	// 확인 : 내용 - 입력 글자 수(최대)
	if(strMemo.length > 800)
	{
		alert("입력 글자 수는 최대 800자입니다.");
		return false;
	}
	
	return true;
}


/*------------------------------------------------------------------------------------------
// ajax : 등록/수정
// 빠른 쪽지 보내기 : (stype=0:확인, stype=1:보관, stype=삭제)
------------------------------------------------------------------------------------------*/
function chk_quick_memoSend(memono,stype)
{
	// 확인 : 데이터
	var ret = data_check_memoSend();
		
	if(ret==false)
	{
		return false;
	}
	
	update_memoGet(memono,stype);
	insert_memoSend();
}


/*------------------------------------------------------------------------------------------
// ajax : 등록
// 쪽지 보내기 등록
------------------------------------------------------------------------------------------*/
function insert_memoSend()
{
	// 확인 : 데이터
	var ret = data_check_memoSend();
		
	if(ret==false)
	{
		return false;
	}


	var gbnCode				= "iMemoSend";
	var strFromUsrNum = document.getElementById("hidFromUsrNum").value;
	var strFromUsrNick= document.getElementById("hidFromUsrNick").value;
	var strToUsrNum 	= document.getElementById("hidToUsrNum").value;
	var strToUsrNick	= document.getElementById("hidToUsrNick").value;
	var strMemo				= document.getElementById("tareaMemo").value;


  // ajax
  if (window.ActiveXObject)
  {
  	xmlMemoSendFormHttp = new ActiveXObject("Microsoft.XMLHTTP");
	} 
  
  else if (window.XMLHttpRequest)
	{
  	xmlMemoSendFormHttp = new XMLHttpRequest();
	}

	var handlerFunction = insert_memoSend_check;

	xmlMemoSendFormHttp.onreadystatechange = handlerFunction;
	xmlMemoSendFormHttp.open("POST","../user/pop_memo_send.php",true);
	xmlMemoSendFormHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	xmlMemoSendFormHttp.send("gbnCode="+gbnCode+"&strToUsrNum="+strToUsrNum+"&strToUsrNick="+strToUsrNick+"&strFromUsrNum="+strFromUsrNum
															+"&strFromUsrNick="+strFromUsrNick+"&strMemo="+strMemo);
}


/*------------------------------------------------------------------------------------------
// ajax : 등록
// 쪽지 보내기 등록 에러 확인
------------------------------------------------------------------------------------------*/
function insert_memoSend_check()
{
	if(xmlMemoSendFormHttp.readyState == 4)
	{
		if(xmlMemoSendFormHttp.status == 200)
		{
			ret_insert_memoSend();
		}

		else
		{
			alert("There was a problem retrieving the XML data:\n" + xmlMemoSendFormHttp.statusText);
		}
	}
}


/*------------------------------------------------------------------------------------------
// ajax : 수정
// 쪽지 보내기 등록 결과 확인
------------------------------------------------------------------------------------------*/
function ret_insert_memoSend()
{
	var res = xmlMemoSendFormHttp.responseText;
	var ret_res = res.split(",");

	// 취소
	if(ret_res[0] == 0)
	{
		alert("취소되었습니다. 다시 실행하세요.");
	}

	// 성공
	else if(ret_res[0] == 1)
	{
		//alert(ret_res[1]);
		var toUserNick = document.getElementById("hidToUsrNick").value;
		alert("두근두근! "+toUserNick+"님께 쪽지를 보냈습니다.");
		spnPopView_Close('divPopViewArea2','spnPopView2');
	}

	// 메시지 출력
	else
	{
		alert(ret_res);
	}
}


/*------------------------------------------------------------------------------------------
// ajax : 조회
// 팝업 : 받은 쪽지 불러오기
------------------------------------------------------------------------------------------*/
function query_memoGet(memono,userno)
{
	if(!memono)
	{
		alert("쪽지 정보를 확인할 수 없습니다.");
		return;
	}


	var gbnCode				= "qMemoGet";
	var strUserNum		= userno;			// 회원 고유번호
	var strMemoNum		= memono;			// 쪽지 고유번호
	var strUrl				= "";					// url

	if( document.getElementById('hidLoadRequestUrl').value.indexOf("mT=3")>0)
	{
		strUrl = "mT=3";
	}


  if (window.ActiveXObject)
  {
  	xmlMemoGetFormHttp = new ActiveXObject("Microsoft.XMLHTTP");
	} 
  
  else if (window.XMLHttpRequest)
	{
  	xmlMemoGetFormHttp = new XMLHttpRequest();
	}

  xmlMemoGetFormHttp.onreadystatechange = query_memoGet_check;
	xmlMemoGetFormHttp.open("POST","../user/pop_memo_get.php",true);
	xmlMemoGetFormHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	xmlMemoGetFormHttp.send("gbnCode="+gbnCode+"&strUserNum="+strUserNum+"&strMemoNum="+strMemoNum+"&strUrl="+strUrl);
}


/*------------------------------------------------------------------------------------------
// ajax : 조회
// 팝업 : 받은 쪽지 불러오기 에러 확인
------------------------------------------------------------------------------------------*/
function query_memoGet_check()
{
	if(xmlMemoGetFormHttp.readyState == 4)
	{
		if(xmlMemoGetFormHttp.status == 200)
		{
			ret_query_memoGet();
		}

		else
		{
			alert("There was a problem retrieving the XML data:\n" + xmlMemoGetFormHttp.statusText);
		}
	}
}


/*------------------------------------------------------------------------------------------
// ajax : 조회
// 팝업 : 받은 쪽지 불러오기 결과 확인
------------------------------------------------------------------------------------------*/
function ret_query_memoGet()
{
	var res = xmlMemoGetFormHttp.responseText;


	// 설정 : 창 위치(높이)
	var windowHeight = document.viewport.getDimensions();
	var scrollHeight = document.viewport.getScrollOffsets();

	var w = 354+150;	// 창 가로 크기 : 메신저창보다 왼쪽에 위치 시키기위해 크기를 약간 늘렸다.
	var h = 342;			// 창 세로 크기
	var t = (windowHeight.height/2)+scrollHeight.top-(h/2)				// 창 상단 위치
	var l = '';				// 창 좌측 위치
	var zI = 99;			// 창 

	var divID = "divPopViewArea2";
	var spnID = "spnPopView2";

	divPopCenter(res, w, h, t, l, zI, divID, spnID);
}


/*------------------------------------------------------------------------------------------
// ajax : 수정
// 받은 쪽지 수정(stype=0:확인, stype=1:보관, stype=삭제)
------------------------------------------------------------------------------------------*/
function update_memoGet(memono,stype)
{
	if(!memono)
	{
		alert("쪽지 정보를 확인할 수 없습니다.");
		return;
	}


	var gbnCode				= "uMemoGet";	
	var strUrl				= "";					// url

	if( document.getElementById('hidLoadRequestUrl').value.indexOf("mT=3")>0)
	{
		strUrl = "mT=3";
	}


  // ajax
  if (window.ActiveXObject)
  {
  	xmlMemoGetFormHttp = new ActiveXObject("Microsoft.XMLHTTP");
	} 
  
  else if (window.XMLHttpRequest)
	{
  	xmlMemoGetFormHttp = new XMLHttpRequest();
	}

	var handlerFunction = update_memoGet_check;

	xmlMemoGetFormHttp.onreadystatechange = handlerFunction;
	xmlMemoGetFormHttp.open("POST","../user/pop_memo_get.php",true);
	xmlMemoGetFormHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	xmlMemoGetFormHttp.send("gbnCode="+gbnCode+"&strMemoNum="+memono+"&strType="+stype+"&strUrl="+strUrl);
}


/*------------------------------------------------------------------------------------------
// ajax : 등록
// 받은 쪽지 수정 에러 확인
------------------------------------------------------------------------------------------*/
function update_memoGet_check()
{
	if(xmlMemoGetFormHttp.readyState == 4)
	{
		if(xmlMemoGetFormHttp.status == 200)
		{
			ret_update_memoGet();
		}

		else
		{
			alert("There was a problem retrieving the XML data:\n" + xmlMemoGetFormHttp.statusText);
		}
	}
}


/*------------------------------------------------------------------------------------------
// ajax : 수정
// 받은 쪽지 수정 결과 확인
------------------------------------------------------------------------------------------*/
function ret_update_memoGet()
{
	var res = xmlMemoGetFormHttp.responseText;
	var ret_res = res.split(",");

	// 취소
	if(ret_res[0] == 0)
	{
		alert("취소되었습니다. 다시 실행하세요.");
	}

	// 성공
	else if(ret_res[0] == 1)
	{
		//alert(ret_res[1]);

		// 확인 : 미확인 새 쪽지
		if(document.getElementById("hidNewMemoNum").value!='')
		{
			query_memoGet(document.getElementById("hidNewMemoNum").value,document.getElementById('hidLoadUserNo').value);
		}

		// 확인 : 더이상 새로운 쪽지가 없으면 div 창을 닫는다.
		else
		{
			// 쪽지함에서 팝업 쪽지함을 띄운 후 창을 닫게 되면 부모창을 새로고침한다.
			var strUrl1				= "";					// url
			var strUrl2				= "";					// url

			if( document.getElementById('hidLoadRequestUrl').value.indexOf("cM=3")>0 )
			{
				strUrl1 = "cM=3";
			}


			if( document.getElementById('hidLoadRequestUrl').value.indexOf("mT=1")>0 )
			{
				strUrl2 = "mT=1";
			}

			else if( document.getElementById('hidLoadRequestUrl').value.indexOf("mT=3")>0 )
			{
				strUrl2 = "mT=3";
			}


			if( (strUrl1=="cM=3") &&
				( (strUrl2=="mT=1") && (ret_res[1]=='0' || ret_res[1]=='1' || ret_res[1]=='2') || 
					(strUrl2=="mT=3") && (ret_res[1]=='2')
					)	)
			{
				document.location.reload();
			}

			spnPopView_Close('divPopViewArea2','spnPopView2');
		}
	}

	// 메시지 출력
	else
	{
		alert(ret_res);
	}
}


/*------------------------------------------------------------------------------------------
// ajax : 삭제
// 미확인 쪽지 삭제
------------------------------------------------------------------------------------------*/
function delete_memoNotRead(memono)
{
	var retConfirm = confirm("삭제하시겠습니까?");

	if(!retConfirm)
	{
		return false;
	}


	if(!memono)
	{
		alert("쪽지 정보를 확인할 수 없습니다.");
		return;
	}


	var gbnCode = "dMemoNotRead";	


  // ajax
  if (window.ActiveXObject)
  {
  	xmlMemoDNotReadHttp = new ActiveXObject("Microsoft.XMLHTTP");
	} 
  
  else if (window.XMLHttpRequest)
	{
  	xmlMemoDNotReadHttp = new XMLHttpRequest();
	}

	var handlerFunction = delete_memoNotRead_check;

	xmlMemoDNotReadHttp.onreadystatechange = handlerFunction;
	xmlMemoDNotReadHttp.open("POST","../user/mypage_memobox.php",true);
	xmlMemoDNotReadHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	xmlMemoDNotReadHttp.send("gbnCode="+gbnCode+"&strMemoNum="+memono);
}


/*------------------------------------------------------------------------------------------
// ajax : 등록
// 미확인 쪽지 삭제 에러 확인
------------------------------------------------------------------------------------------*/
function delete_memoNotRead_check()
{
	if(xmlMemoDNotReadHttp.readyState == 4)
	{
		if(xmlMemoDNotReadHttp.status == 200)
		{
			ret_delete_memoNotRead();
		}

		else
		{
			alert("There was a problem retrieving the XML data:\n" + xmlMemoDNotReadHttp.statusText);
		}
	}
}


/*------------------------------------------------------------------------------------------
// ajax : 삭제
// 미확인 쪽지 삭제 결과 확인
------------------------------------------------------------------------------------------*/
function ret_delete_memoNotRead()
{
	var res = xmlMemoDNotReadHttp.responseText;
	var ret_res = res.split(",");

	// 취소
	if(ret_res[0] == 0)
	{
		alert("취소되었습니다. 다시 실행하세요.");
	}

	// 성공
	else if(ret_res[0] == 1)
	{
		//alert(ret_res[1]);

		document.location.reload();
	}

	// 메시지 출력 후 새로고침
	else if(ret_res[0] == 2)
	{
		alert(ret_res[1]);
		document.location.reload();
	}

	// 메시지 출력
	else
	{
		alert(ret_res);
	}
}


<!-- 쪽지 보내기 - 닉네임 변경 시작 -->
/*------------------------------------------------------------------------------------------
// 보이기 : 쪽지 보내기 - 닉네임 검색 입력 상자
------------------------------------------------------------------------------------------*/
function view_searchMemoSendUserNick()
{
	document.getElementById("divSearchMemoSendToUserNick").style.display = "";
	document.getElementById("divViewMemoSendToUserNick").style.display = "none";
}


/*------------------------------------------------------------------------------------------
// 취소 : 쪽지 보내기 - 닉네임 검색 입력 상자
------------------------------------------------------------------------------------------*/
function cancel_searchMemoSendUserNick()
{
	close_memoSendUserNickList();
	document.getElementById("divSearchMemoSendToUserNick").style.display = "none";
	document.getElementById("divViewMemoSendToUserNick").style.display = "";	
}


/*------------------------------------------------------------------------------------------
// ajax : 검색
// 쪽지 보내기 - 닉네임 검색
------------------------------------------------------------------------------------------*/
function query_memoSendUserNick()
{
	document.getElementById("txtMemoSendUserNick").value = document.getElementById("txtMemoSendUserNick").value.trim();

	var usernick = document.getElementById("txtMemoSendUserNick").value;

	if(usernick=='' || usernick==undefined)
	{
		alert("닉네임을 입력해주세요.");
		document.getElementById("txtMemoSendUserNick").focus();
		return;
	}


	var gbnCode				= "qUserNick";

	if( document.getElementById('hidLoadRequestUrl').value.indexOf("mT=3")>0)
	{
		strUrl = "mT=3";
	}


  // ajax
  if (window.ActiveXObject)
  {
  	xmlMemoSendUserNickHttp = new ActiveXObject("Microsoft.XMLHTTP");
	} 
  
  else if (window.XMLHttpRequest)
	{
  	xmlMemoSendUserNickHttp = new XMLHttpRequest();
	}

	var handlerFunction = query_memoSendUserNick_check;

	xmlMemoSendUserNickHttp.onreadystatechange = handlerFunction;
	xmlMemoSendUserNickHttp.open("POST","../user/chk_memo_send_usernick.php",true);
	xmlMemoSendUserNickHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	xmlMemoSendUserNickHttp.send("gbnCode="+gbnCode+"&strUserNick="+usernick);
}


/*------------------------------------------------------------------------------------------
// ajax : 검색
// 쪽지 보내기 - 닉네임 검색 에러 확인
------------------------------------------------------------------------------------------*/
function query_memoSendUserNick_check()
{
	if(xmlMemoSendUserNickHttp.readyState == 4)
	{
		if(xmlMemoSendUserNickHttp.status == 200)
		{
			ret_query_memoSendUserNick();
		}

		else
		{
			alert("There was a problem retrieving the XML data:\n" + xmlMemoSendUserNickHttp.statusText);
		}
	}
}


/*------------------------------------------------------------------------------------------
// ajax : 검색
// 쪽지 보내기 - 닉네임 검색 결과 확인
------------------------------------------------------------------------------------------*/
function ret_query_memoSendUserNick()
{
	var res = xmlMemoSendUserNickHttp.responseText;

	document.getElementById("divMemoSendUserNickList").innerHTML = res;
}


/*------------------------------------------------------------------------------------------
// 선택 : 쪽지 보내기 - 닉네임 검색 목록 창
------------------------------------------------------------------------------------------*/
function sel_memoSendUserNick(userno,usernick)
{
	document.getElementById("hidToUsrNum").value = userno;
	document.getElementById("hidToUsrNick").value = usernick;
	document.getElementById("txtMemoSendUserNick").value = "";
	document.getElementById("spnMemoSendToUserNick").innerHTML = usernick.substring(0,5);
	document.getElementById("divMemoSendUserNickList").innerHTML = "";
	document.getElementById("divSearchMemoSendToUserNick").style.display = "none";
	document.getElementById("divViewMemoSendToUserNick").style.display = "";
	
}


/*------------------------------------------------------------------------------------------
// 닫기 : 쪽지 보내기 - 닉네임 검색 목록 창
------------------------------------------------------------------------------------------*/
function close_memoSendUserNickList()
{
	document.getElementById("divMemoSendUserNickList").innerHTML = "";
}
<!-- 쪽지 보내기 - 닉네임 변경 끝 -->

//-->