﻿/* **************************************************************
	Wiz Javascript - AJAX Utility Library Modal Window
	Version : 1.0
	Developer : wiz (wizys@yahoo.co.kr / http://wiz.pe.kr/)
	Last Updated : 2007.04.11 - First Version By wiz
	* 소스의 무단 사용을 금지 합니다.
************************************************************** */

var MDW_Opend = false;
var MDW_CP = null;
var MDW_IF = null;

/* Open Modal Window */
function WizModalOpen(tg, bc, w) { WizModalOpen(tg, bc, w, null); }
function WizModalOpen(tg, bc, w, h)
{
	if(MDW_Opend==true) { WizModalClose(); }
	var BD = document.getElementsByTagName('body')[0];
	var OL = document.createElement('div');

	if(typeof(tg)=='string') { MDW_IF=WizModal_getIfrm(tg); MDW_CP=MDW_IF; }
	else { MDW_CP=tg; }

	var BW = GetBodyWidth();
	var BH = GetBodyHeight();

	OL.setAttribute('id', 'MPopBG');
	OL.style.position = 'absolute';
	OL.style.right = OL.style.top = '0px';
	OL.style.width	= ((BW-2)+'px');
	OL.style.height= ((BH-2)+'px');
	OL.style.backgroundColor = '#ccc';
	OL.style.zindex = '1000';

	if(ie6)
	{
		MDW_CP.style.position = 'absolute';
		MDW_CP.style.top = ((document.documentElement.scrollTop + 120)+ 'px');
	}
	else
	{
		MDW_CP.style.position = 'fixed';
		MDW_CP.style.top = ((120)+ 'px');
	}
	MDW_CP.style.width = w + 'px';
	if(h) { MDW_CP.style.height = h + 'px'; }
	MDW_CP.style.left = ((BW-w)/2 -150) + 'px';
	MDW_CP.style.zindex = '1001';
	MDW_CP.style.display = 'block';

	SetOpecity(OL, 50);
	BD.appendChild(OL);
	BD.appendChild(MDW_CP);

	/* 이벤트 등록 */
	$addHandler(BD,'keydown', WizModal_KeyDown);
	if(bc) { $addHandler(OL,'click', WizModalClose); }

	MDW_Opend=true;
}

/* Close Modal Window */
function WizModalClose()
{
	var BD = document.getElementsByTagName('body')[0];
	var OL = $get('MPopBG');

	/* 이벤트 제거 */
	$removeHandler(BD,'keydown', WizModal_KeyDown);
	try { $removeHandler(OL,'click', WizModalClose); } catch(em){}

	if(OL)
	{
		OL.style.display='none';
		if(MDW_CP) { MDW_CP.style.display='none'; }
		if(MDW_IF) { BD.removeChild(MDW_IF); }
		BD.removeChild(OL);
	}

	MDW_CP=null;
	MDW_IF=null;
	MDW_Opend=false;
}

/* iframe 생성 */
function WizModal_getIfrm(tg)
{
	var ifrm = document.createElement('iframe');
	ifrm.src = tg;
	ifrm.frameBorder = 'no';
	//ifrm.scrolling = 'no';
	ifrm.className = 'MPopIN';
	document.getElementsByTagName('body')[0].appendChild(ifrm);
	return ifrm;
}

/* 키 이벤트 관리 */
function WizModal_KeyDown(e)
{
	if(e.keyCode==27) { WizModalClose(); }
	else { return; }
}