/**
 * Heizkonzept Extended Version
 * @author Horst Mürdter
 * @version 0.01
 * Copyright 2009 by CrossData-Tools
 *
 */

/**
 *
 * @access public
 * @return void
 **/
function checkId(){
	if (document.getElementById("lid")) {
		getConfiguration(document.getElementById("lid").value);
	}
}

/**
 *
 * @access public
 * @return void
 **/
function getConfiguration(id){
	var tab = tabbar.getActiveTab();
	if(tab != "extended_tab") {
		tabbar.setTabActive("extended_tab");
	}

	if (typeof resultbar_ext == "undefined") {
		window.setTimeout("getConfiguration(\"" + id + "\")", 1000);
		return;
	}

	var tab = resultbar_ext.getActiveTab();
	if (tab != "tab_vergleich_ext") {
		resultbar_ext.setTabActive("tab_vergleich_ext");
		window.setTimeout("getConfiguration(\"" + id + "\")", 1000);
		return;
	}

	if (typeof vergleichsgrid == "undefined") {
		createVergleichsLayout();
		window.setTimeout("getConfiguration(\"" + id + "\")", 1000);
		return;
	}
	dhtmlxAjax.post("php/heizkonzept_konfi_ext.php", "a=load&id=" + id, loadConfiguration);
}

/**
 *
 * @access public
 * @return void
 **/
function loadConfiguration(loader){
	if (loader.xmlDoc.responseXML != null) {
		vergleichsgrid.clearAll();
	   	var infoStr = loader.xmlDoc.responseXML.getElementsByTagName("info")[0].firstChild.nodeValue;
		var infos = eval("(" + infoStr + ")");
		for (var a=0; a<infos.length; a++) {
			var info = infos[a].info;
			var sysid = info["sysid"];
			info = JSON.stringify(info);
			var rows = "<span onClick='removeRow(\"" + sysid + "\")' class='plink'>Enfernen</span>" + infos[a]["row"];
			vergleichsgrid.addRow(sysid, rows);
			vergleichsgrid.setUserData(sysid, "info", info);
		}
	} else
		alert("Fehler beim Laden der Systemdaten");
}

/**
 *
 * @access public
 * @return void
 **/
function sendSaveList(){
	//alert("Noch in Bearbeitung");
	if (!(checkEMail(document.getElementById("saveEMail_ext").value))) {
		alert("Bitte geben Sie eine gültige E-Mailadresse ein!");
		document.getElementById("saveEMail_ext").focus();
		return;
	}
	if (document.getElementById("saveName_ext").value.length < 5) {
		alert("Bitte geben Sie Ihren Namen ein!");
		document.getElementById("saveName_ext").focus();
		return;
	}
	if (document.getElementById("savePLZ_ext").value.length < 5) {
		alert("Bitte geben Sie Ihre PLZ ein!");
		document.getElementById("savePLZ_ext").focus();
		return;
	}
	var m=document.getElementById("saveEMail_ext").value;
	var n=document.getElementById("saveName_ext").value;
	var p=document.getElementById("savePLZ_ext").value;
	var info = getListInfo();
	document.getElementById("saveListDlg").innerHTML = '<div class="bottomline" align="center">Bitte warten,<br> die Daten werden verarbeitet ...</div>';
	dhtmlxAjax.post("php/heizkonzept_konfi_ext.php", "a=save&m="+m+"&n="+n+"&p="+p +"&info=" + info, listSaved);
}

/**
 *
 * @access public
 * @return void
 **/
function listSaved(loader){
	document.getElementById("saveListDlg").innerHTML = '<div class="bottomline" align="center">Die Daten wurden gespeichert!<br>In wenigen Momenten werden Sie ein E-Mail erhalten!</div><div><a href="javascript:savefensterExt.close();"><img src="images/group1.gif" alt="" border="0" width="13" height="10">&nbsp;&nbsp;Fenster schließen</a>';
}


/**
 *
 * @access public
 * @return void
 **/
function getListInfo(){
	var info = null;
	var rowid =0;
	if ((resultbar_ext.getActiveTab() == "tab_vergleich_ext") &&  (typeof vergleichsgrid != "undefined")) {
		info = "[";
		var rowNums = vergleichsgrid.getRowsNum();
		var colNums = vergleichsgrid.getColumnCount()
		var params = new Array();
		for (var i=0; i<rowNums; i++){
			for (var j=1; j<colNums; j++){
				params[j] = vergleichsgrid.cellByIndex(i,j).getValue();
			}
			var paramStr = params.join(",")
      		rowId = vergleichsgrid.getRowId(i);
			info = info + '{"row":"'+ paramStr + '","info":' + vergleichsgrid.getUserData(rowId, "info") + "}";
			if (i+1 < rowNums) {
				info = info + ",";
			}
		}

		info = info + "]";
	}
	return info;
}

function saveMyList(){
	var info = getListInfo();
	if ((info == null) || (info == "[]")) {
		alert("Ihre Vergleichsliste ist noch leer. Wechseln Sie auf den Reiter 'Aktuelle Konfiguration' und übernehmen Sie die gewünschten Systeme in die Vergleichsliste.");
		return;
	}
	var pos = document.getElementById("saveList").getBoundingClientRect();
	var x = pos["right"];
	var y = pos["top"] + getYScrollPos()-245;

	if (typeof dhxWinsExt == "undefined")
		dhxWinsExt= new dhtmlXWindows();
	dhxWinsExt.setImagePath("js/dhtmlx/dhtmlx_pro_full/imgs/")
	dhxWinsExt.setSkin("aqua_orange");
    if (dhxWinsExt.isWindow("savewindowExt") == true)
		savefensterExt.close();
	savefensterExt = dhxWinsExt.createWindow("savewindowExt", x, y, 335, 245);
	savefensterExt.setText("Vergleich speichern");
	savefensterExt.button("minmax1").hide();
	savefensterExt.attachHTMLString('<div id="saveListDlg"><div class="bottomline">Bitte geben Sie Ihre Daten ein. Sie bekommen umgehend ein E-Mail mit einem Link, damit Sie Ihre Daten jederzeit wieder abrufen können.</div><table width="100%" id="absenderParameter" border="0" cellspacing="0" cellpadding="0"><tr><td>Name:*<br /><input type="text" name="saveName_ext" id="saveName_ext" /><br />E-Mail: *<br /><input type="text" name="saveEMail_ext" id="saveEMail_ext" /><br />PLZ:<br /><input type="text" name="savePlz_ext" id="savePLZ_ext" /></td></tr></table><p style="line-height:20px"><a href="javascript:sendSaveList()"><img src="images/group1.gif" alt="" border="0" width="13" height="10">&nbsp;&nbsp;Daten speichern</a><br /><a href="javascript:savefensterExt.close();"><img src="images/group1.gif" alt="" border="0" width="13" height="10">&nbsp;&nbsp;Abbrechen</a></p></div>');
}


function changeBeratungExt(cb) {
	var cb = document.getElementById("beratungExt").checked;
	document.getElementById("apblock_ext").style.display = (cb == true) ? "block" : "none";
	var delta = (cb == true) ? 120 : -120;
	var p = dhxWinsExt.window("pdfwindowExt").getPosition();
	var d = dhxWinsExt.window("pdfwindowExt").getDimension();
	dhxWinsExt.window("pdfwindowExt").setPosition(p[0], p[1] - delta);
	dhxWinsExt.window("pdfwindowExt").setDimension(null, d[1] + delta);
}

function checkAbsenderExt () {
	if (document.getElementById("beratungExt").checked) {
		if (document.getElementById("absenderName_ext").value.length < 5) {
			alert("Geben Sie bitte zuerst Ihren Namen ein, oder deaktivieren Sie die Beratung!");
			document.getElementById("absenderName_ext").focus();
			return;
		}
		if (!(checkEMail(document.getElementById("absenderEMail_ext").value))) {
			alert("Geben Sie bitte eine gültige E-Mailadresse ein, oder deaktivieren Sie die Beratung!");
			document.getElementById("absenderEMail_ext").focus();
			return;
		}
	}
	document.pdferzeugenExt.submit();
	pdffensterExt.close();
}

function getPDFExt(){
	var k = document.getElementById("klimazone_ext").value;
	if (k == "0") {
		alert("Bitte geben Sie die PLZ für das Bauvorhaben ein!");
		document.getElementById("plz_ext").focus();
		return;
	}
	var info = null;
	var rowid =0;
	if ((resultbar_ext.getActiveTab() == "tab_vergleich_ext") &&  (typeof vergleichsgrid != "undefined")) {
		info = "[";
		var rowNums = vergleichsgrid.getRowsNum();
		for (var i=0; i<rowNums; i++){
      		rowId = vergleichsgrid.getRowId(i);
			info = info + vergleichsgrid.getUserData(rowId, "info");
			if (i+1 < rowNums) {
				info = info + ",";
			}
		}

		info = info + "]";
	}
	if (resultbar_ext.getActiveTab() == "tab_konfiguration_ext") {
		rowId = systemgrid.getSelectedRowId();
		if (rowId != null) {
			info = "[";
			info = info + systemgrid.getUserData(rowId, "info");
			info = info + "]";
		}
	}

	if ((info == null) || (info == "[]")) {
		if (resultbar_ext.getActiveTab() == "tab_konfiguration_ext") {
			alert("Selektieren Sie bitte zuerst rechts das gewünschte System!");
		} else {
			alert("Ihre Vergleichsliste ist noch leer. Wechseln Sie auf den Reiter 'Aktuelle Konfiguration' und übernehmen Sie die gewünschten Systeme in die Vergleichsliste.");
		}
		return;
	}
	var pos = document.getElementById("imgPDF_ext").getBoundingClientRect();
	var x = pos["right"];
	var y = pos["top"] + getYScrollPos()-130;

	if (typeof dhxWinsExt == "undefined")
		dhxWinsExt= new dhtmlXWindows();
	dhxWinsExt.setImagePath("js/dhtmlx/dhtmlx_pro_full/imgs/")
	dhxWinsExt.setSkin("aqua_orange");
    if (dhxWinsExt.isWindow("pdfwindowExt") == true)
		pdffensterExt.close();
	pdffensterExt = dhxWinsExt.createWindow("pdfwindowExt", x, y, 335, 140);
	pdffensterExt.setText("Ergebnis als PDF");
	pdffensterExt.button("minmax1").hide();
	if (mySkin == "ips/") {
		pdffensterExt.attachHTMLString('<form id="pdferzeugenExt" target="_blank" method="post" action="php/getpdfext.php" name="pdferzeugenExt" style="padding:10px; font-size:11px; line-height:20px"><input type="hidden" name="skin" id="skin" value="' + mySkin + '"/><table class="berattable" border="0" cellspacing="0" cellpadding="0"><tr><td valign="top"><input type="checkbox" name="beratungExt" value="ja" id="beratungExt" onClick="changeBeratungExt()"/></td><td valign="top">Ja, ich will weitere Unterstützung und Beratungsleistungen von der IPS zu dieser Heizkostenberechnung: </td></tr></table><div id="apblock_ext"><table width="100%" id="absenderParameter" border="0" cellspacing="0" cellpadding="0"><tr><td id="apleft"><input type="checkbox" name="checkbox1Ext" value="Foerdermittel" id="checkbox1" /><label for="checkbox1">Fördermittel</label><br /><input type="checkbox" name="checkbox2Ext" value="Technik" id="checkbox2" /><label for="checkbox2">Technik</label><br /><input type="checkbox" name="checkbox3Ext" value="Nachruestung" id="checkbox3" /><label for="checkbox3">Nachrüstung</label><br /><input type="checkbox" name="checkbox4Ext" value="Kesseltausch" id="checkbox4" /><label for="checkbox4">Kesseltausch</label><br /><input type="checkbox" name="checkbox5Ext" value="Sonstiges" id="checkbox5" /><input type="text" name="sonstigesExt" value="Sonstiges" /></td><td id="apright">Name:*<br /><input type="text" name="absenderName_ext" id="absenderName_ext" /><br />E-Mail: *<br /><input type="text" name="absenderEMail_ext" id="absenderEMail_ext" /><br />Telefon:<br /><input type="text" name="absenderTelefon_ext" id="absenderTelefon_ext" /></td></tr></table></div><p><a href="javascript:checkAbsenderExt()"><img src="images/group1.gif" alt="" border="0" width="13" height="10">&nbsp;&nbsp;PDF erzeugen</a><br /><a href="javascript:pdffensterExt.close();"><img src="images/group1.gif" alt="" border="0" width="13" height="10">&nbsp;&nbsp;Abbrechen</a></p><a><input type="hidden" name="pdfdbidExt" id="pdfdbidExt" value="0"><input type="hidden" name="info" id="info" value=\'' + info +'\'></form>');
	} else {
		pdffensterExt.attachHTMLString('<form id="pdferzeugenExt" target="_blank" method="post" action="php/getpdfext.php" name="pdferzeugenExt" style="padding:10px; font-size:11px; line-height:20px"><input type="hidden" name="skin" id="skin" value="' + mySkin + '"/><table class="berattable" border="0" cellspacing="0" cellpadding="0"><tr><td valign="top"><input type="checkbox" name="beratungExt" value="ja" id="beratungExt" onClick="changeBeratungExt()"/></td><td valign="top">Ja, ich will weitere Unterstützung und Beratungsleistungen von Schiedel zu dieser Heizkostenberechnung: </td></tr></table><div id="apblock_ext"><table width="100%" id="absenderParameter" border="0" cellspacing="0" cellpadding="0"><tr><td id="apleft"><input type="checkbox" name="checkbox1Ext" value="Foerdermittel" id="checkbox1" /><label for="checkbox1">Fördermittel</label><br /><input type="checkbox" name="checkbox2Ext" value="Technik" id="checkbox2" /><label for="checkbox2">Technik</label><br /><input type="checkbox" name="checkbox3Ext" value="Nachruestung" id="checkbox3" /><label for="checkbox3">Nachrüstung</label><br /><input type="checkbox" name="checkbox4Ext" value="Kesseltausch" id="checkbox4" /><label for="checkbox4">Kesseltausch</label><br /><input type="checkbox" name="checkbox5Ext" value="Sonstiges" id="checkbox5" /><input type="text" name="sonstigesExt" value="Sonstiges" /></td><td id="apright">Name:*<br /><input type="text" name="absenderName_ext" id="absenderName_ext" /><br />E-Mail: *<br /><input type="text" name="absenderEMail_ext" id="absenderEMail_ext" /><br />Telefon:<br /><input type="text" name="absenderTelefon_ext" id="absenderTelefon_ext" /></td></tr></table></div><p><a href="javascript:checkAbsenderExt()"><img src="images/group1.gif" alt="" border="0" width="13" height="10">&nbsp;&nbsp;PDF erzeugen</a><br /><a href="javascript:pdffensterExt.close();"><img src="images/group1.gif" alt="" border="0" width="13" height="10">&nbsp;&nbsp;Abbrechen</a></p><a><input type="hidden" name="pdfdbidExt" id="pdfdbidExt" value="0"><input type="hidden" name="info" id="info" value=\'' + info +'\'></form>');
	}
}

function pdfExtfertig(loader) {
	var dbid = stripslashes(loader.xmlDoc.responseXML.getElementsByTagName("diagrammID")[0].firstChild.nodeValue);
	document.getElementById("pdfdbidExt").value = dbid;

}

/**
 *
 * @access public
 * @return void
 **/
function setValue(id, value){
	var obj = document.getElementById(id);
	var displayMode = "";
	if (value == undefined){
		obj.disabled = true;
		displayMode = "none";
	} else {
		obj.value = value;
		obj.disabled = false;
	}

	do {
		obj = obj.parentNode;
	} while ((obj != "null") && (obj.tagName.toUpperCase() != "TABLE"));

	if (obj != null) {
		obj.style.display = displayMode;
	}
}


/**
 *
 * @access public
 * @return void
 **/
function updateWerte(infoStr){
	if (infoStr == "") return;
	var info = eval("(" + infoStr + ")");
	setValue("plz_ext", info["plz_ext"]);
	setValue("klimazone_ext", info["klimazone_ext"]);
	setValue("wohnflaeche_ext", info["wohnflaeche_ext"]);
	setValue("personen_ext", info["personen_ext"]);
	setValue("heizverhalten_ext", info["heizverhalten_ext"]);
	setValue("geschosse_ext", info["geschosse_ext"]);
	setValue("waermeabgabe_ext", info["waermeabgabe_ext"]);
	setValue("energietraeger_hauptheizung_ext", info["energietraeger_hauptheizung_ext"]);
	setValue("aufstellort_ext", info["aufstellort_ext"]);
	setValue("ofentyp_ext", info["ofentyp_ext"]);
	setValue("zusatzheizung_ext", info["zusatzheizung_ext"]);
	setValue("typzusatzheizung_ext", info["typzusatzheizung_ext"]);
	setValue("dachausrichtung_ext", info["dachausrichtung_ext"]);
	setValue("dachneigung_ext", info["dachneigung_ext"]);
	setValue("waermeabgabe_ofen_ext", info["waermeabgabe_ofen_ext"]);
	setValue("brennstoff_ofen_ext", info["brennstoff_ofen_ext"]);
	setValue("heizgewohnheit_ext", info["heizgewohnheit_ext"]);
	document.getElementById("klimazonetext_ext").innerHTML = info["ort"];
}


function getKlimaZoneExt(wert){
	hideResultExt();
	if (wert.length < 5) {
		document.getElementById("klimazonetext_ext").innerHTML = "";
		document.getElementById("klimazone_ext").value = "0";
		return;
	}
    dhtmlxAjax.post("php/heizkonzept_konfi_ext.php", "a=gkz&p=" + wert, setKlimaZoneExt);
}



/**
 *
 * @access public
 * @return void
 **/
function showVergleichsGridDetails(id){
	var ri = vergleichsgrid.getRowIndex(id);
	if (ri < 0) return;

	//var info = vergleichsgrid.getUserData(ri, "info");
	var info = vergleichsgrid.getUserData(id, "info");
	dhtmlxAjax.post("php/heizkonzept_konfi_ext.php", "a=csys&id=" + id + "&info=" + info, putVergleichGridDetails);
	updateWerte(info);
}


/**
 *
 * @access public
 * @return void
 **/
function putVergleichGridDetails(loader){
	if (loader.xmlDoc.responseXML != null) {
	   	var content = loader.xmlDoc.responseXML.getElementsByTagName("content")[0].firstChild.nodeValue;
		var sysinfo = loader.xmlDoc.responseXML.getElementsByTagName("info")[0].firstChild.nodeValue;
		var rowid = loader.xmlDoc.responseXML.getElementsByTagName("rowid")[0].firstChild.nodeValue;
		vergleichsgrid.setUserData(rowid, "info", sysinfo);
		vergleichsLayout.cells("b").attachObject(createDiv("gridVergleichsDetails", content));
	}
	else
		alert("Fehler bei der Übertragung der Berechnung");
}


/**
 *
 * @access public
 * @return void
 **/
function createVergleichsLayout(){
	document.getElementById("layerVergleich").innerHTML = "";
	vergleichsLayout = new dhtmlXLayoutObject("layerVergleich", "2E");
	vergleichsLayout.setImagePath("js/dhtmlx/dhtmlx_pro_full/imgs/");
	vergleichsLayout.setEffect("collapse", false);
	vergleichsLayout.setEffect("resize", false);
	vergleichsLayout.cells("a").setText("Systeme zum Vergleichen");

	vergleichsgrid = vergleichsLayout.cells("a").attachGrid();
	vergleichsgrid.setImagePath("js/dhtmlx/dhtmlxGrid/codebase/imgs/");
	vergleichsgrid.setHeader("Aktion, Hauptheizung, Brennstofflagerung, WW-Speicher, Solar, Ofen");
	vergleichsgrid.setInitWidths("80,*,*,*,*,*") ;
	vergleichsgrid.setColAlign("left,center,center,center,center,center");
	vergleichsgrid.setColTypes("ro,ro,ro,ro,ro,ro");
	vergleichsgrid.setColSorting("na,str,str,str,str,str");
	vergleichsgrid.init();
	vergleichsgrid.setSkin("modern");
	vergleichsgrid.attachEvent("onRowSelect",showVergleichsGridDetails);

	vergleichsLayout.cells("b").setHeight(70);
	vergleichsLayout.cells("b").hideHeader();
    vergleichsLayout.cells("b").fixSize(false, true);
}

/**
 *
 * @access public
 * @return void
 **/
function removeRow(id){

	vergleichsgrid.deleteRow(id);
	vergleichsLayout.cells("b").attachObject(createDiv("gridVergleichsDetails", ""));
}

/**
 *
 * @access public
 * @return void
 **/
function showWait(t){
	document.getElementById("pleasewait").style.display="block";
	window.setTimeout("hideWait()", t);
}

/**
 *
 * @access public
 * @return void
 **/
function hideWait(){
	document.getElementById("pleasewait").style.display="none";
}


/**
 *
 * @access public
 * @return void
 **/
function addCompare(){
	var selRow = systemgrid.getSelectedRowId();
	var k = document.getElementById("klimazone_ext").value;
	if (selRow == null) {
		alert('Bitte selektieren Sie rechts in der Liste "Passende Systeme" das gewünschte System!');
		return;
	}
	if (k == "0") {
		alert("Bitte geben Sie zuerst die gewünschte Postleitzahl für das Bauvorhaben ein!");
		document.getElementById("plz_ext").focus();
		return;
	}
	if (typeof vergleichsgrid == "undefined") {
		createVergleichsLayout();
	}

	if (vergleichsgrid.doesRowExist(selRow)) {
		alert("Dieses System ist schon in Ihrer Vergleichsliste vorhanden. Bitte wählen Sie ein anderes zum Vergleich aus!");
		return
	}
	showWait(1000);
	var params = new Array("<span onClick='removeRow(\"" + selRow + "\")' class='plink'>Enfernen</span>");
	for (var i=0; i<systemgrid.getColumnCount(); i++){
		params[i+1] = systemgrid.cells(selRow,i).getValue();
	}
	vergleichsgrid.addRow(selRow,params);
	var sysinfo = systemgrid.getUserData(selRow, "info");
	vergleichsgrid.setUserData(selRow, "info", sysinfo);
}


/**
 *
 * @access public
 * @return void
 **/
function createDiv(id, html){
	var d = document.createElement("div");
	d.setAttribute("id", id);
	d.innerHTML = html;
	return d;
}


/**
 *
 * @access public
 * @return void
 **/
function showSystemGridDetails(id){
	var k = document.getElementById("klimazone_ext").value;
	if (k == "0") {
		dhxLayout_ext.cells("b").attachObject(createDiv("gridDetails", "<div class='plzhinweis'>Bitte geben Sie die PLZ für das Bauvorhaben ein, damit die entsprechenden Ergebnisse für Foderungssummen, Investitionskosten etc. berechnet werden können!</div>"));
		document.getElementById("plz_ext").focus();
		return;
	}
	var info = "{" + getElementsValues() + getCalcParamsAsJson() + "}";

	dhtmlxAjax.post("php/heizkonzept_konfi_ext.php", "a=csys&id=" + id + "&info=" + info, putSystemGridDetails);
}

/**
 *
 * @access public
 * @return void
 **/
function putSystemGridDetails(loader){
	if (loader.xmlDoc.responseXML != null) {
	   	var content = loader.xmlDoc.responseXML.getElementsByTagName("content")[0].firstChild.nodeValue;
		var sysinfo = loader.xmlDoc.responseXML.getElementsByTagName("info")[0].firstChild.nodeValue;
		var rowid = loader.xmlDoc.responseXML.getElementsByTagName("rowid")[0].firstChild.nodeValue;
		systemgrid.setUserData(rowid, "info", sysinfo);
		dhxLayout_ext.cells("b").attachObject(createDiv("gridDetails", content));
	}
	else
		alert("Fehler bei der Übertragung der Berechnung");

}

function tabbarChanged(idn,ido){
	if ((idn == "tab_vergleich_ext") && (ido == "tab_konfiguration_ext")) {
		var info = "{" + getElementsValues() + getCalcParamsAsJson() + '}';
		systemgrid.setUserData("", "info", info);
		document.getElementById("saveList").style.display = "";
		document.getElementById("imgCalc_ext").style.display = "none";
		if (typeof vergleichsgrid == "undefined") {

		} else {
			var row = vergleichsgrid.getSelectedRowId();
			if (row != null) {
				var vinfo = vergleichsgrid.getUserData(row, "info");
				updateWerte(vinfo);

			}
		}

	}
	if ((idn == "tab_konfiguration_ext") && (ido == "tab_vergleich_ext")) {
		var info = systemgrid.getUserData("", "info");
		if (info !="") {
			updateWerte(info);
		}

		document.getElementById("saveList").style.display = "none";
		document.getElementById("imgCalc_ext").style.display = "";

	}

	return true;
}


function loaddescriptionExt(){
	resultbar_ext = new dhtmlXTabBar("resultarea_ext", "top");
	resultbar_ext.setImagePath("js/dhtmlx/dhtmlx_pro_full/imgs/");
	resultbar_ext.setStyle("winBiScarf");
	resultbar_ext.addTab("tab_konfiguration_ext", "Aktuelle Konfiguration", "200px");
	resultbar_ext.setContentHTML("tab_konfiguration_ext","<div id='layerDummy' style='width:100%; height:100%'></div>");
	resultbar_ext.setOnSelectHandler(tabbarChanged);

	resultbar_ext.addTab("tab_vergleich_ext", "Konfigurations-Vergleiche", "200px");
	resultbar_ext.setContentHTML("tab_vergleich_ext","<div id='layerVergleich' style='width:100%; height:100%'><div class='helptopic'>Bitte wählen Sie im Reiter &raquo;Aktuelle Konfiguration&laquo; eine Konfiguration aus, und klicken Sie auf das Icon &raquo;Vergleichen&laquo;</div></div>");

	dhxLayout_ext = new dhtmlXLayoutObject("layerDummy", "2E");
	dhxLayout_ext.setImagePath("js/dhtmlx/dhtmlx_pro_full/imgs/");
	dhxLayout_ext.setEffect("collapse", false);
	dhxLayout_ext.setEffect("resize", false);
	dhxLayout_ext.cells("a").setText("Passende Systeme");


	systemgrid = dhxLayout_ext.cells("a").attachGrid();
	systemgrid.setImagePath("js/dhtmlx/dhtmlxGrid/codebase/imgs/");
	systemgrid.setHeader("Hauptheizung, Brennstofflagerung, WW-Speicher, Solar, Ofen");
	systemgrid.setInitWidths("*,*,*,*,*") ;
	systemgrid.setColAlign("center,center,center,center,center");
	systemgrid.setColTypes("ro,ro,ro,ro,ro");
	systemgrid.setColSorting("str,str,str,str,str");
	systemgrid.init();
	systemgrid.setSkin("modern");
	systemgrid.attachEvent("onRowSelect",showSystemGridDetails);


	dhxLayout_ext.cells("b").setHeight(70);
	dhxLayout_ext.cells("b").hideHeader();
    dhxLayout_ext.cells("b").fixSize(false, true);

	reloadKonfiguration();
	resultbar_ext.setTabActive("tab_konfiguration_ext");
}

/**
 *
 * @access public
 * @return void
 **/
function getElementsValues(){
	var area = document.getElementById("values_ext");
	var info = "";
	var elements = area.getElementsByTagName("input");
	for (var a=0; a < elements.length; a++) {
		if (!elements[a].disabled) {
			info = info + '"' + elements[a].id + '":"' + elements[a].value + '",';
		}
	}

	var elements = area.getElementsByTagName("select");
	for (var a=0; a < elements.length; a++) {
		if (!elements[a].disabled) {
			info = info + '"' + elements[a].id + '":"' + elements[a].value + '",';
		}
	}

	return info;
}

function reloadKonfiguration (){
	if (document.getElementById("gridDetails")) {
		document.getElementById("gridDetails").innerHTML = "";
	}

	var info = "{"  + getElementsValues() + '"dummy":0}';
	info = "a=rk&info=" + info;
	dhtmlxAjax.post("php/heizkonzept_konfi_ext.php", info, setKonfiguration);
}

function setKonfiguration(loader) {
   if (loader.xmlDoc.responseXML != null) {
	   	var tabstr = loader.xmlDoc.responseXML.getElementsByTagName("content")[0].firstChild.nodeValue;
		systemgrid.clearAll();
		systemgrid.parse(tabstr);
	}
	else
		alert("Fehler");

}

function hideResultExt() {
	resultbar_ext.setTabActive("tab_beschreibung_ext");
	reloadKonfiguration();
}

function showHelpItemExt(itemnr) {
	var pos = document.getElementById("helppic" + itemnr).getBoundingClientRect();
	var x = pos["left"] + 20;
	var y = pos["top"] + getYScrollPos();

	if (typeof dhxWinsExt == "undefined")
		dhxWinsExt= new dhtmlXWindows();
	dhxWinsExt.setImagePath("js/dhtmlx/dhtmlx_pro_full/imgs/")
	dhxWinsExt.setSkin("aqua_orange");
    if (dhxWinsExt.isWindow("helpwindow_ext") == true)
		helpfenster_ext.close();
	helpfenster_ext = dhxWinsExt.createWindow("helpwindow_ext", x, y, 300, 300);
	helpfenster_ext.setText("Hilfe");
	helpfenster_ext.attachURL("php/heizkonzept_konfi.php?a=help&h=" + itemnr, true);
}


function setKlimaZoneExt(loader){
    if (loader.xmlDoc.responseXML != null) {
		document.getElementById("klimazonetext_ext").innerHTML = loader.xmlDoc.responseXML.getElementsByTagName("content")[0].firstChild.nodeValue;
		document.getElementById("klimazone_ext").value = loader.xmlDoc.responseXML.getElementsByTagName("kz")[0].firstChild.nodeValue;
	}
	else
		alert("Fehler");
}


function getCalcParamsAsJson(){
	var d = document.getElementById("daemmstandard_ext").value;
	var p = document.getElementById("personen_ext").value;
	var f = document.getElementById("wohnflaeche_ext").value;
	var k = document.getElementById("klimazone_ext").value;
	var plz = document.getElementById("plz_ext").value;
	var ort = document.getElementById("klimazonetext_ext").innerHTML;
	var di = document.getElementById("heizverhalten_ext").value;
	var ditext = document.getElementById("heizverhalten_ext").options[document.getElementById("heizverhalten_ext").selectedIndex].text;
	return "\"d\":\"" + d + "\",\"p\":" + p + ",\"f\":" + f + ",\"k\":" + k + ",\"di\":" + di + ",\"plz\":\"" + plz + "\",\"ditext\":\"" + ditext + "\",\"ort\":" + "\"" + ort +"\"";
}
/**
 *
 * @access public
 * @return void
 **/
function getCalcParams(){
	var d = document.getElementById("daemmstandard_ext").value;
	var p = document.getElementById("personen_ext").value;
	var f = document.getElementById("wohnflaeche_ext").value;
	var k = document.getElementById("klimazone_ext").value;
	var plz = document.getElementById("plz_ext").value;
	if (k == "0") {
		alert("Bitte geben Sie die PLZ für das Bauvorhaben ein!");
		document.getElementById("plz_ext").focus();
		return;
	}
	var di = document.getElementById("heizverhalten_ext").value;
	var ditext = document.getElementById("heizverhalten_ext").options[document.getElementById("heizverhalten_ext").selectedIndex].text;
	return "&d=" + d + "&p=" + p + "&f=" + f + "&k=" + k + "&di=" + di + "&plz=" + plz + "&ditext=" + encodeURIComponent(ditext);
}


/**
 *
 * @access public
 * @return void
 **/
function setDisplayStatus(id, status){

	document.getElementById(id).style.display = status;

	var dis = (status == "none");

	var selects = document.getElementById(id).getElementsByTagName("select");
	for (var a=0; a<selects.length; a++) {
		selects[a].disabled = dis;
	}

}

function checkOfenTyp (value) {
	var showStatus = (value == "16") ? "" : "none";
	setDisplayStatus("tab_e_10", showStatus);
}


function checkAufstellort(value){
	var showStatus = (value == "12") ? "" : "none";
	setDisplayStatus("tab_e_9", showStatus);

	// Ofentyp
	if (showStatus != "") {
		setDisplayStatus("tab_e_10", "none");

	} else {
		if (document.getElementById("aufstellort_ext").value == "16")
			setDisplayStatus("tab_e_10", "");
	}
}

function checkZusatzheizung(value) {
	var status = (value == "19") ? "" : "none";

	setDisplayStatus("tab_e_12", status);
	setDisplayStatus("tab_e_13", status);
	setDisplayStatus("tab_e_14", status);
	setDisplayStatus("tab_e_15", status);
	setDisplayStatus("tab_e_16", status);
	setDisplayStatus("tab_e_17", status);
	setDisplayStatus("tab_e_18", status);

	if (value == "19")
		checkTypZusatzheizung(document.getElementById("typzusatzheizung_ext").value);
}

function checkTypZusatzheizung(value){
	var ofen = (value != "21");
	var solar = (value != "22");

	var status = (solar) ? "" : "none";
	setDisplayStatus("tab_e_13", status);
	setDisplayStatus("tab_e_14", status);

	var status = (ofen) ? "" : "none";
	setDisplayStatus("tab_e_16", status);
	setDisplayStatus("tab_e_17", status);
	setDisplayStatus("tab_e_18", status);
	checkKollektorTyp();
}

function checkDachausrichtung(value) {
	if (value == "28") {  // andere
		alert("Solarkollektoren sind für diese Dachausrichtung ungeeignet. Bitte wählen Sie eine andere Dachausrichtung aus, oder deaktivieren Sie Solar-Zusatzheizung!");
		document.getElementById("dachausrichtung_ext").selectedIndex = 0;
	}
	checkKollektorTyp();
}

function checkDachneigung(value) {
	checkKollektorTyp();
}

function checkKollektorTyp() {
	var ausrichtung = document.getElementById("dachausrichtung_ext").value;
	var neigung = document.getElementById("dachneigung_ext").value;

	var showKollectorTyp = ((ausrichtung == "27") || (ausrichtung == "28") || (neigung == "29") || (neigung == "31")) ? "none" : "";
	setDisplayStatus("tab_e_15", showKollectorTyp);
}
