
var XperEnable = new Object();
XperEnable.Enable = 0;
XperEnable.Disable = 1;
XperEnable.Optional = 2;
XperEnable.Validate = function(value) 
{
    if (value.toString() == "0")
        return true;
    var nValue = parseNumber(value);
    return nValue > XperEnable.Enable && nValue <= this.Optional;
}
XperEnable.Parse = function(value) 
{
    if (!this.Validate(value))
        throw new Error("변환할 수 없는 값입니다");
    return parseNumber(value);
}

var XperFileType = new Object();
XperFileType.Unknown = 0;
XperFileType.Video = 1;
XperFileType.Audio = 2;
XperFileType.Document = 3;
XperFileType.Zip = 4;
XperFileType.Html = 5;
XperFileType.Xml = 6;
XperFileType.Validate = function(value) 
{
    if (value.toString() == "0")
        return true;
    var nValue = parseNumber(value);
    return nValue > this.Unknown && nValue <= this.Xml;
}
XperFileType.Parse = function(value) {
    if (!this.Validate(value))
        throw new Error("변환할 수 없는 값입니다");
    return parseNumber(value);
}

var XperDBOperator = new Object();
XperDBOperator.Equal = 0;
XperDBOperator.Not=1; 
XperDBOperator.GreaterThan=2; 
XperDBOperator.EqualGreaterThan=3; 
XperDBOperator.LessThen=4; 
XperDBOperator.EqualLessThen=5; 
XperDBOperator.Like=6; 
XperDBOperator.In=7;
XperDBOperator.NotIn=8; 
XperDBOperator.IsNull=9; 
XperDBOperator.IsNotNull=10 ;
XperDBOperator.ColumnEqual=11;
XperDBOperator.ColumnNot=12;
XperDBOperator.ColumnGreaterThan=13;
XperDBOperator.ColumnEqualGreaterThan=14;
XperDBOperator.ColumnLessThen=15;
XperDBOperator.ColumnEqualLessThen=16;
XperDBOperator.ColumnIn=17;
XperDBOperator.ColumnNotIn=18;


XperActiveStatus = new Object();
XperActiveStatus.Unknown = 0;
XperActiveStatus.Activated = 1;
XperActiveStatus.Suspended = 2;
XperActiveStatus.Seceded=3;
XperActiveStatus.WaitingAccept = 4;

var _NODETYPE_ELEMENT = 1;
var g_bExplorer=false;
if(window.navigator.appName=="Microsoft Internet Explorer")
	g_bExplorer=true;
var g_strBaseWas = "/XperLCMS";
var g_objModalInfo=new Object;
g_objModalInfo.modalDiv=null;
g_objModalInfo.modalTimer=0;
g_objModalInfo.modalHTML="";
g_objModalInfo.callBackFunc=null;
g_objModalInfo.callBackParam=null;
g_objModalInfo.scrollX=0;
g_objModalInfo.scrollY=0;
g_objModalInfo.clearTimer=function()
{
	if(this.modalTimer>0)
		clearTimeout(this.modalTimer);
	this.modalTimer=0;

}
String.prototype.Equals=function(strValue)
{
    return strValue==this;
}
String.prototype.trim = function ()
{
	var objRegExp = /^(\s*[?]*[ ]*)$/;
	if(objRegExp.test(this))
	{
		var strValue = this.replace(objRegExp,'');
		if( strValue.length == 0 ) return strValue;
	}

	objRegExp = /^(\s*[?]*[ ]*)([\w\W]*)(\b\s*[?]*[ ]*$)/;
	if(objRegExp.test(this))
	{
		return this.replace(objRegExp,'$2');
	}

	return this;
}

String.prototype.replaceText=function(strOld,strNew)
{
	var strList = this.split(strOld);
	var strValue ="";
	for(var i=0;i<strList.length;i++)
	{
		if(i>0)
			strValue+=strNew;
		strValue+=strList[i];
	}
	return strValue;
}
String.prototype.getByteLength=function()
{
	var nByteLength=0;
	for (var i=0; i<this.length; i++)
	{
		nByteLength++;
		if(this.charCodeAt(i)>255)
			nByteLength++;
	}
	return nByteLength;
}
String.prototype.getByteIndex=function(nIndex)
{
	var nByteLength=0;
	for (var i=0; i<this.length; i++)
	{
		nByteLength++;
		if(this.charCodeAt(i)>255)
			nByteLength++;
		if(nByteLength>=nIndex)
			return i;
	}
	return nByteLength;
}
Boolean.prototype.Validate = function(value) 
{
    value = value.toString().toLowerCase();
    return value.Equals("true") || value.Equals("false");

}
Boolean.Validate = function(value) 
{
    value = value.toString().toLowerCase();
    return value.Equals("true") || value.Equals("false");

}
Boolean.prototype.Parse = function(value) 
{
    if (!Boolean.prototype.Validate(value))
        throw new Error("변환할 수 없는 값입니다");
    value = value.toString().toLowerCase();
    return value.Equals("true") ? true : false;

}
Boolean.Parse = function(value) {
    if (!Boolean.Validate(value))
        throw new Error("변환할 수 없는 값입니다");
    value = value.toString().toLowerCase();
    return value.Equals("true") ? true : false;

}
//중학영어 방문횟수 시작
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-20936958-1']);
  _gaq.push(['_setDomainName', '.m-first.co.kr']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
//중학영어 방문횟수 끝

function $(strID) {
    return document.getElementById(strID);
}
function $$(strName) {
    return document.getElementsByName(strName);
}
function getXMLString(objElement)
{
	if(g_bExplorer)
		return objElement.xml;
	else
		return objElement.getXML();
}

function getXMLTextValue(objElement)
{
	if(g_bExplorer)
		return objElement.text;
	else
		return objElement.getTextContent();
}
function  setXMLTextValue(objElement,strText)
{
	if(g_bExplorer)
        objElement.text=strText;
	else
	    objElement.setTextContent(strText);
}
var objConverter = document.createElement("div");
function getTextContent(objElement)
{
    if (g_bExplorer)
        return objElement.innerText;
    else
    {
        objConverter.innerHTML = objElement.innerHTML.replace(/<br>/gi, "\n").replace(/<br>/gi, "\n");
        return objConverter.textContent;
    }
}
function setTextContent(objElement,strText)
{
    if (g_bExplorer)
        objElement.innerText=strText;
    else
        objElement.textContent = strText;
}
function GetRowIndex(objElement)
{
    if (g_bExplorer)
        return objElement.rowIndex;
    else
    {
        var objParent = objElement.parentElement;
        if (objParent == null)
            return -1;
        var objChild = objParent.firstChild;
        var nIndex = 0;
        while (objChild != null)
        {
            if (objChild == objElement)
                return nIndex;
            nIndex++;
            objChild = objChild.nextSibling;
        }
        return -1;
    }
}
if(g_bExplorer==false)
{

	Element.prototype.getXML=function()
	{
		var s = new XMLSerializer();
		return s.serializeToString(this);
	}	
	Element.prototype.getTextContent=function()
	{
		return this.textContent.replace();
	}
	Element.prototype.setTextContent=function(strText)
	{
		this.textContent=strText;
}

	/**********************************
	xpath 감안하지 않고
	에러 나지 않게만 구현
	*********************************************/
	Element.prototype.findElement=function(strNodeName,bFindChild)
	{
		if(strNodeName==null||strNodeName=="")
			return null;
		var nIndex = strNodeName.indexOf("/");
		var strNode = strNodeName;
		var strNextNode = strNodeName.substring(nIndex+1);
		
		if(nIndex==0)
			return null;
		else if(nIndex>0)
			strNode=strNodeName.substring(nIndex);
		else
			strNextNode="";
		if(strNode=="")
			return null;
		var objElement = null;
		/*
			현위치에서 맞는 노드를 찾는다
		*/
		var objArray = this.getElementsByTagName(strNode);
		/*
			없으면서 자식을 찾지 말라면 널값 리턴
		*/
		if(objArray.length==0)
		{
			if(bFindChild==false)
				return null;
		}
		/*
			있다면 맞는 노드를 찾아 리턴한다.
		*/
		else
		{
			for(var i=0;i<objArray.length;i++)
			{
				var objFind = objArray[i];
				if(strNextNode=="")
					return objFind;
				objElement = objFind.findElement(strNextNode,false);
				if(objElement!=null)
					return objElement;
			}
			/*
				못찾았는데 자식도 찾지 말라면 리턴
			*/
			if(bFindChild==false)
				return objElement;
			
			
		}
		/*현재노드에 없다면 자식들을 돌면서 찾아 리턴*/
		var iChild =  this.firstChild;
		while(iChild)
		{
			if(iChild.nodeType!=1)
			{
				iChild=iChild.nextSibling;
				continue;
			}
			objElement = iChild.findElement(strNodeName,true);
			if(objElement)
				return objElement;
			iChild = iChild.nextSibling;;
		}
		return null;
		
			


	}
	Element.prototype.selectSingleNode=function(strNode)
	{
		if(strNode==null||strNode.length==0)
			return null;
		var strIndi = strNode.substring(0,3);
		var nIndex = strIndi.lastIndexOf("/");
		strIndi = strIndi.substring(0,nIndex+1);
		strNodex = strNode.substring(nIndex+1);
		var objStart = this.ownerDocument.documentElement;
		var bFindChild = false;
		if(strIndi=="*/") //find root element
		{
			return this.ownerDocument.documentElement;
		}
		else if(strIndi=="/") //find from root element
		{
			bFindChild=false;
		}
		else if(strIndi=="./"||strIndi=="") //find  from this context
		{
			objStart = this;
			bFindChild=false;
		}
		else if(strIndi=="//") //find all element from root context
		{
			bFindChild=true;
		}
	
		else if(strIndi==".//") //find all element from this context
		{
			objStart = this;
			bFindChild=true;
		}
		else
		{
			return null;
		}
		if(objStart==null)
			return null;
		return objStart.findElement(strNodex,bFindChild);
	}
}
function parseBoolean(strBool) {
    try {
        return Boolean.Parse(strBool);
    }
    catch (e) {
        return false;
    }
}

function parseNumber(strNumber)
{
	if(typeof(strNumber)=="undefined"||strNumber==null)
		return 0;
	strNumber=strNumber+"";
	
	strNumber=strNumber.trim();
	try
	{
		var dbNumber = parseFloat(strNumber);
		var nNumber = parseInt(Number(strNumber));
		if(dbNumber.toString()=="NaN")
			dbNumber=0;
		if(nNumber.toString()=="NaN")
			nNumber=0;
		if(dbNumber-nNumber==0)
			return nNumber;
		else
			return dbNumber;
	}
	catch(e)
	{
		return 0;
	}
}
function getXMLHttpObject()
{
	var obj=null;
	if ($) 
		var obj = (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
	return obj;
}

function getWeb(strURL,strParam)
{
	try
    {
        if (!checkObject(strParam))
            strParam = "";
		var objXMLHttp=getXMLHttpObject();
		var strText = "";
		var strMethod=strParam.length>0?"POST":"GET";
		if (objXMLHttp)
		{
			objXMLHttp.open(strMethod, strURL, false);
			objXMLHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
			objXMLHttp.setRequestHeader("Content-length", strParam.length); 
	//		objXMLHttp.setRequestHeader("Connection", "close"); 
			objXMLHttp.send(strParam);
			strText=objXMLHttp.responseText;
			strText=strText.trim();
		}		
		return strText+"";
	}
	catch(e)
	{
	}
	return false;
}

function sendWeb(strURL,strParam)
{
	try
	{
		var objXMLHttp=getXMLHttpObject();
		var strMethod=strParam.length>0?"POST":"GET";
		if (objXMLHttp)
		{		
			objXMLHttp.open(strMethod, strURL, true);
			objXMLHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
			objXMLHttp.setRequestHeader("Content-length", strParam.length); 
		//	objXMLHttp.setRequestHeader("Connection", "close"); 
			objXMLHttp.send(strParam);
		}
    }
	catch(e)
	{
	}
}

function getUniqueID()
{
	var charArray=new Array("A","B","C","E","E","F","0","1","2","3","4","5","6","7","8","9");
	var strID="";
	var nIndex;
	for(var i=0;i<32;i++)
	{
		if(i==8||i==12||i==16||i==20)
			strID+="-";
		if(i==0)
		{
			nIndex=parseInt(Number(Math.random() * 6));
		}
		else
		{
			nIndex=parseInt(Number(Math.random() * 16));
		}
		strID += charArray[nIndex];
	}
	return strID;
}
function getDialogParameter(width,height)
{
	var nMaxWidth=width;
	var nMaxHeight=height;
	var nHeight=getMaxHeight()>nMaxHeight?nMaxHeight:screen.availHeight;
	var nWidth=getMaxWidth()>nMaxWidth?nMaxWidth:screen.availWidth;
	var strEdge="Raised";
	var strCenter="Yes";
	var strHelp="No";
	var strResizeable="No";
	var strStatus="No";
	var strParameter;
	strParamenter="dialogHeight:"+ nHeight +"px;";
	strParamenter+="dialogWidth:"+ nWidth +"px;";
	strParamenter+="edge:"+ strEdge +";";
	strParamenter+="center:"+ strCenter +";";
	strParamenter+="help:"+ strHelp +";";
	strParamenter+="resizable:"+ strResizeable +";";
	strParamenter+="status:"+ strStatus +";";
	return strParamenter;
}

function getCenterLeft(nWidth)
{
	var nAvail= getMaxWidth()-nWidth;
	if(nAvail<=0)
		return 0;
	return  parseInt(Number(nAvail/2));

}

function getCenterTop(nHeight)
{
	var nAvail= getMaxHeight()-nHeight;
	if(nAvail<=0)
		return 0;
	return parseInt(Number(nAvail/2));

}
function getMaxWidth()
{
	return screen.availWidth;
}
function getMaxHeight()
{
	return screen.availHeight-55;
}

function openPopUpWindow(strURL, strName, nWidth, nHeight, nScrollbars)
{
	var strMsg="can't open popup window";
	var strFeatures="";
	
	var nTop=getCenterTop(nHeight);
	var nLeft = getCenterLeft(nWidth);
	
	var nToolbar=0;
	var nDirectory=0;
	var nFullscreen=0;

	var nLocation=0;
	var nMenubar =0;
	var nResizable =1;
	if (!checkObject(nScrollbars))
	    nScrollbars = 1;


	var nStatus  = 0;
	var nTitlebar = 1;
	strFeatures="top=" + nTop;
	strFeatures+=",left=" + nLeft;
	strFeatures+=",width=" + nWidth;
	strFeatures+=",height=" + nHeight;
	strFeatures+=",toolbar=" + nToolbar;
	strFeatures+=",directory=" + nDirectory;
	strFeatures+=",fullscreen=" + nFullscreen;
	strFeatures+=",location=" + nLocation;
	strFeatures+=",menubar=" + nMenubar;
	strFeatures+=",resizable=" + nResizable;
	strFeatures+=",scrollbars =" + nScrollbars;
	strFeatures+=",status=" + nStatus;
	strFeatures+=",titlebar=" + nTitlebar;
	try
	{
		
		var popWnd=window.open(strURL,strName,strFeatures);
	
		if(popWnd==null)
		{
			alert(strMsg);
			return null;
		}
		popWnd.focus();
		return popWnd;
	}
	catch (e)
	{
		alert(e.message);
		return null;
	}
	

}

function getMouseX()
{
	if(g_bExplorer)
		return event.x;
	else
		return eventValue.x;
	
}

function getMouseY()
{
	if(g_bExplorer)
		return event.y;
	else
		return eventValue.y;
}

function getLayer(strID,nWidth,nHeight,nLeft,nTop)
{
	var objLayer = $(strID);
	if(objLayer==null)
	{
		objLayer=document.createElement("div");
		objLayer.id=strID;
		objLayer.style.position="absolute";
		objLayer.style.backgroundColor="#FFFACD";
		document.body.appendChild(objLayer);
	}
	
	objLayer.style.width=nWidth;
	objLayer.style.height=nHeight;
	objLayer.style.posTop=nTop;
	objLayer.style.posLeft=nLeft;
	
	return objLayer;
}

function getXMLDom()
{
	var xmlDom;
	try
	{
		if(window.ActiveXObject) 
		{
			xmlDom=new ActiveXObject("MSXML2.DOMDocument");
			xmlDom.async = false;
			xmlDom.validateOnParse = false;
			return xmlDom;
		}
		else
		{
				xmlDom = new Object();//new DOMParser();
				xmlDom.dom = null;
				xmlDom.documentElement = null;
				xmlDom.document = null;
				xmlDom.createNode=function(strType,strTagName,strBaseURL)
				{
					if(this.document==null)
						return null;
					var objElement = this.document.createElement(strTagName);
					return objElement;
				}
				xmlDom.parser = new DOMParser();
				xmlDom.loadXML=function(strXML)
				{
					if(strXML=="")
						return  null;
					this.dom=this.parser.parseFromString(strXML,"text/xml");
					this.documentElement=this.dom.documentElement;
					if(this.documentElement)
						this.document=this.documentElement.ownerDocument;
				}
				xmlDom.load=function(strURL)
				{
					var strText = getWeb(strURL,"");
					return this.loadXML(strText);
				}
				xmlDom.getXML=function()
				{
					var s = new XMLSerializer();
					return s.serializeToString(this.dom);
				}
				return xmlDom;
		}
	}
	catch(e)
	{
		alert(e.message);
		return null;
	}
	return null;
}

function getXMLDocument(strURL,strParam)
{
	var strXMLBody=getWeb(strURL,strParam);
	var nIndex = strXMLBody.indexOf("<");
	if(nIndex<0)
		return null;
	var strReplace = strXMLBody.substr(0,nIndex);
	strXMLBody=strXMLBody.replace(strReplace,"");
	if(strXMLBody.length==0)
		return null;
	var xmlDom = getXMLDom();
	var strXML="<?xml version=\"1.0\" encoding=\"euc-kr\"?>";
	strXML+=strXMLBody;
	//document.write(strXML);
	if(xmlDom.loadXML(strXML)==false)
		return null;
	return xmlDom.documentElement;

}
function getXMLHeader()
{
    return "<?xml version=\"1.0\" encoding=\"euc-kr\"?>";
}
function getXmlTagDocument(strTag)
{
    var xmlDom = getXMLDom();
    var strXML = getXMLHeader() + "<" + strTag + "/>";
	if(xmlDom.loadXML(strXML)==false)
	    return null;
	return xmlDom;
}
function getXMLRootDocument(strURL)
{
	try
	{
		var xmlDom = getXMLDom();
	//	var strXML = getWeb(strURL,"");
		if(xmlDom.load(strURL)==false)
			return null;
		return xmlDom.documentElement;
	}
	catch(e)
	{
		return null;
	}

}
function getStringRootDocument(strXML)
{
	try
	{
		
		var xmlDom = getXMLDom();
		if(xmlDom.loadXML(strXML)==false)
			return null;

		return xmlDom.documentElement;
	}
	catch(e)
	{
		alert(e.message);
		return null;
	}
}
function AppendXMLElement(strTagName, strText,doc, element) 
{
    return appendXMLElement(doc, element, strTagName, strText);
}
function appendXMLElement(doc,element,strTagName,strText)
{
	var newNode = doc.createNode(1, strTagName, "");
	//strText=encodeParameter(strText);
	//newNode.setTextContent(strTitle);
	setXMLTextValue(newNode,strText);
	element.appendChild(newNode);
	return newNode;
}

function modalTimerFunc()
{

	g_objModalInfo.clearTimer();

	if(g_objModalInfo.modalDiv==null)
		return;
	if(g_objModalInfo.modalDiv.style.display=="none")
		return;
	var objIframe = $("modalIframe");
	if(objIframe==null)
		return;
	
	g_objModalInfo.modalDiv.style.top = window.scrollY;
	g_objModalInfo.modalDiv.style.left = window.scrollX;
	g_objModalInfo.modalDiv.style.width = window.innerWidth-20;
	g_objModalInfo.modalDiv.style.height = window.innerHeight-15;

	g_objModalInfo.modalTimer=setTimeout("modalTimerFunc()",1);
}
function modalActionTimerFunc()
{

	g_objModalInfo.clearTimer();

	if(g_objModalInfo.modalDiv==null)
		return;
	if(g_objModalInfo.modalDiv.style.display=="none")
		return;
	g_objModalInfo.modalDiv.style.top = window.scrollY;
	g_objModalInfo.modalDiv.style.left = window.scrollX;
	g_objModalInfo.modalDiv.style.width = window.innerWidth;
	var nDivHeight=parseInt(g_objModalInfo.modalDiv.style.height);
	var nHeight = window.innerHeight;
	if(nHeight<=nDivHeight)
	{
		g_objModalInfo.modalTimer=setTimeout("modalTimerFunc()",1);
		return;
	}
	else
	{
		var nDem = 5;
		var yLeft = nHeight-nDivHeight;
		if(nDem>=yLeft)
			nDem=yLeft;
		g_objModalInfo.modalDiv.style.height = nDivHeight+nDem;
		
		g_objModalInfo.modalTimer=setTimeout("modalActionTimerFunc()",1);
	}
	
}
function getModalValue(strURL,objArg,width,height,objCallBack,objCallBackParam)
{

	g_objModalInfo.clearTimer();

	if(typeof(strURL)=="undefined")
		return null;
	if(strURL=="")
		return null;
	if(g_bExplorer)
	{
		var strParam = getDialogParameter(width,height)
		var objReturn= window.showModalDialog(strURL,objArg,strParam);
		if(typeof(objReturn)=="undefined")
			objReturn=null;
		return objReturn;
	}
	else
	{
		g_objModalInfo.callBackFunc = objCallBack;
		g_objModalInfo.callBackParam = objCallBackParam;
		g_objModalInfo.scrollX=window.scrollX;
		g_objModalInfo.scrollY=window.scrollY;
		g_objModalInfo.modalHTML=document.body.innerHTML;
		//alert(g_objModalInfo.modalHTML);
		//document.body.innerHTML="";
		g_objModalInfo.modalDiv = $("modalDiv");
		//var objHide	 =$("modalHideDiv"); 
		top.dialogArguments=objArg;
		top.returnValue= null;
		
		if(g_objModalInfo.modalDiv==null)
		{
			g_objModalInfo.modalDiv = document.createElement("div");
			g_objModalInfo.modalDiv.id="modalDiv";
			g_objModalInfo.modalDiv.style.display="none";
			g_objModalInfo.modalDiv.style.position = "absolute";
			
			g_objModalInfo.modalDiv.style.backgroundColor="#FFFFFF"; 
			g_objModalInfo.modalDiv.style.zIndex =100;
			document.body.appendChild(g_objModalInfo.modalDiv);
		}
	
		g_objModalInfo.modalDiv.style.top = 0;
		g_objModalInfo.modalDiv.style.left =0;
		//g_objModalInfo.modalDiv.style.width = window.innerWidth;
		//g_objModalInfo.modalDiv.style.height = window.innerHeight;
		g_objModalInfo.modalDiv.style.width = document.body.scrollWidth;
		g_objModalInfo.modalDiv.style.height =document.body.scrollHeight;
		g_objModalInfo.modalDiv.style.display="";
		g_objModalInfo.modalDiv.innerHTML =getModalHTML(strURL,width,height);
		window.scroll(1,1);
		//g_objModalInfo.modalTimer=setTimeout("modalActionTimerFunc()",1);
		return null;
	}

}
function getModalHTML(strURL,width,height)
{
	

	var nWidth = window.innerWidth-20;
	var nHeight = window.innerHeight-20;
	var nOffset = 20;
	var strHTML = "<table width='"+nWidth+"' height='"+nHeight+"'><tr height='"+nOffset+"'><td align=right><a href='#none' onclick='closeModal();'>X</a><td></tr><tr><td><iframe id=modalIframe src=\""+strURL+"\" width=100% height=100% frameborder=0></iframe><td></tr></table>";
	//var strHTML = "<iframe id=modalIframe src=\""+strURL+"\" width=100% height=100% frameborder=0></iframe>";
	return strHTML;
}
function closeModal()
{
	g_objModalInfo.clearTimer();
	//document.body.innerHTML=g_objModalInfo.modalHTML;
	window.scroll(g_objModalInfo.scrollX,g_objModalInfo.scrollY);
	g_objModalInfo.modalDiv = $("modalDiv");
	if(g_objModalInfo.modalDiv !=null)
		g_objModalInfo.modalDiv.style.display="none";

	

	if(g_objModalInfo.callBackFunc!=null)
	{
		g_objModalInfo.callBackFunc.call();
		
	}

	g_objModalInfo.modalTimer=0;
	g_objModalInfo.modalHTML="";
	g_objModalInfo.callBackFunc=null;
	g_objModalInfo.callBackParam=null;
	g_objModalInfo.scrollX=0;
	g_objModalInfo.scrollY=0;
	top.dialogArguments=null;
	top.returnValue= null;
}
function encodeParameter(strText)
{
	strText=encodeURIComponent(strText);
	strText = strText.replace(/%/g,"_dpy_");
	//	strText = strText.replace("%","_dpy_");
//	strText=strText.replaceText("%","_dpy_");
//	strText=strText.replaceText("&","_amp_");
	return strText;
}
function getSpaceHTML(nLevel)
{
	var strHTML =""
	for(var i=1;i<nLevel;i++)
	{
		strHTML+= "&nbsp;&nbsp;&nbsp;&nbsp;";
	}
	return strHTML;
}
function NullCheck(strValue) {

    return strValue;
}
function nullCheck(strValue)
{
	if(strValue==null||typeof(strValue)=="undefined")
		return "";
	else
		return strValue.toString();
}
function copyArray(objArray)
{
	var array = new Array();
	for(var i=0;i<objArray.length;i++)
	{
		array[i]=objArray[i];
	}
	return array;
}
function docWrite(doc,strText)
{
	doc.write(strText);
}
function getFlashObjectString(strURL)
{
  return '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab#version=9,0,0,0" width="100%" height="100%" id="wwww" valign="top">' +
  '<param name="movie" value="' + strURL + '" /><param name="wmode" value="transparent" />' +
  '<embed src="' + strURL + '" wmode="transparent" quality="high" width="100%" height="100%" name="wwwww" valign="top" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />' +
  '</object>';
}


function getFlashObjectString(strURL,strId) {
    return '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab#version=9,0,0,0" width="100%" height="100%" id="' + strId + '" valign="top">' +
  '<param name="movie" value="' + strURL + '" /><param name="wmode" value="transparent" />' +
  '<embed src="' + strURL + '" wmode="transparent" quality="high" width="100%" height="100%" name="wwwww" valign="top" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />' +
  '</object>';
}

function getFlashObjectWrite(strURL, strWidth, strHeight) {
    return '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab#version=9,0,0,0" width="203" id="wwww" valign="top">' +
  '<param name="movie" value="' + strURL + '" /><param name="wmode" value="transparent" />' +
  '<embed src="' + strURL + '" wmode="transparent" quality="high" width="100%" name="wwwww" valign="top" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />' +
  '</object>';
}
function showFlash(strURL)

{
    document.write(getFlashObjectString(strURL));
}


function showFlash(strURL, strId) {
    document.write(getFlashObjectString(strURL,strId));

}






function drawObject(strID)
{
    var obj = $(strID);
    var strHTML = obj.innerHTML ;
    obj.innerHTML =strHTML;
}
function getText(bMultiLine,strParam,callbackfunc,callbackparam)
{
    if(typeof(strParam)=="undefined")
        strParam="";
    if(typeof(bMultiLine)=="undefined")
        bMultiLine = false;
     var nWidth=800;
     var nHeight = bMultiLine? 400:200;
     var strURL = g_strBaseWas+ "/function/getText.jsp?multi="+(bMultiLine?1:0);
     return getModalValue(strURL,strParam,nWidth,nHeight,callbackfunc,callbackparam);
}
function getFileExt(strFileName)
{
    var nIndex = strFileName.lastIndexOf(".");
    if(nIndex<0)
        return strFileName;
    else
        return strFileName.substring(nIndex+1);
}

function closeIt()
{
    if (g_bExplorer)
        top.close();
    else
        parent.closeModal();
}
function checkObject(obj)
{
	if(obj==null||typeof(obj)=="undifined")
		return false;
	else
		return true;
}
function GetMoneyString(nNumber)
{
    var strMoney = "";
    while (nNumber > 0)
    {
        if (strMoney.length > 0)
            strMoney = ","+strMoney;
        strMoney = GetNumberString(nNumber % 1000, 3) + strMoney;
        nNumber /= 1000;
        nNumber = parseInt(nNumber);
    }
    var n = strMoney.indexOf("0");
    while (n == 0)
    {
        strMoney = strMoney.substring(1);
        n = strMoney.indexOf("0");
    }
    if (strMoney == "")
        strMoney = "0";
    return strMoney;
        //    return strMoney.TrimStart("0".ToCharArray());
}
function GetNumberString(nNumber, nSize)
{
    if (nNumber / 10 >= nSize)
        return nNumber.toString();
    var strNumber = "0000000000" + nNumber.toString();
    var n= strNumber.length;
    return strNumber.substring(n - nSize, n);       
}
function GetFileSizeString(nSize)
{
    nSize = parseNumber(nSize);
    
    if (nSize < 1000)
        return nSize + " Byte";
    if (nSize < 1000 * 1000)
    {
        return parseInt(nSize / 1000) +"."+parseInt((nSize%1000) /100)+ " KB"
    }
    else
    {
        return parseInt(nSize / 1000000) + "." + parseInt((nSize % 100000) / 100) + " MB"
    }
    
}
function GetFrmValue(strName)
{
	if(!checkObject(strName))
		return "";
	var objElement = $(strName);	
	if(objElement == null)
	    return "";
	if (objElement.tagName.toLowerCase()=="input" && objElement.type == "checkbox")
	    return objElement.checked;
	return objElement.value;
}
function SetFrmValue(strName, strValue) {
    if (!checkObject(strName))
        return "";
    var objElement = $(strName);
    if (objElement == null)
        return "";
    if (objElement.tagName.toLowerCase() == "input" && objElement.type == "checkbox") {
        objElement.checked = parseBoolean(strValue.toString());
    }
    else {
        objElement.value = strValue;
    }
}
function Trace(strText)
{

}


var Utilities = new Object();
Utilities.NullCheck = function(strValue)
{
    if (checkObject(strValue))
        return strValue;
    return "";
}
Utilities.ParseInt = function(strNumber)
{
    if (!checkObject(strNumber))
        return 0;
    strNumber = strNumber + "";
    strNumber = strNumber.trim();
    try
    {
        var dbNumber = parseFloat(strNumber);
        var nNumber = parseInt(Number(strNumber));
        if (dbNumber.toString() == "NaN")
            dbNumber = 0;
        if (nNumber.toString() == "NaN")
            nNumber = 0;
        if (dbNumber - nNumber == 0)
            return nNumber;
        else
            return dbNumber;
    }
    catch (e)
    {
        return 0;
    }
}
Utilities.ParseDouble = function(strNumber)
{
    if (!checkObject(strNumber))
        return 0;
    strNumber = strNumber + "";
    strNumber = strNumber.trim();
    try
    {
        var dbNumber = parseFloat(strNumber);
        return dbNumber;
    }
    catch (e)
    {
        return 0.0;
    }
}
Utilities.ParseBoolean = function(strBool)
{
    try
    {
        return Boolean.Parse(strBool);
    }
    catch (e)
    {
        return false;
    }
}
Utilities.LoadXMLString=function(strXML)
{
    try
    {
        var xmlDom = getXMLDom();
        if (xmlDom.loadXML(strXML) == false)
            return null;

        return xmlDom.documentElement;
    }
    catch (e)
    {
        alert(e.message);
        return null;
    }
}
Utilities.Trace = function(strText)
{

}
function initBase64() {
    enc64List = new Array();
    dec64List = new Array();
    var i;
    for (i = 0; i < 26; i++) {
        enc64List[enc64List.length] = String.fromCharCode(65 + i);
    }
    for (i = 0; i < 26; i++) {
        enc64List[enc64List.length] = String.fromCharCode(97 + i);
    }
    for (i = 0; i < 10; i++) {
        enc64List[enc64List.length] = String.fromCharCode(48 + i);
    }
    enc64List[enc64List.length] = "+";
    enc64List[enc64List.length] = "/";
    for (i = 0; i < 128; i++) {
        dec64List[dec64List.length] = -1;
    }
    for (i = 0; i < 64; i++) {
        dec64List[enc64List[i].charCodeAt(0)] = i;
    }
}

function base64Encode(str) {
    var c, d, e, end = 0;
    var u, v, w, x;
    var ptr = -1;
    var input = str.split("");
    var output = "";
    while (end == 0) {
        c = (typeof input[++ptr] != "undefined") ? input[ptr].charCodeAt(0) :
            ((end = 1) ? 0 : 0);
        d = (typeof input[++ptr] != "undefined") ? input[ptr].charCodeAt(0) :
            ((end += 1) ? 0 : 0);
        e = (typeof input[++ptr] != "undefined") ? input[ptr].charCodeAt(0) :
            ((end += 1) ? 0 : 0);
        u = enc64List[c >> 2];
        v = enc64List[(0x00000003 & c) << 4 | d >> 4];
        w = enc64List[(0x0000000F & d) << 2 | e >> 6];
        x = enc64List[e & 0x0000003F];
        if (end >= 1) { x = "="; }
        if (end == 2) { w = "="; }
        if (end < 3) { output += u + v + w + x; }
    }
    var formattedOutput = "";
    var lineLength = 76;
    while (output.length > lineLength) {
        formattedOutput += output.substring(0, lineLength) + "\n";
        output = output.substring(lineLength);
    }
    formattedOutput += output;
    return formattedOutput;
}

function base64Decode(str) {
    var c = 0, d = 0, e = 0, f = 0, i = 0, n = 0;
    var input = str.split("");
    var output = "";
    var ptr = 0;
    do {
        f = input[ptr++].charCodeAt(0);
        i = dec64List[f];
        if (f >= 0 && f < 128 && i != -1) {
            if (n % 4 == 0) {
                c = i << 2;
            } else if (n % 4 == 1) {
                c = c | (i >> 4);
                d = (i & 0x0000000F) << 4;
            } else if (n % 4 == 2) {
                d = d | (i >> 2);
                e = (i & 0x00000003) << 6;
            } else {
                e = e | i;
            }
            n++;
            if (n % 4 == 0) {
                output += String.fromCharCode(c) +
                          String.fromCharCode(d) +
                          String.fromCharCode(e);
            }
        }
    }
    while (typeof input[ptr] != "undefined");
    output += (n % 4 == 3) ? String.fromCharCode(c) + String.fromCharCode(d) :
              ((n % 4 == 2) ? String.fromCharCode(c) : "");
    return output;
}
initBase64();

