function html_entity_decode(str){
	/*Firefox (and IE if the string contains no elements surrounded by angle brackets )*/
try{
	var ta=document.createElement("textarea");
	ta.innerHTML=str;
	return ta.value;
}catch(e){};
	/*Internet Explorer*/
try{
	var d=document.createElement("div");
	d.innerHTML=str.replace(/</g,"&lt;").replace(/>/g,"&gt;");
	if(typeof d.innerText!="undefined")return d.innerText;/*Sadly this strips tags as well*/
	}catch(e){}
}
/**
*
*  UTF-8 data encode / decode
*  http://www.webtoolkit.info/
*
**/
var Utf8 = {
	// public method for url encoding
	encode : function (string) {
		string = string.replace(/\r\n/g,"\n");
		var utftext = "";
 
		for (var n = 0; n < string.length; n++) {
 
			var c = string.charCodeAt(n);
 
			if (c < 128) {
				utftext += String.fromCharCode(c);
			}
			else if((c > 127) && (c < 2048)) {
				utftext += String.fromCharCode((c >> 6) | 192);
				utftext += String.fromCharCode((c & 63) | 128);
			}
			else {
				utftext += String.fromCharCode((c >> 12) | 224);
				utftext += String.fromCharCode(((c >> 6) & 63) | 128);
				utftext += String.fromCharCode((c & 63) | 128);
			}
 
		}
 
		return utftext;
	},
 
	// public method for url decoding
	decode : function (utftext) {
		var string = "";
		var i = 0;
		var c = c1 = c2 = 0;
 
		while ( i < utftext.length ) {
 
			c = utftext.charCodeAt(i);
 
			if (c < 128) {
				string += String.fromCharCode(c);
				i++;
			}
			else if((c > 191) && (c < 224)) {
				c2 = utftext.charCodeAt(i+1);
				string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
				i += 2;
			}
			else {
				c2 = utftext.charCodeAt(i+1);
				c3 = utftext.charCodeAt(i+2);
				string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
				i += 3;
			} 
		}
		return string;
	} 
}

function eCalc() {
    alert("berechnen...");
}

function ePrint() {
    self.print();
}

function eDownload(url,file) {
	if( window.clipboardData && document.compatMode ){
  		x=window.XMLHttpRequest? 'IE7' : 'IE6';
	}else{
		x='FF'	
	}
	if(x=='IE7' || x=='FF'){
		document.location.href = url+'&amp;file='+file;		
	}else{
		//myWindow = window.open(url+'&amp;file='+filel+'&amp;browser=ie6', 'Download', "width=300,height=100,left=-100,-top=200");
		myWindow = window.open(url+'&amp;file='+file+'&amp;browser=ie6', 'Download', "width=300,height=200,left=-100,-top=200");
		myWindow.focus();
	}
}

var str = window.location.hostname;
if ( !jimAuld.utils.cookies.test() && !str.search("mbrprint") ) {
    alert ("Diese Anwendung muss dauerhaft Daten auf Ihren Rechner speichern (Cookie). Wenn Sie das nicht moechten, stellt Ihnen die Anwendung nur einen eingeschraenkten Funktionsumfang zur Verfuegung (Kein Drucken).");    
}

function delCookie(name) {
	jimAuld.utils.cookies.del(name);
}

function getCookie(name) {
    test = jimAuld.utils.cookies.get(name);
}

function storeValue(id,val) {
    document.getElementsByName(id)[0].value = val;
}

function addOption (selectId, txt, val, defaultSel,selected)	{
    var objOption = new Option(txt,val,defaultSel,selected);                        
    sBox = document.getElementById(selectId);
    sIndex = sBox.length;
    sBox.options.add(objOption);
    if (selected) {
        sBox.options[sIndex].selected=true;
    }

}

function visibility (selectId,cmd) {                    
    sBox = document.getElementById(selectId);
    sBox.style.visibility=cmd;
}

function ellipse (attr) {                    	
    var win = new Window("window_id", {	className: "dialog", 
													width:200, 
													height:150, 
													zIndex: 100,
													resizable: true, 
													title: "", 
													draggable:true, 
													wiredDrag: true
                                        }
                        ); 
    win.getContent().innerHTML= "<div style=\'padding:10px;\'>Achtung! "+ Utf8.encode(attr) + html_entity_decode(" Ihrer Auswahl auf den voreingestellten Wert zurueckgesetzt.</div>");
    win.setDestroyOnClose();                    	
    win.setStatusBar("Lafarge Systemrecherche");
    win.showCenter(false,300,200);                    
}

function circle (attr) {
    Dialog.confirm(	"<div class=\"myConfirm\"><p><span style=\"color:#00984A; font-weight:bold;\">ACHTUNG!</span></p><p>"+ Utf8.encode(attr) + " Ihrer Auswahl auf den voreingestellten Wert zurückgesetzt.</p></div>", 
					{	windowParameters: 	{	width:200,
												zIndex:100
											}, 
					    okLabel: "Ok",
					    buttonClass: "myButtonClass", 
					    id: "myDialogId",
					    cancel: function(win) {return true;},
					    ok: function(win) {return true;}
					}
                    ); 
}

function triangle (attr) {
    Dialog.confirm(	"<div class=\"myConfirm\"><p><span style=\"color:#00984A; font-weight:bold;\">ACHTUNG!</span></p><p>Bitte grenzen Sie Ihre Anfrage ein.</p></div>", 
					{	windowParameters: 	{	width:200,
												zIndex:100
											}, 
					    okLabel: "Ok",
					    buttonClass: "myButtonClass", 
					    id: "myDialogId",
					    cancel: function(win) {return true;},
					    ok: function(win) {return true;}
					}
                    ); 
}

function writeText() {
        var data = $('text').files.item(0).getAsBinary();
        //~ $('result').update(data.escapeHTML());
        //~ $('textsize').update($('text').files.item(0).fileSize);
	//alert($('text').files.item(0).fileName);
	idaxajax_upload($('text').files.item(0).fileName,data);
}


var url = "post.php";
var binary;
var filename;
var mytext;

function upload() {
	filename = document.getElementById('ida[up0_datei]').value;
	mytext = document.getElementById('ida[up0_datei]').value;
	alert(filename);
	filename  = "/home/chi/lafargesystemrecherche";
	//document.getElementById('Submit').disabled = true;

	// request local file read permission
	try {
		netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
	} catch (e) {
		alert("Permission to read file was denied.");
	}
	
	// open the local file
	var file = Components.classes["@mozilla.org/file/local;1"]
		.createInstance(Components.interfaces.nsILocalFile);
	file.initWithPath( filename );		
	stream = Components.classes["@mozilla.org/network/file-input-stream;1"]
		.createInstance(Components.interfaces.nsIFileInputStream);
	stream.init(file,	0x01, 00004, null);
	var bstream =  Components.classes["@mozilla.org/network/buffered-input-stream;1"]
		.getService();
	bstream.QueryInterface(Components.interfaces.nsIBufferedInputStream);
	bstream.init(stream, 1000);
	bstream.QueryInterface(Components.interfaces.nsIInputStream);
	binary = Components.classes["@mozilla.org/binaryinputstream;1"]
		.createInstance(Components.interfaces.nsIBinaryInputStream);
	binary.setInputStream (stream);
	alert("test");
	
		// start AJAX file upload in 1 second
	window.setTimeout("ajax_upload()", 1000);
}

function ajax_upload() {
		// request more permissions
	try {
		netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
	} catch (e) {
		alert("Permission to read file was denied.");
	}
	idaxajax_upload(mytext,binary.readBytes(binary.available()));
}

var cd = {
	codes : Array,
	init : function() {
		cd.codes = document.getElementsByClassName('code','contentBody');
		cd.attach();
	},
	attach : function() {
		var i;
		for ( i=0;i<cd.codes.length;i++ ) {
			Event.observe(cd.codes[i],'click',cd.collapse,false);
			//Element.cleanWhitespace(cd.codes[i].parentNode);
		}
	},
	getEventSrc : function (e) {
		if (!e) e = window.event;
		if (e.originalTarget)
			return e.originalTarget;
		else if (e.srcElement)
		return e.srcElement;
	},
	collapse : function(e) {
		var el = cd.getEventSrc(e).nextSibling;
		if ( Element.hasClassName(el,'closed') ) {
			new Effect.Parallel(
				[
					new Effect.SlideDown(el,{sync:true}),
					new Effect.Appear(el,{sync:true})
				],
				{
					duration:1.0,
					fps:40
				}
			);
			Element.removeClassName(el,'closed');
		} else {
			new Effect.Parallel(
				[
					new Effect.SlideUp(el,{sync:true}),
					new Effect.Fade(el,{sync:true})
				],
				{
					duration:1.0,
					fps:40
				}
			);
			Element.addClassName(el,'closed')
		}
	}
};


function checkUrl() {
	idacheckUrl(document.location.hash);
}

var aktiv;
function updateUrl(url) {
	//~ alert("uu"+aktiv);
	window.clearTimeout(aktiv);
	var myForm1 = document.getElementById("xajax_form");
	if (window.location.hash=='') {
		var i = url.indexOf("ice!");
		var neu = '#td0/' + url.substr(i);
	} else {
		var neu = window.location.hash ;
		var i = neu.indexOf("ice!");
		if (i==1) {
			neu = url;
		} else if (i==-1 && neu.length > 1) {
			neu += '/' + url;
		} else {
			neu = neu.substr(0,i) + url;
		}
		//tmp = url.indexOf("ice!");
		//neu = neu.substr(0,i)+ url.substr(0,tmp);
	}
	myForm1.elements["ida[packer]"].value = neu;
	//~ alert(myForm1.elements["ida[packer]"].value);
	myForm1.action=myForm1.action.replace(/VALUE/,neu);
	window.location.hash = neu;
	aktiv = setTimeout("observe_url()", 1000);
}

function call(name) {
	//~ window.clearTimeout(aktiv);
	form = xajax.getFormValues('xajax_form','0',name);
	pack = xajax.getFormValues('xajax_form','0','ida[packer]');
	idapFD(form,pack);
}
function call_print(name) {
	form = xajax.getFormValues('xajax_form','0',name);
	idapFD(form);
}
function fill_print() {

	window.document.getElementsByName("ida[zz0_gfa]")[0].value = window.opener.document.getElementsByName("ida[zz0_gfa]")[0].value;

	var OSName="Unknown OS";
	if (navigator.appVersion.indexOf("Win")!=-1) OSName="Windows";
	if (navigator.appVersion.indexOf("Mac")!=-1) OSName="MacOS";
	if (navigator.appVersion.indexOf("X11")!=-1) OSName="UNIX";
	if (navigator.appVersion.indexOf("Linux")!=-1) OSName="Linux"

	//alert ( OSName );

	var BrowserName="Unknown";
	if ( ( OSName == "Linux" || OSName == "UNIX" ) && window.document.childNodes[1].childNodes[1] && !window.document.childNodes[1].childNodes[2] && !window.document.childNodes[1].childNodes[3] ) {
		BrowserName="Firefox";
	} else if ( ( OSName == "Linux" || OSName == "UNIX" ) && window.document.childNodes[1].childNodes[3] ) {
		BrowserName="Chrome";
	} else if ( OSName == "Windows" && window.document.childNodes[1].childNodes[1] && !window.document.childNodes[1].childNodes[2] ) {

		cleanWhitespace ( window.document.getElementById("xajax_form") );
		
		if ( window.document.childNodes[1].childNodes[1].childNodes[1]  ) {
                        BrowserName="IE";
                } else if ( window.document.getElementById("xajax_form").childNodes[15].childNodes[0] ) {
			BrowserName="IE";
		}

	} else if ( OSName == "Windows" && window.document.childNodes[1].childNodes[2] ) {
		BrowserName="Chrome";
	} else if ( OSName == "MacOS" ) {
		BrowserName="Firefox";
	}
	
	//alert ( BrowserName );

		// chrome ( linux )
	if ( ( OSName == "Linux" || OSName == "UNIX" ) && BrowserName == "Chrome"  ) {
		
		window.document.childNodes[1].childNodes[3].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[0].childNodes[2].innerHTML = window.opener.document.getElementsByName("ida[zz0_bvh]")[0].value;
                window.document.childNodes[1].childNodes[3].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[2].childNodes[2].innerHTML = window.opener.document.getElementsByName("ida[zz0_unt]")[0].value;
                window.document.childNodes[1].childNodes[3].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[4].childNodes[2].innerHTML= window.opener.document.getElementsByName("ida[zz0_sth]")[0].value;
                window.document.childNodes[1].childNodes[3].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[6].childNodes[2].innerHTML = window.opener.document.getElementsByName("ida[zz0_pls]")[0].value;

	} else if ( OSName == "Windows" && BrowserName == "Chrome" ) {

		 window.document.childNodes[1].childNodes[2].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[0].childNodes[2].innerHTML = window.opener.document.getElementsByName("ida[zz0_bvh]")[0].value;
                window.document.childNodes[1].childNodes[2].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[2].childNodes[2].innerHTML = window.opener.document.getElementsByName("ida[zz0_unt]")[0].value;
                window.document.childNodes[1].childNodes[2].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[4].childNodes[2].innerHTML= window.opener.document.getElementsByName("ida[zz0_sth]")[0].value;
                window.document.childNodes[1].childNodes[2].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes
[28].childNodes[1].childNodes[6].childNodes[2].innerHTML = window.opener.document.getElementsByName("ida[zz0_pls]")[0].value;

	
	} else if ( ( OSName == "Linux" || OSName == "UNIX" || OSName == "Firefox" ) && BrowserName == "Firefox" ) {
		cleanWhitespace ( window.document.getElementById("xajax_form") );
		 window.document.childNodes[1].childNodes[1].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[0].childNodes[2].innerHTML = window.opener.document.getElementsByName("ida[zz0_bvh]")[0].value;
                window.document.childNodes[1].childNodes[1].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[2].childNodes[2].innerHTML = window.opener.document.getElementsByName("ida[zz0_unt]")[0].value;
                window.document.childNodes[1].childNodes[1].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[4].childNodes[2].innerHTML= window.opener.document.getElementsByName("ida[zz0_sth]")[0].value;
                window.document.childNodes[1].childNodes[1].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[6].childNodes[2].innerHTML = window.opener.document.getElementsByName("ida[zz0_pls]")[0].value;

	} else if ( OSName == "Windows" && BrowserName == "Firefox" ) {

		window.document.getElementById("xajax_form").childNodes[15].childNodes[0].childNodes[0].childNodes[1].innerHTML = window.opener.document.getElementsByName("ida[zz0_bvh]")[0].value;
                window.document.getElementById("xajax_form").childNodes[15].childNodes[0].childNodes[1].childNodes[1].innerHTML = window.opener.document.getElementsByName("ida[zz0_unt]")[0].value;
                window.document.getElementById("xajax_form").childNodes[15].childNodes[0].childNodes[2].childNodes[1].innerHTML = window.opener.document.getElementsByName("ida[zz0_sth]")[0].value;
                window.document.getElementById("xajax_form").childNodes[15].childNodes[0].childNodes[3].childNodes[1].innerHTML = window.opener.document.getElementsByName("ida[zz0_pls]")[0].value;

	} else if ( OSName == "Windows" && BrowserName == "IE" ) {  

		window.document.childNodes[1].childNodes[1].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[0].childNodes[2].innerHTML = window.opener.document.getElementsByName("ida[zz0_bvh]")[0].value;
                window.document.childNodes[1].childNodes[1].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[2].childNodes[2].innerHTML = window.opener.document.getElementsByName("ida[zz0_unt]")[0].value;
                window.document.childNodes[1].childNodes[1].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[4].childNodes[2].innerHTML= window.opener.document.getElementsByName("ida[zz0_sth]")[0].value;
                window.document.childNodes[1].childNodes[1].childNodes[1].childNodes[0].childNodes[1].childNodes[0].childNodes[15].childNodes[2].childNodes[28].childNodes[1].childNodes[6].childNodes[2].innerHTML = window.opener.document.getElementsByName("ida[zz0_pls]")[0].value;
	
	} else if ( ( OSName == "Windows" || OSName == "MacOS" ) && ( BrowserName == "Safari" || BrowserName == "Firefox" ) ) {

		 window.document.getElementById("xajax_form").childNodes[15].childNodes[0].childNodes[0].childNodes[1].innerHTML = window.opener.document.getElementsByName("ida[zz0_bvh]")[0].value;
                window.document.getElementById("xajax_form").childNodes[15].childNodes[0].childNodes[1].childNodes[1].innerHTML = window.opener.document.getElementsByName("ida[z0_unt]")[0].value;
                window.document.getElementById("xajax_form").childNodes[15].childNodes[0].childNodes[2].childNodes[1].innerHTML = window.opener.document.getElementsByName("ida[z0_sth]")[0].value;
                window.document.getElementById("xajax_form").childNodes[15].childNodes[0].childNodes[3].childNodes[1].innerHTML = window.opener.document.getElementsByName("ida[z0_pls]")[0].value;

	}
}

var notWhitespace = /\S/;
function cleanWhitespace(node) {
  for (var x = 0; x < node.childNodes.length; x++) {
    var childNode = node.childNodes[x];
    if ( childNode.innerHTML == "&nbsp;" && childNode.className == "inside" ) {
	childNode.innerHTML = "<font color=\"white\">-</font>";
    }
    if ((childNode.nodeType == 3)&&(!notWhitespace.test(childNode.nodeValue))) {
// that is, if it's a whitespace text node
      node.removeChild(node.childNodes[x]);
      x--;
    }
    if (childNode.nodeType == 1) {
// elements can have text child nodes of their own
      cleanWhitespace(childNode);
    }
  }
}
function observe_url() {
	var string = location.href;
	var i = string.indexOf("#");
        if (i >= 0) {
		var neu = string.substr(i+1);
		var myForm1 = document.getElementById("xajax_form");
		var tmp = myForm1.elements["ida[packer]"].value;
		var form = tmp.substr(tmp.indexOf("#")+1);
		var i=neu.indexOf("ice!");
		if (i == -1) {	
			history.back(-2);
		} else if (neu != form && form != null && form != '') {
			updateUrl(neu.substr(i));
			idacheckUrl(neu);
		} 
	} 
	aktiv = setTimeout("observe_url()", 200);
}

function initForm() {
	idapFD(xajax.getFormValues('xajax_form'));
}


function appear() {
	Effect.Appear('xajax_form');
	Effect.Appear('xajax_form', { duration: 0.7 });
}

function fadeout() {
	Effect.Fade('xajax_form');
	Effect.Fade('xajax_form', { duration: 0.7 });
}

//~ window.addEventListener( 'pageshow', function(e){ alert('pageshow fired'); }, false ); 
//~ window.addEventListener( 'onunload', function(e){ "" }, false ); 

