//**********************************************
// calendar.js
// written by M. Hirsch-Hoffmann, ETH Zürich
//**********************************************

document.write("<input type=hidden id='ddcb' onchange='Javascript:ddcb_cancel(event);'>\n");

function ddcb_show(myfield)
{
	var ddcb = document.getElementById('ddcb');
	ddcb.value = myfield;
	
	var myinput = document.getElementById(myfield+'_txt');
	var myselect = document.getElementById(myfield+'_select');
	var mybutton = document.getElementById(myfield+'_cmd');
	
	var mytop = parseInt(myinput.offsetTop,10)+parseInt(myinput.offsetHeight,10);
	var myleft = parseInt(myinput.offsetLeft)+parseInt(myinput.offsetWidth,10);
	
	do
	{
		myinput=myinput.offsetParent;
		mytop+=parseInt(myinput.offsetTop,10);
		myleft+=parseInt(myinput.offsetLeft,10);
	}
	while(myinput.tagName!='BODY' && myinput.tagName!='HTML');

	var maxtext=0;

	for(var i=0;i<myselect.options.length;i++)
	{
		if(myselect.options[i].value.length>maxtext)
		{
			maxtext=myselect.options[i].value.length;
		}
	}

	myselect.style.top=mytop+'px';
	myselect.style.left=myleft+'px';
	myselect.style.display='';

	var myleft=myleft-parseInt(myselect.offsetWidth,10);
	var myleft=myleft+parseInt(mybutton.offsetWidth,10);

	myselect.style.left=myleft+'px';
	myselect.style.zIndex='1';
	
	if(document.addEventListener)
	{
		document.addEventListener('click',ddcb_close,false);
	}else
	{
		document.attachEvent('onclick',ddcb_close);
	}
	ddcb_check(myfield);
	myselect.focus();
}
function ddcb_close()
{
	var ddcb = document.getElementById('ddcb');
	if(ddcb.value)
	{
		document.getElementById(ddcb.value+"_select").style.display='none';
	
		ddcb.value="";
	
		if(document.removeEventListener)
		{
			document.removeEventListener('click',ddcb_close,false);
		}else
		{
			document.detachEvent('onclick',ddcb_close);
		}
	}
}
function ddcb_cancel(myevent)
{
	if(myevent.stopPropagation)
	{
		myevent.stopPropagation();
	}else
	{
		myevent.cancelBubble=true;
	}
}
function ddcb_set(myeventobject)
{
	var ddcb = document.getElementById('ddcb');
	var ddcb_base = document.getElementById(ddcb.value);
	document.getElementById(ddcb.value+"_txt").value=myeventobject.options[parseInt(myeventobject.selectedIndex)].text;
	ddcb_base.value=myeventobject.options[parseInt(myeventobject.selectedIndex)].value;
	ddcb_close();
}
function ddcb_check(myfield)
{
	var myselect = document.getElementById(myfield+'_select');
	var myinput = document.getElementById(myfield+'_txt');
	var ddcb_base = document.getElementById(myfield);
	ddcb_base.value="new";
	
	for(var i=0;i<myselect.options.length;i++)
	{
		if(myselect.options[i].text==myinput.value)
		{
			myselect.options[i].selected=true;
			ddcb_base.value=myselect.options[i].value;
			break;
		}else
		{
			myselect.options[i].selected=false;
		}
	}
}



