var wndDct = null ;

//PreLoad Images
function PreLoadImages(){
	var imgDict_c = new Image();
	var imgDict_o = new Image();
	var imgFolder_c = new Image();
	var imgFolder_o = new Image();
	var imgPt = new Image();
	var imgPf = new Image();
	var imgPl = new Image();
	var imgMt = new Image();
	var imgMf = new Image();
	var imgMl = new Image();
	var imgV = new Image();
	var imgL = new Image();
	var imgT = new Image();
	var imgClear = new Image();
	var imgPaper = new Image();
	imgDict_c.src = '/images/dct_tree/book_c.gif';
	imgDict_o.src = '/images/dct_tree/book_o.gif';
	imgFolder_c.src = '/images/dct_tree/folder_c.gif';
	imgFolder_o.src = '/images/dct_tree/folder_o.gif';
	imgPt.src = '/images/dct_tree/pt.gif';
	imgPf.src = '/images/dct_tree/pf.gif';
	imgPl.src = '/images/dct_tree/pl.gif';
	imgMt.src = '/images/dct_tree/Mt.gif';
	imgMf.src = '/images/dct_tree/Mf.gif';
	imgMl.src = '/images/dct_tree/Ml.gif';
	imgV.src = '/images/dct_tree/v.gif';
	imgL.src = '/images/dct_tree/l.gif';
	imgT.src = '/images/dct_tree/t.gif';
	imgClear.src = '/images/dct_tree/clear.gif';
	imgPaper.src = '/images/dct_tree/w_paper.gif';
}

function doDictionary( strManual, strHeader, strFolder ) {
	var oForm = document.forms.frmMain ;
	var strSid = oForm.sid.value ;
	var strBid = oForm.bid.value ;
	var intApp = getApp() ;

	if (intApp == 1)
		//var strURL = "/databuffet/pro/oc_dictionary.asp?sid=" + strSid + "&bid=" + strBid + "&m=" + strManual + "&h=" + strHeader + "&f=" + strFolder;
		var strURL = "/databuffet/pro/oc_dct_view.asp?sid=" + strSid + "&bid=" + strBid + "&m=" + strManual + "&h=" + strHeader + "&f=" + strFolder;
	else
		var strURL = "/data/dictionary/asp/dictionary.asp?sid=" + strSid + "&bid=" + strBid + "&m=" + strManual + "&h=" + strHeader + "&f=" + strFolder;

	strURL += "&app=" + intApp ;
	if ( this.parent ) { this.parent.location = strURL; } else { this.location = strURL; }
}

function getApp() {
	return ( document.forms.frmMain.app ) ? parseInt(document.forms.frmMain.app.value) : 1
}

function navTree( strManual, strHeader, strFolder ) {
	var sH = document.frmDct.h.value ;
	var sH_len = document.frmDct.h_maxlen.value ;
	var strBid = document.forms.frmMain.bid.value;
	var intApp = getApp();
	//alert(strBid);

	if ( sH_len < strHeader.length )  sH_len = strHeader.length ;
	
	var oDiv = document.getElementById('leafContainer');
	//var oLoadDiv = document.createElement('div');
	/*var oLayerDiv = document.createElement('div');
	var oLoadDiv = document.createElement('div');
	
	oLayerDiv.className = 'TransDiv';
	oLayerDiv.style.filter = 'alpha(opacity=70)';
	oLayerDiv.style.width = oDiv.offsetWidth + 'px';
	oLayerDiv.style.height = oDiv.offsetHeight + 'px';
	oLayerDiv.style.backgroundColor = '#efefef';
	oLayerDiv.style.position = 'absolute';
	oLayerDiv.style.top = '0px';
	oLayerDiv.style.left = '0px';
		
	oLoadDiv.style.position = 'absolute';
	oLoadDiv.style.top = '100px';
	oLoadDiv.style.left = (oDiv.offsetWidth / 3) + 'px';
	oLoadDiv.style.width = '300px';
	oLoadDiv.style.height = '300px';
	oLoadDiv.innerHTML = '<div style="position: absolute; background: url(/images/loading.gif) no-repeat; background-color: #CCCCCC; border: 1px solid gray; width: 150px; padding-left: 40px; padding-top: 7px; padding-bottom: 7px; margin-top: 10px; margin-left: 15px; font-size: 10pt; font-weight: bold;">Loading...</div>';
	oLayerDiv.appendChild(oLoadDiv);
	oDiv.appendChild(oLayerDiv);*/
	//var sHTML = oDiv.innerHTML + '<div style="position: absolute; width: 100%; height: 100%; background-color: #efefef; top: 0px; left: 0px; filter: alpha(opacity=70);"></div>';

	var sHTML = oDiv.innerHTML + '<div class="TransDiv"></div><div class="LoadDiv" style="left: ' + (oDiv.offsetWidth / 3) + 'px;">Loading...</div>';
	oDiv.innerHTML = sHTML;
		
	var sURL = "/data/dictionary/asp/dct_leaf.asp?bid=" + strBid + "&m=" + strManual + "&h=" + strHeader + "&f=" + strFolder + "&app=" + intApp;
	initAjax(sURL, oDiv);

	//oLayerDiv.style.filter = null;
	//oLoadDiv = null;
	//oLayerDiv = null;
	//oDiv = null;
	
}

function changeHighlight(strHeader) {
	var strCurHighlighted = document.frmMain.h.value ;
	try {
		eval("document.getElementById('" + strCurHighlighted + "').className = 'dctTreeNode'");
		eval("document.getElementById('" + strHeader + "').className = 'dctTreeNodeSel'");
	} catch(er) {}
	strCurHighlighted = strHeader;
	document.frmMain.h.value = strCurHighlighted ;
}

function doScroll( strHeader ) {
	try {
		var oPos = getAnchorPosition(strHeader);
		if ( oPos.y > 25 ) self.scrollTo(0, oPos.y-20); else self.scrollTo(0, oPos.y) ;		
	} catch (er) {}
}

function doDctGeo( strGeo ) {
	var oForm = document.forms.frmMain ;
	var strSid = oForm.sid.value ;
	var strBid = oForm.bid.value ;
	var strArgs = "sid=" + strSid + "&bid=" + strBid + "&f=7&g=" + strGeo ;
	doDCTWindow( 0, strArgs, wndDct ) ;
}

function doWizard( strConcept, strFunction ) {

	var oForm = document.forms.frmMain ;
	var strSid = oForm.sid == null ? document.getElementById('sid').value : oForm.sid.value ;
	var strBid = oForm.bid == null ? document.getElementById('bid').value : oForm.bid.value ;
	var strApp = getApp() ;
	var strURL = "";

	strConcept = doWBEscape( strConcept );
	strURL = "sid=" + strSid + "&bid=" + strBid + "&cmd=3&f=" + escape( strFunction ) + "&app=" + strApp;			

	if ( strFunction == "7" || strFunction == "8" )
		strURL += "&g=" + strConcept;
	else
		strURL += "&c=" + strConcept;

	doDCTWindow(0, strURL, wndDct) ;
}

function doExport( strMnemonic, intExport ) { 
	var strMnemonic = CleanMnemonic( strMnemonic ) ;
	switch (intExport) {
		case 1:
			var strExport = "chart";
			break ;
		case 2:
			var strExport = "table";
			break ;
		case 3:
			var strExport = "excel";
			break ;	
	}
	doTask(strExport,"s=" + strMnemonic ) ;
}

function doDetail( strConcept, strFunction ) {
	var oForm = document.forms.frmMain ;
	
	var strSid = oForm.sid == null ?  document.getElementById('sid').value : oForm.sid.value;
	var strBid = oForm.bid == null ? document.getElementById('bid').value : oForm.bid.value ;
	strConcept = doWBEscape( strConcept );
	var strURL = "sid=" + strSid + "&bid=" + strBid + "cmd=3&c=" + strConcept + "&f=" + escape( strFunction ) ;			
	doDCTWindow(1, strURL, wndDct) ;
}

function doSave( strMnemonic ) {
	var ie = GetBrowser() ;
	strMnemonic = doWBEscape( strMnemonic );
	SaveMnemonic ( strMnemonic ) ; 
}


function doBlue( strBPID ) {
	var strArgs = "bp_id=" + strBPID;
	doDCTWindow( 2, strArgs, wndDct) ;
}

function doDCTWindow( intTask, strArgs, wndDct ) {
	var aryURL = new Array;
	aryURL[0] = "/data/dictionary/asp/dct_geo_concept.asp"
	aryURL[1] = "/data/dictionary/asp/dct_concept_detail.asp"
	aryURL[2] = "/data/dictionary/asp/dct_blue_show.asp"

	var aryParam = new Array;
	aryParam[0] = "status,height=360,width=505,resizable,scrollbars=yes";
	aryParam[1] = "height=250,width=430,resizable";
	aryParam[2] = "width=500,height=475,mennubar=no,resizable=no,status=no,toolbar=no,titlebar=no,scrollbars=yes" ;

	var aryWinName = new Array;
	aryWinName[0] = "wizard";
	aryWinName[1] = "wizard";
	aryWinName[1] = "wizard";

	var strURL = aryURL[intTask] + "?" + strArgs ;

	if ( wndDct == null || wndDct.close )	{
		wndDct = window.open(strURL,aryWinName[intTask],aryParam[intTask])
		if ( !wndDct.opener ) wndDct.Opener = window;
	} else if ( wndInfo.closed ) 	{
		wndDct = window.open(strURL,aryWinName[intTask],aryParam[intTask])
		if ( !wndInfo.opener ) wndDct.Opener = window;		
	} else {
		wndDct.location = strURL;
		wndDct.focus();
	}
	wndDct.focus();
}


function dctCheckAll( blnCheck ) {
	var oFrm = document.forms.frmMain;
	var oChk = document.forms.frmMain.chk;
	var strDel = "";
	

	if(oChk){	
		if ( isNaN(parseInt(oChk.length)) ) {
			oChk.checked = blnCheck;
			if ( !blnCheck ) strDel += oChk.value + ";";
		} else {
			for (var i=0; i<oChk.length; i++) {
				oChk[i].checked = blnCheck;
				if ( !blnCheck ) strDel += oChk[i].value + ";";
			}
		}
	}

	if ( !blnCheck ) oFrm.mnemToDel.value = strDel;
	
	// set target info
	oFrm.action = "/data/dictionary/asp/saveBasket.asp"
	oFrm.target="hidWork";
	oFrm.submit();

	// reset target info
	oFrm.target="_top";
	oFrm.action = "/data/dictionary/asp/dictionary.asp"
}

function doSQLBasket( strVar, strBid, strSid, blnChecked ) {
	var strURL = "/data/dictionary/asp/saveBasket.asp?sid=" + strSid + "&bid=" + strBid + "&app=" + getApp();
	strURL += ( blnChecked ) ? "&chk=" + escape(strVar) : "&mnemToDel=" + strVar;
	
	//window.open(strURL);

	//parent.frames["hidWork"].location=strURL ; //used on oc_dictionary.asp
	var oDiv = document.getElementById('saveContainer');
	initAjax(strURL, oDiv);
	//window.frames["hidWork"].location=strURL ;
}

function doSQLBasket_link( strVar, strBid, strSid, intCheck, oLink ) {
	
	if ( document.forms.frmMain.chk )
		if ( isElArray(document.forms.frmMain.chk) ) document.forms.frmMain.chk[intCheck].checked = true;	else document.forms.frmMain.chk.checked = true;
	

	doSQLBasket( unescape(strVar), strBid, strSid, true )

	var sGeo = oLink.innerHTML;
	var oParent = oLink.parentNode;

	//oParent.className = 'dctSmBlue';
	oParent.style.color = '#BFBFBF';
	oParent.style.textDecoration = 'underline';	
	oParent.removeChild(oLink);
	oParent.innerHTML = sGeo;
	
	//oLink.style.color = '#AFAFAF';
}


function goChange( strCmd ) 
{
	document.forms.frmMain.cmd.value = strCmd ;
	document.forms.frmMain.submit() ;
}