//	dynamic info panel. uses XMLHTTPREQUEST or IFRAME to get information from remote page
//	requires: dataimport.js, dhtml.js, dhtmlPanel.css
//	cr 09.08.2005 mark@mountain.ch

var text_closeLink,path_source;

//if(text_closeLink==""){text_closeLink="Schliessen";}
//if(path_source==""){text_closeLink="Schliessen";}

var oPanel, panelLinkAct, debugMode=true;

doPanel=function(o){
	//	called from link
	var oPanel;
	if(!document.getElementById){return true}
	oData=new HTMLHttpRequest("oData",dataHandler);	//	initialize data transport object
	if(oData){
		var url=o.href+(o.href.charAt(o.href.length-1)!="/"?"/":"")+"template/textfield/";
		myData=oData.load(url);		//	get content over data transport object
		if(myData){
			panelLinkOld=panelLinkAct;
			if(panelLinkOld){panelLinkOld.className="";}
			panelClass="dhtmlPanel "+o.className;
			panelID=o.className;
			panelLinkAct=o.parentNode;
			panelLinkAct.className="act";
			outLinks();
			o.blur();
		}

		return myData?false:true;	//	if panel doesn't work then return true, so that the normal link works.
	}
}

dataHandler=function(obj){
	//	what to do with the data once we have it
	//	only run on successful data retrieval
	if(oPanel){oPanel.clear()}
	else{oPanel=new dhtmlPanel();}
	oPanel.className=panelClass;
	oPanel.id=panelID;
	oPanel.show();
	oPanel.contentBox.innerHTML=obj.innerHTML?obj.innerHTML:obj.responseText;
	outLinks();
	return false;
}

dhtmlPanel=function(id){with(this){
	//	create HTML panel, into which the content will be loaded
	container=libDhtml.domElementPlus("DIV",document.getElementsByTagName("BODY")[0]);
	container.contentBox=libDhtml.domElementPlus("DIV",container);
	if(id){container.id=id;}
	container.footer=libDhtml.domElementPlus("P",container);
	container.footer.closelink=libDhtml.domElementPlus("A",container.footer);
	container.footer.closelink.style.cursor="pointer";
	//container.footer.closelink.style.cursor="hand";	//	ie/win, ignored by other browsers
	var tmp_linktext=document.createTextNode("Schliessen");
	container.footer.closelink.appendChild(tmp_linktext);
	container.footer.closelink.eventlistenerAdd("click",function(){container.hide();panelLinkAct.className="";panelLinkAct=null;})

	container.clear=function(){with(this){
		while(contentBox.hasChildNodes()){
			contentBox.removeChild(contentBox.firstChild);
		}
	}}
	container.show=function(){with(this){
		style.display="block";
	}}
	container.hide=function(){with(this){
		style.display="none";
	}}
	return container;
}}
