
<!--

// show-hide text-input that is only needed if checkbox is checked
function checkBoxA(formname,boxname,fieldname)
{
var box = document.getElementById(boxname);
	
if (box.checked == true)
document.forms[formname].elements[fieldname].className = 'optinput';
else
document.forms[formname].elements[fieldname].className = 'disinput';		
}

function checkBoxB(boxname,layername,layername2)
{
var box = document.getElementById(boxname);
//var layer = document.getElementById(layername);
//var layer2 = document.getElementById(layername2);

if (box.checked == true)
{
setVisibility(layername,true);
setVisibility(layername2);
}
else
{
setVisibility(layername);
setVisibility(layername2,true);
}
}

//set all checkboxes in the form to checkd / unchecked
function checkBoxC(markerbox,boxes){
alert(markerbox.name);
/*
if(document.forms[formname].elements[fieldname]){
  document.forms[formname].elements[fieldname].selected = false;
	var fields=document.forms[formname].elements[fieldname].options.length-1;
	for (i=0 ; i <= fields; i++ )
	document.forms[formname].elements[fieldname].options[i].selected = true;
	}
	*/
}

function setVisibility(layer,on)
	{
	if( on )
		{
		if( DOM )
			document.getElementById(layer).style.visibility = "visible";
		else if( NS4 )
			document.layers[layer].visibility = "show";
		else
			document.all[layer].style.visibility = "visible";
		}
	else
		{
		if( DOM )
			document.getElementById(layer).style.visibility = "hidden";
		else if( NS4 )
			document.layers[layer].visibility = "hide";
		else
			document.all[layer].style.visibility = "hidden";
		};
	};

/* ###########################################
	 drag&drop
########################################### */
var srcObj = new Object;
var dummyObj;

function startDrag(){
	srcObj = window.event.srcElement;
	dummyObj = srcObj.outerHTML;
	var dragData = window.event.dataTransfer;
	dragData.setData('Text', window.event.srcElement.src);
	dragData.effectAllowed = 'linkMove';
	dragData.dropEffect = 'move';
}

function enterDrag() {
	window.event.dataTransfer.getData('Text');
}

function endDrag() {
	window.event.dataTransfer.clearData();
}

function overDrag() {
	window.event.returnValue = false;
}

function drop(destination,source,cell) {
	window.event.returnValue = false;
	if (source == 'definition')
	{
		if (destination=='recycle'){ // trash element(s)
			var x = document.getElementsByName('h_del'+srcObj.elementid);
			if (srcObj.elementtype == 'a' && x[0].value == '1') {
				alert('This activity cant be deleted. \nThere are bookings or invoices linked!');
				return false;
			}
			document.f_prjdata.method.value = 'deleteelement';
			document.f_prjdata.h_id.value = srcObj.elementid;
			document.f_prjdata.h_type.value = srcObj.elementtype;
			checkIsBudTL();
			checkFields();
			check = confirm('Wollen Sie das Element mit \nallen Unterelementen wirklich entfernen?');
			if(check == true) document.f_prjdata.submit();
		} else { // move element(s)
			document.f_prjdata.method.value = 'moveelement';
			document.f_prjdata.h_type.value = srcObj.elementtype;
			document.f_prjdata.h_id.value = srcObj.elementid;
			document.f_prjdata.h_destid.value = destination;
			checkIsBudTL();
			checkFields();
			check = confirm('Wollen Sie das Element mit \nallen Unterelementen wirklich verschieben?');
			if(check == true) document.f_prjdata.submit();
		}
	}
	
	if (source == 'files')
	{
		move_file(srcObj.myLabel,destination);
	}
	
	if (source == 'viewgen')
	{
		if (destination=='recycle'){ // un-assign a field from the view
		
			alert(srcObj.elementid);
		}
		
		if (destination=='assign'){  // assign a field to a cell of the view

			document.forms['f_prjdata'].elements['cell'+cell].src = srcObj.src;
			document.forms['f_prjdata'].elements['destDisplayname'+cell].value = srcObj.displayName;
			document.forms['f_prjdata'].elements['destID'+cell].value = srcObj.fieldid;
			document.forms['f_prjdata'].elements['cell'+cell].fieldid = srcObj.fieldid;
			document.forms['f_prjdata'].elements['cell'+cell].displayName = srcObj.displayName;
			
		}
		
		if (destination=='unassign'){ // move a field in the view			
			
			document.forms['f_prjdata'].elements['cell'+cell].src = "/gfx/salce/ftype_empty.gif";
			document.forms['f_prjdata'].elements['destDisplayname'+cell].value = "";
			document.forms['f_prjdata'].elements['destID'+cell].value = "";
			document.forms['f_prjdata'].elements['cell'+cell].fieldid = "";
			document.forms['f_prjdata'].elements['cell'+cell].displayName = "";
		}
		
		
	}
}

function addAttribute(oObj, sVal) {
	var loc = oObj.indexOf(">");
	return oObj.substring(0, loc) + ' ' + sVal + '>';
}

	 /* ###########################################
	/drag&drop
########################################### */






/* ###########################################
list-features
########################################### */

	function changeImage( ID, Status )
		{
		if( document.getElementById( 'image'+ID ) )
			{
			var _Image = document.getElementById( 'image'+ID );

			_Image.src = _Image.src.replace("-hover","");
			_Image.src = _Image.src.replace(".gif","");
			_Image.src = _Image.src + ( Status ? "-hover" : "" ) + ".gif";

			var _Style = document.getElementById( 'column'+ID ).style;

			_Style.textDecoration = ( Status ? "underline" : "" );
			_Style.backgroundColor = ( Status ? "CCCCCC" : "" );
			};
		};

	function changeNode( ID )
		{
		if( document.getElementById( 'row'+ID ) )
			{
			var _Style = document.getElementById( 'row'+ID ).style;
			var _Image = document.getElementById( 'image'+ID );

			_Image.src = ( _Style.display == "none" ? "/gfx/salce/node-minimize-hover.gif" : "/gfx/salce/node-maximize-hover.gif" );
			_Style.display = ( _Style.display == "none" ? "block" : "none" );
			}
		else
			{
			var _ID = ID.split('|');

			ID = ID.replace('|'+_ID[1],'');

			if( document.getElementById( ID ) && !document.getElementById( ID ).disabled )
				{
				var _Object = document.getElementById( ID );

				_Object.checked = !_Object.checked;
				};
			};
		};

	// activate this node and all parent nodes
	function nodeActivate( ID )
		{
		if( document.getElementById )
			{
			while( ID )
				{
				var _Object = document.getElementById( ID );

				if( !_Object || typeof _Object != 'object' )
					return;
	
				_Object.checked = true;


				// check for parent nodes
				ID = _Object.getAttribute('nodeParent');

				if( ID )
					nodeActivate( ID );
				};
			};
		};

	// deactivate this node and all child nodes
	function nodeDeactivate( ID, Child )
		{
		if( document.getElementById )
			{
			var _ID = ID;
//alert(_ID);
			while( _ID )
				{
				var _Object = document.getElementById( _ID );
	
				if( !_Object || typeof _Object != 'object' )
					return;
	
				_Object.checked = false;
	


				// check for child nodes
				_ID = _Object.getAttribute('nodeChild');
//alert('nodeChild: ' + _ID);
				if( _ID )
					nodeDeactivate( _ID, true );

				// only check sibling nodes of children nodes
				if( Child )
					{
					// check for sibling nodes
					_ID = _Object.getAttribute('nodeSibling');
//alert('nodeSibling: ' + _ID);
					if( _ID )
						nodeDeactivate( _ID, false );
					};
				};
			};
		};

	function updateCheckbox( ID, Status )
		{
		if( document.getElementById )
			{
			var _Status = Status;

			if( typeof _Status != 'boolean' )
				{
				var _Object = document.getElementById(ID);
				var _Status = !_Object.checked;
				};

			if( _Status )
				nodeActivate(ID);
			else
				nodeDeactivate(ID, false);
			};
return;

		if( document.getElementById && document.getElementsByTagName )
			{
			var _Object = document.getElementById(ID);
			var _Status = _Object.checked;

			if( !_Object.disabled )
				{
				var nodeList = document.getElementsByTagName('input');
				var _ID = ID.split('|');
	
				for( var i = _ID.length; i > 1 ; i-- )
					{
					ID = ID.replace('|'+_ID[i],'');
	
					for( var ii = 0; ii < nodeList.length; ii++ )
						{
						var nodeName = nodeList.item(ii).getAttribute('name');
						var _nodeName = nodeName.split('|');
	
						nodeName = nodeName.replace('|'+_nodeName[_nodeName.length-1],'');
	
						if( ID == nodeName )
							if( _nodeName.length == _ID.length )
								_Status |= nodeList.item(ii).checked;
//							else if( _nodeName.length > _ID.length )
//								nodeList.item(ii).disabled = !_Object.checked;
						};

					if( document.getElementById(ID) )
						document.getElementById(ID).checked = _Status;
					};
				};
			};
		};
/* ###########################################
/list-features
########################################### */

/* ###########################################
show-hide-layers
###########################################

function showInfolayer(divID) {
hideselectboxes(0,0,0,100,100,100);
if (document.layers && document.layers[divID] != null)
document.layers[divID].visibility = 'visible';
else if (document.all)
document.all[divID].style.visibility = 'visible';
else if (document.getElementByID)
document.getElementById(''+divID+'').innerHTML=html
document.getElementById(''+divID+'').style.visibility = 'visible';
}

function hideInfolayer(divID) {
hideselectboxes(0,0,0,100,100,100);
if (document.layers && document.layers[divID] != null)
document.layers[divID].visibility = 'hidden';
else if (document.all)
document.all[divID].style.visibility = 'hidden'; 
else if (document.getElementById)
document.getElementById(''+divID+'').style.visibility = 'hidden';
}
 */
// ############ tooltips (div) ###############
info = null;

/*
	toggle hide/show div
	in:			poplayer				id of the layer (div id="XX") to show

*/
function showInfolayer(poplayer) {
	hideselectboxes(0,0,0,100,100,100);
	info = document.getElementById("divText");
	content = document.getElementById(poplayer);
	info.innerHTML=content.innerHTML; 
	info.style.display = "block";
}
function hideInfolayer() {
	hideselectboxes(0,0,0,100,100,100);
	info.style.display = "none";
}

document.onmousemove = updateinfolayer;

function updateinfolayer(e) {
	x = (document.all) ? window.event.x + document.body.scrollLeft : e.pageX;
	y = (document.all) ? window.event.y + document.body.scrollTop  : e.pageY;
	if (info != null) {
		info.style.left = (x + 20) + "px";
		info.style.top 	= (y - 5) + "px";
	}
}


function hideselectboxes(pm,x,y,w,h,l){
    var selx,sely,selw,selh,i
    if(!this.sel){
      this.sel=this.document.getElementsByTagName("SELECT")
		  this.sel.level=0
    }
    var sel=this.sel
    for(i=0;i<sel.length;i++){
			selx=0; sely=0; var selp;
			if(sel[i].style.visibility!="hidden")
			{
			sel[i].level=l; sel[i].style.visibility="hidden";
			}
			else if(sel[i].style.visibility=="hidden")
			{			
			sel[i].level=l; sel[i].style.visibility="visible";
			}
	  }
  }

/* ###########################################
/show-hide-layers
########################################### */





-->
