
function CenterWindow(url, windowname, w, h) 
{
	var xMax = 800;
	var yMax = 600;
	
	if (document.all)
	{
		xMax = screen.width
		yMax = screen.height;
	}
    if (document.layers) 
    {
		xMax = window.outerWidth;
		yMax = window.outerHeight;
	}
	if (w>xMax) 
		w = xMax * .9;
	if (h>yMax) 
		h = yMax * .9;
	
	var l = (xMax - w)/2;
	var t = (yMax-h)/2;
	
	handle_PUH = window.open(url,windowname,'screenX='+l+',left='+l+',screenY='+t+',top='+t+',toolbar=0,location=0,directories=0,status=1,menubar=0,scrollbars=2,resizable=1,fullscreen=0,width='+w+',height='+h);
	return false;
}

function PopUp(url)
{
	var win = window.open('#','','');
	win.location.href = url;
}

function SetFocus(elementid)
{
	var element  = document.all ? document.all[elementid] : document.getElementById(elementid);
	if (elementid != null)
	{
		textbox.focus();
	}
}

/*-------------------------------------------------------------------
 * Default Button Handling
 *-----------------------------------------------------------------*/

function handleDefaultButton(e)
{
	//alert('handleDefaultButton');
	
	var Key = e ? e.which : window.event.keyCode;
	if (Key == 13)
	{ 
		if (lastFocusedObject == null)
			return;
			
		if (lastFocusedObject.type == 'textarea')
			return;
			
	    var selectedButton = determineButton();
	    //alert(selectedButton);
	    if (selectedButton != null)
	    {
	        __doPostBack(selectedButton, ''); 
	        return false;
	    }
	}
	return true; 
}

function storeLastFocus(ctrl)
{
	//alert('storeLastFocus');

    if (ctrl.id != "" && ctrl.id.indexOf("_Button")==-1) // Nur Element mit Anfangsbuchstaben
    {
        lastFocusedObject=ctrl;
        //alert(lastFocusedObject.id); 
    }
}

function determineButton()
{
    if (defaultButtons.length == 1)
        return defaultButtons[0];
        
    if (lastFocusedObject == null || defaultButtons.length == 0)
        return;
    
    for (var i = 0; i < defaultButtons.length; i++)
    {
		var idx;
		
		if (defaultButtons[i].indexOf("_Button") != -1)
			idx = defaultButtons[i].indexOf("_Button");
		else if (defaultButtons[i].indexOf("_LinkButton") != -1)
			idx = defaultButtons[i].indexOf("_LinkButton");
		else
			idx = -1;
		
		if (idx != -1)
		{
			var buttonprefix = defaultButtons[i].substr(0, idx);

			//alert(buttonprefix + "\r\n" + lastFocusedObject.name.substr(0, buttonprefix.length));
	        
			if (lastFocusedObject.name.substr(0, buttonprefix.length) == buttonprefix)
			{
				return defaultButtons[i];
			}
		}
    }
    return defaultButtons[0];
}

/*-------------------------------------------------------------------
 * Switches 'blocking'/'none'-blocking style of a div
 *-----------------------------------------------------------------*/
function blocking(nr)
{
	if (document.layers)
	{
		current = (document.layers[nr].display == 'none' || 
				   document.all[nr].style.display == '') ? 'block' : 'none';
		document.layers[nr].display = current;
		return current == 'block';
	}
	else if (document.all)
	{
		current = (document.all[nr].style.display == 'none' ||
				   document.all[nr].style.display == '') ? 'block' : 'none';
		document.all[nr].style.display = current;
		return current == 'block';
	}
	else if (document.getElementById)
	{
		vista = (document.getElementById(nr).style.display == 'none' || 
				 document.getElementById(nr).style.display == '') ? 'block' : 'none';
		document.getElementById(nr).style.display = vista;
		return vista == 'block';
	}
}

function blockingControlled(nr, on)
{
	current = on ? 'block' : 'none';

	if (document.layers)
		document.layers[nr].display = current;
	else if (document.all)
		document.all[nr].style.display = current;
	else if (document.getElementById)
		document.getElementById(nr).style.display = current;
}

/*-------------------------------------------------------------------
 * Get control by id/name
 *-----------------------------------------------------------------*/
function getControl(id)
{
	return document.all ? document.all[id] : document.getElementById(id);
}

function getControlByName(id)
{
	return document.all ? document.all[id] : document.getElementsByName(id)[0];
}
