var calendarWidth = 175;
var calendarHeight = 170;
var calendar = null;

function closeCalendar()
{
	if (calendar != null)
	{
		calendar.close();
		calendar = null;
	}
}

function openCalendar(id, title, defaultDateString, minDateString, maxDateString)
{
	var centreParentX;
	var centreParentY;
	var windowX;
	var windowY;
	var url;
	
	// DATE STRINGS SHOULD BE IN THE ISO STANDARD FORMAT I.E. YYYY-MM-DD
	
	closeCalendar();
	
	if (isNaN(window.screenLeft))
	{
		// NETSCAPE, MOZILLA
		centreParentX = window.screenX + (window.outerWidth / 2);
		centreParentY = window.screenY + (window.outerHeight / 2);
	}
	else
	{
		// IE
		centreParentX = window.screenLeft + (document.body.clientWidth / 2);
		centreParentY = window.screenTop + (document.body.clientHeight / 2);
	}
	
	windowX = centreParentX - (calendarWidth / 2);
	windowY = centreParentY - (calendarHeight / 2);
	
	url = 'calendar/calendar.asp?id=' + id + '&title=' + title + '&defaultdate=' + defaultDateString + '&mindate=' + minDateString + '&maxdate=' + maxDateString;
	
	calendar = window.open(url, '_blank', 'toolbar=no,menubar=no,location=no,scrollbars=no,status=no,screenX=' + windowX + ',screenY=' + windowY + ',left=' + windowX + ',top=' + windowY + ',width=' + calendarWidth + ',height=' + calendarHeight + ',resizable=no');
}

function getElement(elementId)
{
	if (document.getElementById)
	{
		return document.getElementById(elementId);
	}
	else
	{
		return document.all[elementId];
	}
}

function findValueInList(list, value)
{
	var i;
			
	for (i = 0; i < list.options.length; i++)
	{
		if (list.options[i].value == value)
		{
			list.selectedIndex = i;
			break;
		}
	}
}