/**
 * Go www.goosol.net
 * 파일명: user_layer.js
 * 용 도 : 마우스 클릭에 의한 작은 팝업이벤트 발생 (현재로썬 회원레이어만..)
 * 기 능 : 회원레이어 바깥 클릭 시 팝업 감춤. 영역을 벗어날 경우 일정 시간 뒤 팝업 감춤. 영역 안에 있을 때 유지.
 * 테스트 브라우저 : IE 6.0-7.0, Opera 9.24, FireFox 3.0b, Netscape 9.0.0.3, safari 3.02 [xhtml 1.0 완벽 호환]
 * 최종 수정일 : 07.11.28
 * 자세(과도?)한 주석의 이유 : 이 정도 표현하기 까지 나름대로 고생했음 -_-; (특히 브라우저 호환성 웩) 그래서 나같은 목적을 가진 초보운영자를 위해; 실 서비스가 이루어지는 시점에 이르러서는 초기화할 것임.
 **/

document.write('<div id="userMenuShow" style="display:none;" onmouseover="parent.userMenuShow(); return false;" onmouseout="parent.userMenuHide(); return false;"></div>'); // 실제 팝업이 이루어질 엘리먼트를 생성
var userMenuShowTime; // 팝업창을 보여줄 시간
var status; // 마우스 상태(위치)를 알기 위해
function userMenu(event,memNo,myNo,userName,userId,boardId,homepage,blog,email)
{
	userBox = document.getElementById('userMenuShow'); // id값이 userMenuShow인 엘리먼트를 userBox에 대입
	userBox.style.display = ''; // 팝업생성
	userBox.style.left = event.clientX -5+'px'; // 팝업의 X축 구함. 팝업이벤트가 발생한 위치 즉, 사용자가 클릭한 위치에서 (5px을 감산 - 이유:보기좋게 즉 옵션임)
	userBox.style.top = (document.documentElement.scrollTop || document.body.scrollTop) + event.clientY -5+'px'; // 팝업의 Y축 구함. 사용자가 스크롤을 내리거나 올림으로 발생하는 좌표값과 사용자가 클릭한 위치의 좌표값을 가산하고 그 값에서 (5px을 감산 - 이유:보기좋게 즉 옵션임) document.documentElement.scrollTop 는 엘리먼트를 읽기전용으로 반환함. document.body.scrollTop 는 들어먹질 않는다.(그러나 safari를 위해 삽입;) - 정확히는 상단 문서의 dtd 속성 때문임 -> xhtml 1.0을 준수함.
	sContent = ''; // 레이어 내용을 저장
	sContent += '<div id="userMenu">';
	sContent += '<ul>';
	if(memNo != 0) sContent += '	<li><img class="png24" src="img/icon/user.png" style="border:0;vertical-align:middle;" alt="회원정보" /> <a title="회원정보를 봅니다" href="?mode=member&mId='+userId+'&bId='+boardId+'&act=memberInfo&memberNo='+memNo+'">회원정보</a></li>';
	if(myNo != 0) sContent += '	<li><img class="png24" src="img/icon/memo.png" style="border:0;vertical-align:middle;" alt="쪽지발송" /> <a title="쪽지를 보냅니다" href="?mode=member&act=sendMemo&memberNo='+memNo+'&new=1" onclick="window.open(this.href, \'_blank\', \'width=500,height=380,menubar=no,scrollbars=yes\'); return false;">쪽지보내기</a></li>';
	if(email) sContent += '	<li><img class="png24" src="img/icon/email.png" style="border:0;vertical-align:middle;" alt="이메일발송" /> <a title="이메일을 보냅니다" href="mailto:'+email+'">메일보내기</a></li>';
	if(homepage) sContent += '	<li><img class="png24" src="img/icon/home.png" style="border:0;vertical-align:middle;" alt="홈페이지방문" /> <a title="홈페이지를 방문합니다" href="'+homepage+'" onclick="window.open(this.href, \'_blank\'); return false">홈페이지</a></li>';
	if(blog) sContent += '	<li><img class="png24" src="img/icon/blog.png" style="border:0;vertical-align:middle;" alt="블로그방문" /> <a title="블로그를 방문합니다" href="'+blog+'" onclick="window.open(this.href, \'_blank\'); return false">블로그</a></li>';
	sContent += '	<li><img class="png24" src="img/icon/search.png" style="border:0;vertical-align:middle;" alt="작성글보기" /> <a title="작성한 글을 봅니다" href="?mode=board&mId='+userId+'&bId='+boardId+'&searchMode=name&searchValue='+userName+'">작성글보기</a></li>';
	sContent += '</ul>';
	sContent += '</div>';
	userBox.innerHTML = sContent;
}

function userMenuShow()
{
	if(userMenuShowTime) clearTimeout(userMenuShowTime); // 시간 변수에 값이 할당되어 있을 경우 그 시간값을 초기화 하여 레이어가 사라지지 않도록 함
	status = 1; // 포인터가 레이어 영역안에 있음을 알려줌
}

function userMenuHide()
{
	userMenuShowTime = setTimeout('userMenuHideAll()', 1000); // 팝업을 감추는 함수가 설정한 시간 후에 감춰지도록 하고 그 값을 생성한 시간 변수에 대입함(팝업을 나타내는 함수가 호출되고 팝업영역에 포인터가 위치해 있을 경우 사라지지 않도록)
	status = 0; // 포인터가 레이어를 벗어남을 알려줌
}

function userMenuHideAll()
{
	if(status==0) document.getElementById('userMenuShow').style.display = 'none'; // 포인터가 레이어를 벗어났을 경우에만 팝업을 감춤
}

document.onmousedown = userMenuHideAll; // 시간에 관계없이 팝업 영역 밖을 클릭했을 때 감춤
