

function dbAlso(inField, outResultTxt) {
	var outResult	= outResultTxt.id;
	var outForm		= outResultTxt.form.id;
	setTimeout('dbLookup_Fill("'+inField+'","'+outForm+'","'+outResult+'")', 500);
}
function dbAlsoEx(inField, outResultTxt, blnReplace) {
	var outResult	= outResultTxt.id;
	var outForm		= outResultTxt.form.id;
	if (blnReplace != false || outResultTxt.value == '') setTimeout('dbLookup_Fill("'+inField+'","'+outForm+'","'+outResult+'")', 500);
}
function dbLookup(inField, inTable, inKey, inData, outResultTxt) {	
	return dbLookupEx(inField, inTable, inKey, inData, outResultTxt, true);
}
function dbLookupEx(inField, inTable, inKey, inData, outResultTxt, blnReplace) {	
	if (inData == '') return 0;
	var outResult = outResultTxt.id;
	var outForm	  = outResultTxt.form.id;
	var newWhr = inKey+'%3D%27'+URLEncode(inData)+'%27';
	var newUrl = '../App_Control/DropListGet.aspx?Tbl='+inTable+'&Flt='+newWhr;
	if (dbLookup_LastURL != newUrl) { dbLookup_Ready = false; dbLookupFrame.location = newUrl; }
	if (blnReplace != false || outResultTxt.value == '') setTimeout('dbLookup_Fill("'+inField+'","'+outForm+'","'+outResult+'")', 500);
	dbLookup_LastURL = newUrl;
}
function dbLookup_Fill(inField, outForm, outResult) {
	if (!dbLookup_Ready) return setTimeout('dbLookup_Fill("'+inField+'","'+outForm+'","'+outResult+'")', 500);
	if (''+dbLookupFrame.document.getElementById('result').attributes[inField] != 'undefined') {
		var frmForm = document.getElementById(outForm);						if (!frmForm) { return ('no form'); } 
		var frmCtrl = (IE ? frmForm.all(outResult) : frmForm[outResult]);	if (!frmCtrl) { return ('no ctrl'); } 
		frmCtrl.value = dbLookupFrame.document.getElementById('result').attributes[inField].value;
	} else {
		// alert('bailed');
	}
}
var calLastSelected	= new Date(); 	
var calLastMonth	= calLastSelected.getMonth()+1;		//get current month (1-12);
var calLastYear		= calLastSelected.getFullYear();	//get current year
var ctlCalledFrom	= null;
//calMove(0);
function showPopupDate(inControl, inPosition)
{
    var var_popupDateBack = document.getElementById('popupDateBack');
    var var_iframeDateBack = document.getElementById('iframeDateBack');
    var var_popupDate = document.getElementById('popupDate');
	hideMenu(var_popupDateBack, 0);
	hideMenu(var_popupDate, 0);
	var strDate = inControl.value;
	var myDate  = ParseDate(strDate);
	if (myDate)	{	
		calLastSelected = myDate;
		calLastMonth	= calLastSelected.getMonth()+1;	
		calLastYear		= calLastSelected.getFullYear();
	} 
	else {
		calLastSelected = new Date();
		calLastMonth	= calLastSelected.getMonth()+1;	
		calLastYear		= calLastSelected.getFullYear();
		calLastSelected = new Date(2000,1,1);;
	}

	ctlCalledFrom = inControl;
	
	showMenu(var_popupDateBack, inPosition);
	showMenu(var_popupDate, inPosition);
	
	var var_iframeDateBack = document.getElementById('iframeDateBack');
	if (var_iframeDateBack && var_iframeDateBack.style) {					// need to show iframe for firefox
	    var_iframeDateBack.style.width = 200;
	    var_iframeDateBack.style.height = var_popupDate.style.height;   // 126;
	    var_iframeDateBack.style.height = var_popupDate.style.height;   // 126;
	}
	calMove(0);
}
function hidePopupDate(inDelay)
{
//	alert('hide');
	cancelHide = false;
	hideMenu(document.getElementById('popupDate'), inDelay);
	hideMenu(document.getElementById('popupDateBack'), inDelay);
	
	var var_iframeDateBack = document.getElementById('iframeDateBack');
	if (var_iframeDateBack && var_iframeDateBack.style) { // need to hide iframe for firefox
	    var_iframeDateBack.style.width = 0;
	    var_iframeDateBack.style.height = 0;	
	}
}
function calClick(inYrs, inMth, inDay)
{
	calLastSelected	= new Date(inYrs, inMth-1, inDay);
	if (!ctlCalledFrom.readOnly) ctlCalledFrom.value = FormatMediumDate(calLastSelected);
	ctlCalledFrom.focus();
}
function calMove(inAmount)
{
	cancelHide = true;
	calLastMonth += inAmount;
	if (calLastMonth < 1 ) {	calLastMonth = 12; --calLastYear; }
	if (calLastMonth > 12) {	calLastMonth = 1;  ++calLastYear; }
    
    var var_myCalendar = document.getElementById('myCalendar');
	var_myCalendar.innerHTML = buildCal(calLastMonth, calLastYear, "calMain", "calMonth", "calDayHeadings", "calDays", "calDaysOut", 0, calLastSelected);
}
function calClose()
{
	hidePopupDate(0);
}

/*
var var_iframeDateBack = document.getElementById('iframeDateBack');
if (var_iframeDateBack) {
    if (var_iframeDateBack.style) {					// need to hide iframe for firefox
	    var_iframeDateBack.style.width = 0;
	    var_iframeDateBack.style.height = 0;
    }
}
*/



// DETAILED
var doSvrDataLoad_Data; var doSvrDataLoad_Find; var doSvrDataLoad_SaveTo; var doSvrDataLoad_Positn;
var doSvrDataLoadQueued = false; var doSvrDataLoad_LastUrl = '';
function doSvrDataLoad() {
	doSvrDataLoadQueued = false;
	var newFra = document.getElementById('doSvrDetList');
//	var newFra = doSvrDetList;		//document.frames['doSvrDetList'];
//	if (!newFra) newFra = document.getElementById('doSvrDetList');
	if (!newFra) alert('noFrame');
	var newUrl = '../App_Control/DropListDet.aspx?Data='+doSvrDataLoad_Data+'&Find='+URLEncode(doSvrDataLoad_Find);
	if (doSvrDataLoad_LastUrl != newUrl) { 
	    if (newFra.location)    newFra.location = newUrl; 
	    else                    newFra.src = newUrl; 
		doSvrDataLoad_LastUrl = newUrl; 
	}
}
function doSvrDataHide() { hideMenuById('doSvrDetPopup', 50); }
function doSvrDataSearch(inData, inSearch, inPosition)	{
	var newPop = document.getElementById('doSvrDetPopup');		
	doSvrDataLoad_Find = inSearch.value;
	doSvrDataLoad_Data = inData;
	doSvrDataLoad_SaveTo = inSearch;
	doSvrDataLoad_Positn = inPosition;
	if (doSvrDataLoadQueued == false) {
		doSvrDataLoadQueued = true;
		setTimeout('doSvrDataLoad()', 500);		
	}		
	showMenu(newPop, doSvrDataLoad_Positn);
	// if (IE) alert('IE: Key: ' + event.keyCode);
	if (IE) if (event.keyCode == 40) {	//down arrow = 40
		var newFra = document.getElementById('doSvrDetList')
		if (!newFra) alert('noFrame');
		cancelHide = true;
		newFra.document.body.focus();	// IE
		// newFra.contentDocument.body.focus();	// Firefox
	}
}
function doSvrDataSelect_Click(inLayer, inList) {
	doSvrDataLoad_SaveTo.value = inList.options[inList.selectedIndex].value;
	doSvrDataLoad_SaveTo.dirty = true;
	doSvrDataLoad_SaveTo.focus();
	doSvrDataSelect_Blur(inLayer, inList);
}
function doSvrDataSelect_Blur(inLayer, inList) {
	cancelHide = false;
	hideMenu(inLayer, 5);
}
function doSvrDataSelect_Sel(inLayer, inList) {
	doSvrDataLoad_SaveTo.value = inList.options[inList.selectedIndex].value;
	doSvrDataLoad_SaveTo.dirty = true;
	if (!cancelHide) { doSvrDataLoad_SaveTo.focus(); hideMenu(inLayer, 5);	}
}
function doSvrDataSelect_Focus(inLayer, inList)		{ cancelHide = true; }
function doSvrDataSelect_TabOff(inLayer, inList)	{ doSvrDataLoad_SaveTo.focus(); }
function doSvrDataClick(inValue) {
	var newPop = document.getElementById('doSvrDetPopup');		
	// setInnerHtml(document.getElementById('javaStatusText'), 'set ['+inValue+']');
	doSvrDataLoad_SaveTo.value = inValue;
	doSvrDataLoad_SaveTo.dirty = true;
	doSvrDataLoad_SaveTo.focus();
	doSvrDataSelect_Blur(newPop, null);
}
function doSvrDataWidth(inValue) {	
	document.getElementById('doSvrDetCell').width = inValue;
}



var hover_color_was = null;
var hover_color_click = true;
function HcNoAction()	{ hover_color_click = false; }
function HcMset(inCell) { 
//inCell.onmouseover = HcMin; inCell.onmouseout = HcMot; 
inCell.onclick = HcMck; }
function HcMin(event)	{ hover_color_was = this.style.backgroundColor; this.style.backgroundColor = '#FFFF00'; }
function HcMot(event)	{ this.style.backgroundColor = hover_color_was; }
function HcMck(event)	{ if (hover_color_click) { if (this.getAttribute('url')) window.location = this.getAttribute('url'); } hover_color_click = true; }
function SetupHoverColour(inTableA) { if (inTableA) for (var i = 0; i < inTableA.rows.length;  i++) HcMset(inTableA.rows[i]); }

function selectAll(inOpt) { selectChg((inOpt != 0 ? true : false)); } 
function selectChg(inOpt) {
	var items = document.getElementsByTagName('input');
	for (var i = 0; i < items.length; ++i)
	{
		var chklist = items[i];
		if (chklist.type == 'checkbox') {
			if (strEndsWith(chklist.id, 'RowSelect') || strEndsWith(chklist.id, 'RowSelect_chk')) {
				if (inOpt == 0) chklist.checked = false;
				if (inOpt == 1) chklist.checked = true;
				if (inOpt == 2) chklist.checked = !chklist.checked;
			}
		}
	}
}
function selectPost(inOpt) {
	var itemForm = document.getElementById('frmResults');
	if (!itemForm) alert('no search results form');
	itemForm.elements['itemActn'].value = inOpt;
	itemForm.submit();
}

function strEndsWith(testString, endingString) {
      if(endingString.length > testString.length) return false;
      return testString.indexOf(endingString)==(testString.length-endingString.length);
}


var xForm_Forms = new Array();
function xForm(inForm, inCtrlName)
{
	// search for form in forms array
	for (var i = 0; i < xForm_Forms.length; ++i)
	{		
		var dictItem = xForm_Forms[i];
		if (inForm == dictItem[0])
		{
			// registered form was found
			var ctrlArray = dictItem[1];
			
			// search control array
			for (var j = 0; j < ctrlArray.length; ++j)
			{
				var ctrlItem = ctrlArray[j];
				if (inCtrlName == ctrlItem[0])
					return document.getElementById(ctrlItem[1]);			
			}
			return null;
		}		
	}
	return null;
}
function xFormInit(inForm, inControls)
{
	xForm_Forms.push(new Array(inForm, inControls));
}
