lastId = false;
lastTmpId = false; 
var ns4 = (document.layers);
var ie4 = (document.all && !document.getElementById);
var ie5 = (document.all && document.getElementById);
var ns6 = (!document.all && document.getElementById);
last = new Array(new Array);
// wenn typeId gesetzt ist, werden alle anderen Felder von dem selben Type geschlossen
function multiShow(id,layersArray,typeId) {
		
		if (last[typeId]) multiHide(typeId);		
		for (z in layersArray) {
				name = layersArray[z]+"_"+id;
				show (name); 
				if (!last[typeId]) last[typeId] = new Array();
				last[typeId][name] = name ;
				 
		}
}

function multiHide(typeId) { 	
	if (last[typeId]) {
  		for (z in last[typeId]) {
  				hide (last[typeId][z]); 
  				
  		}
	}		
}
function showHide (id) {
	var ele,disp,panel,nr,bereich;
	ele = getLayer(id);
	panel =  getLayer("admin_panel");
	for (nr in panel.childNodes) {
		bereich = panel.childNodes[nr];
		if (bereich.tagName =="DIV" && (bereich.getAttribute("id") != id)) {
			bereich.style.display="none";
		}
	}
	if (ele.style.display == "block") {
		ele.style.display = "none";
	} else {
		ele.style.display = "block";	
	}	
}
function switchShow (id) {
	var ele,disp;
	ele = getLayer(id);
	img = getLayer("img_"+id);
	if (ele.style.display == "none") {
		ele.style.display = "block";
		img.src="/images/icons/folder_open.png";	
	} else {
		ele.style.display = "none";	
		img.src="/images/icons/folder_closed.png";
		
	}	
}
function getLayer (id) {
	var ele;
	if(ns4)	ele = document.layers[id] ;
	else if(ie4) ele =document.all[id] ;
	if(ie5 || ns6) ele =document.getElementById(id) ;	
	return ele; 
}
// show
function show (id,typeId) {
	if (typeId) {			 
		if (last[typeId]) multiHide (typeId);
	}	
	ele = getLayer(id);
	ele.display = "inline"; 
	if (!last[typeId]) last[typeId] = new Array();
	last[typeId]['default'] = id ;
}
function setUri (collection,doc) {
	getLayer("current_collection_hidden").value = collection;
	getLayer("current_collection").value = collection;
	getLayer("current_document").value = doc;
	getLayer("dialog_action").style.display = "block";
}

// hide
function hide (id) {
	if (id.currentTarget) {
		ele = id.currentTarget.parentNode;
	} else 	ele = getLayer(id);
	ele.style.display = "none"; 
}
function hideParent (id) {
	if (id.currentTarget) {
		ele = id.currentTarget.parentNode.parentNode;
	} else 	ele = getLayer(id);
	ele.style.display = "none"; 
}
function switchShowExtended (ele) {
				 
		this.getInput = function (ele) {
				ele = ele.parentNode;
				if (!ele || ele.toLowerCase == "html") return false ;
				if (ele.xtype=="element") {
					 this.baseEle = ele;
					 this.inp= ele.firstChild;
					 return this.inp;
				}
				this.getInput(ele); 
		}		
		this.setVisibility = function () {
			this.getEle(this.baseEle); 
			if (this.showHideEle.style.display=="none") {				 
				 this.showHideEle.style.display = this.showHideEle.defaultDisplay; 
				 this.inp.value = "true";		
			} else {
				 this.showHideEle.defaultDisplay = this.showHideEle.style.display;
				 this.showHideEle.style.display="none"
 				 this.inp.value = "false";
			}			
				 switchLayer(this.baseEle);				 						
		}	
		this.getEle = function (ele) {
				var z,ele ;
				if (!ele.childNodes) return false;
				for (z=0; z < ele.childNodes.length; z++ ) {
						newEle =  ele.childNodes[z];
						if (newEle.xtype == "showHide") {
							 this.showHideEle = newEle; 
							 return newEle;
						} else this.getEle(newEle) ; 
				}
		
		}
		this.getInput (ele); 
		this.setVisibility();
}
function switchLayer (baseEle) {
		
		this.doSwitch = function (ele){
				var child1,child2;
  			if (ele.xtype == "switchLayer") {
  					child1 = ele.firstChild;
   					child2 = ele.lastChild;				
      			if (child1.style.display=="none") {				 
      				 child1.style.display = "inline";
  						 child2.style.display = "none"; 
      				 
      			} else {
      				 child2.style.display = "inline";
  						 child1.style.display = "none"; 		
      			}
				return true;	
  			} else return false; 
		}

		this.search = function(ele) {		
			var child,z;					
  		if (!ele.childNodes) return false;
  		for (z=0; z < ele.childNodes.length; z++ ) {
  				child = ele.childNodes[z];
					if (child.xtype=="element") return false; 
					if (!this.doSwitch(child))this.search (child);
  		}
		}
		this.search (baseEle);		
		
}
function var_dump(args) {
	if (!args) return 
	document.write("<div style='padding:5px;border:1px solid gray'>");
	for (z in args) {
		arg = args[z]
		document.write(z+": "+arg+"<br></br>")
		//var_dump(arg)
	}

	document.write("</div>");
}
function LaunchPopup(url,params,sx,sy,x,y)  {	
win = window.open(url, "popup", "height="+sy+",width="+sx+",top="+y+",left="+x+params);
win.resizeTo(sx,sy);
win.moveTo(x,y);
win.focus();
}