var KONFIGURATION = 1;
var DESIGN = 2;

var gewaehltesdesign_passtzur_auswahl = true;

// Bilder in Speicher laden
var picWeiss = new Image();  var picSilber = new Image();  var picSchwarz = new Image();  var picBronze = new Image();
picWeiss.src = "/i/farben_kl/weiss.gif"; picSilber.src = "/i/farben_kl/silber.gif"; picSchwarz.src = "/i/farben_kl/schwarz.gif"; picBronze.src = "/i/farben_kl/bronze.gif";

var stil_elem = 'li1';
var hover = 'li1';

function showHint(field) {
		document.getElementById('hinweisboxen').style.display = 'none';
		document.getElementById('btn_messen').style.display = 'none';

		document.getElementById('hinweisbild_b1').style.display = 'none';
		document.getElementById('hinweisbild_h1').style.display = 'none';
		document.getElementById('hinweisbild_b2').style.display = 'none';
		document.getElementById('hinweisbild_h2').style.display = 'none';
		document.getElementById('hinweisbild_tgl').style.display = 'none';
		document.getElementById('hinweisbild_fluegeltyp_ab').style.display = 'none';
		document.getElementById('hinweisbild_fluegeltyp_aby').style.display = 'none';

		document.getElementById('hinweisbild_' + field).style.display = 'block';
		document.getElementById('hinweisbilder').style.display = 'block';
}

function hideHint(field) {
		document.getElementById('hinweisbild_' + field).style.display = 'none';
		document.getElementById('hinweisboxen').style.display = 'block';
		document.getElementById('btn_messen').style.display = 'block';
}

function hideHints() {
		document.getElementById('hinweisbilder').style.display = 'none';
		document.getElementById('hinweisboxen').style.display = 'block';
		document.getElementById('btn_messen').style.display = 'block';
}

function updateHintFluegelTyp() {

		var d_hersteller = document.getElementById('konfigurator').d_hersteller.options[document.getElementById('konfigurator').d_hersteller.selectedIndex].value;
		var d_produkt = document.getElementById('konfigurator').d_produkt.options[document.getElementById('konfigurator').d_produkt.selectedIndex].value;

		if (
			d_hersteller == 'Velux' && 
			( d_produkt == 'VG' || d_produkt == 'VL' || d_produkt == 'VX' || d_produkt == 'VU' || d_produkt == 'VKU')
		) {
			showHint('fluegeltyp_aby');
			document.getElementById('konfigurator').d_typ.title = 'Welchen Typ (A, B oder Y) Ihr Dachfenster hat, erfahren Sie auf der Hilfeskizze rechts.';
		} else if (
			d_hersteller == 'Velux' && 
			( d_produkt == 'VE' || d_produkt == 'VS' || d_produkt == 'VK' || d_produkt == 'VF')
		) {
			showHint('fluegeltyp_ab');
			document.getElementById('konfigurator').d_typ.title = 'Welchen Typ (A oder B) Ihr Dachfenster hat, erfahren Sie auf der Hilfeskizze rechts.';
		} else {
			hideHints();
			document.getElementById('konfigurator').d_typ.title = '';
		};

}

function getIdbez(modell) {
		var idbez = '';
		switch (modell * 1) {
				case RECHTECK: idbez = 'rechteck'; break;
				case SLOPE_H_AUF: idbez = 'slope_h_auf'; break;
				case SLOPE_H_AB: idbez = 'slope_h_ab'; break;
				case TRAPEZ_T: idbez = 'trapez_t'; break;
				case DREIECK_K_AUF: idbez = 'dreieck_k_auf'; break;
				case DREIECK_K_AB: idbez = 'dreieck_k_ab'; break;
				case FUENFECK_G_AUF: idbez = 'fuenfeck_g_auf'; break;
				case FUENFECK_G_AB: idbez = 'fuenfeck_g_ab'; break;
				case FLAECHEN: idbez = 'flaechen'; break;
				case DACH: idbez = 'dach'; break;
		}
		return idbez;
}

function getKuerzelBedienung(bedienung) {
// hier noch ohne Blende (Kuerzel bl)
		var kuerzel = '';
		switch (bedienung * 1) {
            case SCHNURZUG_WENDESTAB : kuerzel = 'schnurzug_wendestab'; break;
            case SCHNURZUG_WENDESTAB_B : kuerzel = 'schnurzug_wendestab_b'; break;
            case ENDLOSKETTE_EXKLUSIV : kuerzel = 'endloskette'; break;
            case ENDLOSKETTE_COMFORT : kuerzel = 'endloskette'; break;
            case ENDLOSSCHNUR : kuerzel = 'endlosschnur'; break;
            case KNICKKURBEL : kuerzel = 'knickkurbel'; break;
            case KNICKKURBEL_A : kuerzel = 'knickkurbel_a'; break;
            case BEDIENGRIFF_ENDLOSKETTE : kuerzel = 'bediengriff_endloskette'; break;
            case SCHNURZUG_WENDESCHNUR : kuerzel = 'schnurzug_wendeschnur'; break;
			case WENDESTAB : kuerzel = 'wendestab'; break;
            case BL_ENDLOSKETTE : kuerzel = 'endloskette'; break;
            case BL_BEDIENGRIFF_ENDLOSKETTE : kuerzel = 'bediengriff_endloskette'; break;
            case BL_BEDIENGRIFF_WENDESTAB_B : kuerzel = 'bediengriff_wendestab_b'; break;
            case BL_BEDIENGRIFF_WENDEKNOPF : kuerzel = 'bediengriff_wendeknopf'; break;
            case BL_SCHNURZUG_WENDESTAB : kuerzel = 'schnurzug_wendestab'; break;
            case BL_ENDLOSSCHNUR : kuerzel = 'endlosschnur'; break;
		}
		return kuerzel;
}

function getKuerzelSeite(seite) {
		var kuerzel = '';
		switch (seite * 1) {
				case LINKS: kuerzel = 'l'; break;
				case RECHTS: kuerzel = 'r'; break;
		}
		return kuerzel;
}

function getKuerzelFarbe(farbe) {
		var kuerzel = '';
		switch (farbe * 1) {
				case WEISS: kuerzel = 'weiss'; break;
				case SILBER: kuerzel = 'silber'; break;
				case SCHWARZ: kuerzel = 'schwarz'; break;
				case BRONZE: kuerzel = 'bronze'; break;
		}
		return kuerzel;
}
/*
function getKuerzelLine(line) {
		var kuerzel = '';
		switch (line * 1) {
				case COMFORT: kuerzel = 'comfort'; break;
				case EXKLUSIV: kuerzel = 'exklusiv'; break;
				case MAXI: kuerzel = 'maxi'; break;
				case NATURCONCEPT: kuerzel = 'naturconcept'; break;
		}
		return kuerzel;
}
*/
function displayBemassungBild() {
		var modell = document.getElementById('konfigurator').modell[radioSelectedIndex(document.getElementById('konfigurator').modell)].value * 1;
		var bedienung = document.getElementById('konfigurator').bedienung[radioSelectedIndex(document.getElementById('konfigurator').bedienung)].value * 1;
		var seite = document.getElementById('konfigurator').bedienseite[radioSelectedIndex(document.getElementById('konfigurator').bedienseite)].value * 1;
		// 'line': globale Variable
		if (line == EXKLUSIV) {
				var profilfarbe = document.getElementById('konfigurator').profilfarbe[document.getElementById('konfigurator').profilfarbe.selectedIndex].value * 1;
				document.getElementById('bemassung_bild_' + getIdbez(modell)).src = 'konfigurator/modelle_gr/' + getIdbez(modell) + '_' + getKuerzelFarbe(profilfarbe) + '_' + getKuerzelBedienung(bedienung) + '_' + getKuerzelSeite(seite) + '.png';
		} else {
				document.getElementById('bemassung_bild_' + getIdbez(modell)).src = 'konfigurator/modelle_gr/' + getIdbez(modell) + '_' + getKuerzelBedienung(bedienung) + '_' + getKuerzelSeite(seite) + '.png';
		}
}

function getLineNr(modell, pl_no, material) {
		modell = modell * 1;
		pl_no = pl_no * 1;
		material = material * 1;
		var rueckgabewert = 0;

        if (modell == FLAECHEN) {
                rueckgabewert = MAXI;
        } else {
                switch (pl_no) {
                        case 71:
						case 72:
						case 81:
						case 82:
                                rueckgabewert = COMFORT;
								break;
                        default:    // 73, 74, 75, 83, 84, 85
                                rueckgabewert = EXKLUSIV;
								break;
                }
                if (material == HOLZ) {
                        rueckgabewert = NATURKONZEPT;
                }
        }
        return rueckgabewert;
}

function aendereSeitenfuehrung() {

		if (document.getElementById('checkbox_seitenf').checked == true) {				// Seitenfuehrung angeschaltet

				// line ist eine globale Variable

				var lb = document.getElementById('konfigurator').lb[radioSelectedIndex(document.getElementById('konfigurator').lb)].value * 1;
				var modell = document.getElementById('konfigurator').modell[radioSelectedIndex(document.getElementById('konfigurator').modell)].value * 1;

				var b1 = document.getElementById('konfigurator').elements['mass_' + modell + '_b1'].value * 1;
				var b2 = document.getElementById('konfigurator').elements['mass_' + modell + '_b2'].value * 1;
				var h1 = document.getElementById('konfigurator').elements['mass_' + modell + '_h1'].value * 1;
				var h2 = document.getElementById('konfigurator').elements['mass_' + modell + '_h2'].value * 1;

				var b = 0;		// --> das jeweils groessere Mass
				var h = 0;

				if (b2 > b1) { b = b2 } else { b = b1 };
				if (h2 > h1) { h = h2 } else { h = h1 };

				var maxB = getMaxB(line, 1, lb, modell);		// maximale Masse mit Seitenfuehrung
				var maxH = getMaxH(line, 1, lb, modell);
				var maxQM = getMaxQM(line, 1, lb, modell);

				if (  (b > maxB)  ||  (h > maxH )  || ( b * h / 1000000 > maxQM)  ) {
						alert('Wenn Sie eine Seitenverspannung wünschen, darf die Jalousie maximal ' + maxB + 'mm breit, maximal ' + maxH + 'mm hoch sein, und sie darf eine Fläche von maximal ' + maxQM + 'qm haben.');
						document.getElementById('checkbox_seitenf').checked = false;
				} else {
						ajax_request_preisberechnung();
				}

		} else {		// Seitenfuehrung ausgeschaltet
				var befestigung = document.getElementById('konfigurator').befestigung[radioSelectedIndex(document.getElementById('konfigurator').befestigung)].value * 1;
				if (befestigung == AUF_FENSTERFLUEGEL_WINKEL) {
						alert('Die für Ihre Jalousie gewählte Art der Befestigung (auf Fensterflügel mit Spannwinkel) ist leider nur mit Seitenführung möglich!\nWenn Sie eine Jalousie ohne Seitenführung wünschen, ändern Sie bitte vorher die Art der Befestigung/Montage.');
						document.getElementById('checkbox_seitenf').checked = true;
				} else {
						ajax_request_preisberechnung();
				}
		}
}

function kannBlende(modell, line, b, befestigung) {
		// if ( ((line == EXKLUSIV && b <= 1600) || (line == COMFORT && b <= 1500 && modell != DACH && modell != FLAECHEN)) && befestigung == IN_GLASLEISTE) {
		if ( (line == EXKLUSIV && b <= 1600) && befestigung == IN_GLASLEISTE) {		// Jalousien Comfort sind nicht mehr mit Blende moeglich
				return true;
		} else {
				return false;
		}
}

function kannSeitenfuehrung(modell, line) {
		if (modell == RECHTECK && (line == COMFORT || line == EXKLUSIV) || modell == FLAECHEN) {
				return true;
		} else {
				return false;
		}
}

function kannClassic(modell, lb, line) {
		modell = modell * 1; lb = lb * 1; line = line * 1;
		if ((modell != DACH && modell != FLAECHEN) && line == NATURKONZEPT && lb == 50) {
				return true;
		} else {
				return false;
		}
}

function kannStegband(lb, bedienung) {
		lb = lb * 1; bedienung = bedienung * 1;
		if (lb == 50 && bedienung == SCHNURZUG_WENDESCHNUR) {
				return true;
		} else {
				return false;
		}
}



// Tabs

var akt_tab = 1;

function activate(tab_old, tab_new) {

        document.getElementById('tabnavi0_' + tab_new).className = 'tabnavi_oben_activate';
//		document.getElementById('tabnavi1_' + tab_new).className = 'tabnavi_unten_activate';

        akt_tab = tab_new;      // akt_tab ist global
		document.getElementById('konfigurator').tab.value = tab_new;

        unhighlight(tab_old);

		switch (tab_new) {
				case 1:
						document.getElementById('box_design').style.display = 'none';
						document.getElementById('box_opt').style.display = 'none';
						document.getElementById('box_masse').style.display = 'block';
						break;
				case 2:
						document.getElementById('box_masse').style.display='none';
						document.getElementById('box_opt').style.display = 'none';
						document.getElementById('box_design').style.display='block';
						break;
				case 3:
						document.getElementById('box_masse').style.display = 'none';
						document.getElementById('box_design').style.display = 'none';
						document.getElementById('box_opt').style.display = 'block';
						break;
		}

}

function highlight(tab) {
        if (akt_tab*1 != tab) {
				document.getElementById('tabnavi0_' + tab).className = 'tabnavi_oben_highlight';
//				document.getElementById('tabnavi1_' + tab).className = 'tabnavi_unten_highlight';
        };
}

function unhighlight(tab) {
        if (akt_tab*1 != tab) {
				document.getElementById('tabnavi0_' + tab).className = 'tabnavi_oben_unhighlight';
//				document.getElementById('tabnavi1_' + tab).className = 'tabnavi_unten_unhighlight';
        };
}


function setMasse(modell) {
		document.getElementById('konfigurator').b1.value = document.getElementById('konfigurator').elements['mass_' + modell + '_b1'].value;
		document.getElementById('konfigurator').h1.value = document.getElementById('konfigurator').elements['mass_' + modell + '_h1'].value;
		document.getElementById('konfigurator').b2.value = document.getElementById('konfigurator').elements['mass_' + modell + '_b2'].value;
		document.getElementById('konfigurator').h2.value = document.getElementById('konfigurator').elements['mass_' + modell + '_h2'].value;
		document.getElementById('konfigurator').b3.value = '0';
		document.getElementById('konfigurator').h3.value = '0';
}




function getMinB(line, seitenf, lb, modell) {
		var min_b = 0;

		if (line == COMFORT && modell != RECHTECK) {
			min_b = 140;
        } else if (line == COMFORT && seitenf == OHNE) {
            min_b = 340;
        } else if (line == COMFORT && seitenf != OHNE) {
            min_b = 340;
        } else if (line == EXKLUSIV && seitenf == OHNE) {
            min_b = 350;
        } else if (line == EXKLUSIV && seitenf != OHNE) {
            min_b = 350;
        } else if (line == MAXI && seitenf == OHNE) {
            min_b = 500;
        } else if (line == MAXI && seitenf != OHNE) {
            min_b = 500;
        } else if (line == NATURKONZEPT) {
        	min_b = 340;
        }

        return min_b;
}

function getMaxB(line, seitenf, lb, modell) {
		var max_b = 9999;

		if (line == COMFORT && modell != RECHTECK) {
			max_b = 2000;
        } else if (line == COMFORT && seitenf == OHNE) {
            max_b = 2800;
        } else if (line == COMFORT && seitenf != OHNE) {
            max_b = 1600;
        } else if (line == EXKLUSIV && seitenf == OHNE) {
            max_b = 2800;
        } else if (line == EXKLUSIV && seitenf != OHNE) {
            max_b = 1600;
        } else if (line == MAXI && seitenf == OHNE) {
            max_b = 4400;
        } else if (line == MAXI && seitenf != OHNE) {
            max_b = 3000;
        } else if (line == NATURKONZEPT) {
        	if (lb == 25) {
        		max_b = 1800;
        	} else {
        		max_b = 2400;
        	}
        }

        return max_b;
}


function getMaxH(line, seitenf, lb, modell) {
		var max_h = 9999;

		if (line == COMFORT && modell != RECHTECK) {
			max_h = 2000;
        } else if (line == COMFORT && seitenf == OHNE) {
            max_h = 3000;
        } else if (line == COMFORT && seitenf != OHNE) {
            max_h = 3000;
        } else if (line == EXKLUSIV && seitenf == OHNE) {
            max_h = 3000;
        } else if (line == EXKLUSIV && seitenf != OHNE) {
            max_h = 3000;
        } else if (line == MAXI && seitenf == OHNE) {
            max_h = 4000;
        } else if (line == MAXI && seitenf != OHNE) {
            max_h = 4000;
        } else if (line == NATURKONZEPT) {
        	max_h = 3000;
        }

        return max_h;
}


function getMaxQM(line, seitenf, lb, modell) {
		var max_qm = 15;

		if (line == COMFORT && modell != RECHTECK) {
			max_qm = 4.0;
        } else if (line == COMFORT && seitenf == OHNE) {
            max_qm = 5.0;
        } else if (line == COMFORT && seitenf != OHNE) {
            max_qm = 4.5;
        } else if (line == EXKLUSIV && seitenf == OHNE) {
            max_qm = 5.5;
        } else if (line == EXKLUSIV && seitenf != OHNE) {
            max_qm = 4.5;
        } else if (line == MAXI && seitenf == OHNE) {
            max_qm = 12;
        } else if (line == MAXI && seitenf != OHNE) {
            max_qm = 12;
        } else if (line == NATURKONZEPT) {
        	if (lb == 25) {
        		max_qm = 2.5;
        	} else {
        		max_qm = 5;	// hier muesste eigentlich noch zw. Classic und Nicht-Classic unterschieden werden
        	}
        }

        return max_qm;
}


function massGeaendert(isFinal, modell, mass) {
 
		var hinweistext = '';
 
		// ungueltige Zeichen entfernen
		var alterWert = document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value;
		var neuerWert = entfUngZeichen(document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value);

		if (neuerWert == '') {
				neuerWert = '0';
		}
		if (alterWert != neuerWert) {
				document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value = neuerWert;
		}

		var seitenf; if (document.getElementById('checkbox_seitenf').checked) { seitenf = 1; } else { seitenf = 0; };
		var lb = document.getElementById('konfigurator').lb[radioSelectedIndex(document.getElementById('konfigurator').lb)].value * 1;
		
		// line - globale Variable
		var maxMass;
		if (mass == 'b1' || mass == 'b2' || mass == 'b3') {
				maxMass = getMaxB(line, seitenf, lb, modell);
		} else {
				maxMass = getMaxH(line, seitenf, lb, modell);
		}
		
		// maximale Masse pruefen
		if (neuerWert * 1 > maxMass) {

				hinweistext = '<b>Maße zu groß!</b>';
				// hinweistext = hinweistext + '<br />Die maximalen Maße für dieses Modell sind:';
				// hinweistext = hinweistext + '<br />maximale Breite: ' + eval('max_' + modell + '_' + lb + '_b1') + 'mm (=' + eval('max_' + modell + '_' + lb + '_b1') / 1000 + 'cm)';		// hier muesste noch zwischen Breite 1 und 2 unterschieden werden!
				// hinweistext = hinweistext + '<br />maximale Höhe: ' + eval('max_' + modell + '_' + lb + '_h1') + 'mm (=' + eval('max_' + modell + '_' + lb + '_h1') / 1000 + 'cm)';		// hier muesste noch zwischen Hoehe 1 und 2 unterschieden werden!
				// hinweistext = hinweistext + '<br />maximale Fläche: ' + eval('max_' + modell + '_' + lb + '_qm') + 'qm';
				if (modell*1 == RECHTECK) {
						hinweistext = hinweistext + '<br /><br />Vielleicht möchten Sie eine<br /><span onclick="aenderung = KONFIGURATION; aendereModell(' + FLAECHEN + '); ajax_request_preisberechnung();" style="text-decoration: underline; cursor: pointer;">Jalousie XXL</span> bestellen.';
				}

				if (isFinal) {
						document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value = maxMass;
				}

		};

		var b1 = document.getElementById('konfigurator').elements['mass_' + modell + '_b1'].value * 1;
		var b2 = document.getElementById('konfigurator').elements['mass_' + modell + '_b2'].value * 1;
		var h1 = document.getElementById('konfigurator').elements['mass_' + modell + '_h1'].value * 1;
		var h2 = document.getElementById('konfigurator').elements['mass_' + modell + '_h2'].value * 1;

		var b = 0;		// --> das jeweils groessere Mass
		var h = 0;

		if (b2 > b1) { b = b2 } else { b = b1 };
		if (h2 > h1) { h = h2 } else { h = h1 };

		// maximale Flaeche pruefen
		var qm = b * h / 1000 / 1000;

		// var maxMass;
		maxMass = getMaxQM(line, seitenf, lb, modell);

		if (qm > maxMass) {

				hinweistext = '<b>Maße zu groß!</b>';
				// hinweistext = hinweistext + '<br />Die maximalen Maße für dieses Modell sind:';
				// hinweistext = hinweistext + '<br />maximale Breite: ' + eval('max_' + modell + '_' + lb + '_b1') + 'mm (=' + eval('max_' + modell + '_' + lb + '_b1') / 1000 + 'cm)';		// hier muesste noch zwischen Breite 1 und 2 unterschieden werden!
				// hinweistext = hinweistext + '<br />maximale Höhe: ' + eval('max_' + modell + '_' + lb + '_h1') + 'mm (=' + eval('max_' + modell + '_' + lb + '_h1') / 1000 + 'cm)';		// hier muesste noch zwischen Hoehe 1 und 2 unterschieden werden!
				// hinweistext = hinweistext + '<br />maximale Fläche: ' + eval('max_' + modell + '_' + lb + '_qm') + 'qm';
				if (modell*1 == RECHTECK) {
						hinweistext = hinweistext + '<br /><br />Vielleicht möchten Sie eine<br /><span onclick="aenderung = KONFIGURATION; aendereModell(' + FLAECHEN + '); ajax_request_preisberechnung();" style="text-decoration: underline; cursor: pointer;">Jalousie XXL</span> bestellen.';
				}

				if (isFinal) {
						if (mass == 'b1' || mass == 'b2' || mass == 'b3') {
								document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value = Math.floor(maxMass * 1000 * 1000 / h);
						} else {		// h1 || h2 || h3
								document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value = Math.floor(maxMass * 1000 * 1000 / b);
						}
				}
		}

		// minimale Masse pruefen
		var minMass;
		if (mass == 'b1' || mass == 'b2' || mass == 'b3') {
				minMass = getMinB(line, seitenf, lb, modell);
		} else {
		//		minMass = getMinH(line, seitenf, lb, modell);
				minMass = 0;
		}
		
		if (neuerWert * 1 < minMass) {
				hinweistext = '<b>Maße zu klein!</b>';
				if (modell*1 == RECHTECK) {
						hinweistext = hinweistext + '<br />Überprüfen Sie bitte Ihre Angaben auf Verwechslung der Maßeinheit!<br />(<b>100cm = 1000mm</b>)';
				}

				if (isFinal) {
						document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value = minMass;
				}
		}

		if (hinweistext == '') {
				document.getElementById('hinweis_' + modell + '_gross_' + mass).style.display = 'none';
		} else {
				document.getElementById('hinweis_' + modell + '_gross_' + mass).innerHTML = hinweistext;
				document.getElementById('hinweis_' + modell + '_gross_' + mass).style.display = 'block';
		}

		setMasse(modell);
		ajax_request_preisberechnung();

}


function aendereProfilfarbe() {

		// var picWeiss = new Image();picWeiss.src = "weiss.gif";		// so werden die Bilder ausserhalb der Funktion vorgeladen werden
		// document.getElementById("id_profilfarbe_wahl").src = 'konfigurator/farben/weiss.gif';		// oder so

		var profilfarbe = document.getElementById('konfigurator').profilfarbe[document.getElementById('konfigurator').profilfarbe.selectedIndex].value * 1;
		switch (profilfarbe) {

				case WEISS:
						document.getElementById("id_profilfarbe_wahl").src = picWeiss.src;
						document.getElementById("id_profilfarbe_wahl").alt = 'weiß';
						break;
				case SILBER:
						document.getElementById("id_profilfarbe_wahl").src = picSilber.src;
						document.getElementById("id_profilfarbe_wahl").alt = 'silber';
						break;
				case SCHWARZ:
						document.getElementById("id_profilfarbe_wahl").src = picSchwarz.src;
						document.getElementById("id_profilfarbe_wahl").alt = 'schwarz';
						break;
				case BRONZE:
						document.getElementById("id_profilfarbe_wahl").src = picBronze.src;
						document.getElementById("id_profilfarbe_wahl").alt = 'bronze';
						break;
		}
		displayBemassungBild();
}

function aendereBefestigung() {
		var befestigung = document.getElementById('konfigurator').befestigung[radioSelectedIndex(document.getElementById('konfigurator').befestigung)].value * 1;
		var seitenf; if (document.getElementById('checkbox_seitenf').checked) { seitenf = 1; } else { seitenf = 0; };

		// bei "normalen" Jalousien: Wenn Spannwinkel gewaehlt, dann automatisch nur mit Seitenfuehrung
		// die Abfrage auf Line = normal (maxi, comfort) entfaellt, weil eh nur normale Jalousie Spannwinkel als Befestigung haben koennen
		if (befestigung == AUF_FENSTERFLUEGEL_WINKEL && document.getElementById('checkbox_seitenf').checked == false) {
				document.getElementById('checkbox_seitenf').checked = true;
				alert('Jalousien, die mit Spannwinkel befestigt werden benötigen eine Seitenverspannung. Diese wurde durch den Konfigurator automatisch hinzugefügt.');
		}
		aenderung = KONFIGURATION; aendereModell(0); // wegen der Blende - die ist abhaengig von der Befestigung
}

function aendereFensterform(fensterform) {
		if (fensterform == 'rechteck') {
				document.getElementById('fensterform_sonderform').style.display = 'none';
				document.getElementById('fensterform_rechteck').style.display = 'block';
				aenderung = KONFIGURATION; aendereModell(RECHTECK);
		} else {
				document.getElementById('fensterform_rechteck').style.display = 'none';
				document.getElementById('fensterform_sonderform').style.display = 'block';
				aenderung = KONFIGURATION; aendereModell(SLOPE_H_AUF);
		};
}


function aendereModell (modell) {
// Achtung! Abhaengigkeiten beachten!

		// globale Variablen:  (diese sind abhaenig vom gewahlten Stoff)
		// line
		// pl_no
		// material

		if (modell == 0) {
				modell = document.getElementById('konfigurator').modell[radioSelectedIndex (document.getElementById('konfigurator').modell)].value * 1;
		} else {
				document.getElementById('radio_modell_' + modell).checked = true;		// falls auf das Bild geklickt wurde, oder falls wir das Modell per Script setzen
				modell = modell * 1;		// zu Zahl umwandeln, falls String
		}

		var bedienung = document.getElementById('konfigurator').bedienung[radioSelectedIndex(document.getElementById('konfigurator').bedienung)].value * 1;
		var lb = document.getElementById('konfigurator').lb[radioSelectedIndex(document.getElementById('konfigurator').lb)].value * 1;

	
		// verfuegbare Lamellenbreiten anzeigen
		var kann25 = true; var kann35 = true; var kann50 = true;
		if (modell == RECHTECK) {
				kann25 = true; kann35 = true; kann50 = true;		// Holz hat Lamellenbreite 50
		} else if (modell == DACH) {
				kann25 = true; kann35 = false; kann50 = false;
		} else if (modell == FLAECHEN) {
				kann25 = false; kann35 = true; kann50 = true;
		} else  {
				kann25 = true; kann35 = false; kann50 = false;
		}
		if (kann50 == false) {
				if (lb == 50) {
						lb = 35;
						document.getElementById('konfigurator').lb[radioIndexByValue(document.getElementById('konfigurator').lb, 35)].checked = true;
				}
				document.getElementById('lb_50').title = 'Die Lamellenbreite von 50mm ist für dieses Modell nicht verfügbar!';
				document.getElementById('lb_50').style.color = '#bbbbbb';
				document.getElementById('konfigurator').lb[radioIndexByValue(document.getElementById('konfigurator').lb, 50)].disabled = true;
		} else {
				document.getElementById('konfigurator').lb[radioIndexByValue(document.getElementById('konfigurator').lb, 50)].disabled = false;
				document.getElementById('lb_50').style.color = '#000000';
				document.getElementById('lb_50').title = '50mm Lamellenbreite für sehr große Jalousieanlagen';
		}
		if (kann35 == false) {
				if (lb == 35) {
						lb = 25;
						document.getElementById('konfigurator').lb[radioIndexByValue(document.getElementById('konfigurator').lb, 25)].checked = true;
				}
				document.getElementById('lb_35').title = 'Die Lamellenbreite von 35mm ist für dieses Modell nicht verfügbar!';
				document.getElementById('lb_35').style.color = '#bbbbbb';
				document.getElementById('konfigurator').lb[radioIndexByValue(document.getElementById('konfigurator').lb, 35)].disabled = true;
				
		} else {
				document.getElementById('konfigurator').lb[radioIndexByValue(document.getElementById('konfigurator').lb, 35)].disabled = false;
				document.getElementById('lb_35').style.color = '#000000';
				document.getElementById('lb_35').title = '35mm Lamellenbreite für große Jalousieanlagen';
		}
		if (kann25 == false) {
				if (lb == 25) {
						lb = 35;
						document.getElementById('konfigurator').lb[radioIndexByValue(document.getElementById('konfigurator').lb, 35)].checked = true;
				}
				document.getElementById('lb_25').title = 'Die Lamellenbreite von 25mm ist für dieses Modell nicht verfügbar!';
				document.getElementById('lb_25').style.color = '#bbbbbb';
				document.getElementById('konfigurator').lb[radioIndexByValue(document.getElementById('konfigurator').lb, 25)].disabled = true;
		} else {
				document.getElementById('konfigurator').lb[radioIndexByValue(document.getElementById('konfigurator').lb, 25)].disabled = false;
				document.getElementById('lb_25').style.color = '#000000';
				document.getElementById('lb_25').title = '25mm ist die "gängige" Lamellenbreite (Standard) für die meisten Jalousieanlagen';
		}
		
		

		// verfuegbare Materialien anzeigen
		if (modell != FLAECHEN && modell != DACH && lb == 50) {
				document.getElementById('auswahl_material_' + ALU).checked = false;
				document.getElementById('auswahl_material_' + ALU).disabled = true;
				
				document.getElementById('auswahl_material_' + HOLZ).disabled = false;
				document.getElementById('auswahl_material_' + HOLZ).checked = true;
				material = HOLZ;
		} else {
				if (document.getElementById('auswahl_material_' + ALU).disabled == true) {
						document.getElementById('auswahl_material_' + ALU).disabled = false;
						document.getElementById('auswahl_material_' + ALU).checked = true;
				}
		}

		if (modell == FLAECHEN || modell == DACH) {
				document.getElementById('auswahl_material_' + HOLZ).checked = false;
				document.getElementById('auswahl_material_' + HOLZ).disabled = true;

				document.getElementById('auswahl_material_' + ALU).disabled = false;
				document.getElementById('auswahl_material_' + ALU).checked = true;
				material = ALU;
		} else {
				if (document.getElementById('auswahl_material_' + HOLZ).disabled == true) {
						document.getElementById('auswahl_material_' + HOLZ).disabled = false;
						document.getElementById('auswahl_material_' + HOLZ).checked = true;
				}
		}

		line = getLineNr(modell, pl_no, material) * 1;

		var befestigung = document.getElementById('konfigurator').befestigung[radioSelectedIndex(document.getElementById('konfigurator').befestigung)].value * 1;
		var classic = document.getElementById('konfigurator').classic[radioSelectedIndex(document.getElementById('konfigurator').classic)].value * 1;

		

		
		var b1 = document.getElementById('konfigurator').elements['mass_' + modell + '_b1'].value * 1;
		var b2 = document.getElementById('konfigurator').elements['mass_' + modell + '_b2'].value * 1;
		// var h1 = document.getElementById('konfigurator').elements['mass_' + modell + '_h1'].value * 1;
		// var h2 = document.getElementById('konfigurator').elements['mass_' + modell + '_h2'].value * 1;

		var b = 0;		// --> das jeweils groessere Mass
		// var h = 0;

		if (b2 > b1) { b = b2 } else { b = b1 };
		// if (h2 > h1) { h = h2 } else { h = h1 };


		if (kannClassic(modell, lb, line)) {
				document.getElementById('wahl_classic').style.display = 'block';
		} else {
				classic = 0;
				document.getElementById('wahl_classic_0').checked = true;
				document.getElementById('wahl_classic').style.display = 'none';
		}

		// moegliche Befestigungen anzeigen / ausblenden
		var kann_in_glasleiste = false;
		var kann_in_fensternische = false;
		var kann_vor_fensternische = false;
		var kann_auf_fensterfluegel_traeger = false;
		var kann_auf_fensterfluegel_winkel = false;
		
		switch (modell) {
				case FLAECHEN:
						kann_in_fensternische = true;
						kann_vor_fensternische = true;
						break;
				case DACH:
						kann_in_glasleiste = true;
						break;
				default:
						kann_in_glasleiste = true;
						kann_in_fensternische = true;
						kann_vor_fensternische = true;
						//if (!(line == NATURKONZEPT && lb == 50)) {	// bei Holzjalousien 50mm sind keine Spannwinkel moeglich
						if (!(line == NATURKONZEPT)) {	// lt. Mail vom 6. 12. 2011: "Bei Holzjalousien gibt es grundsätzlich keine Spannwinkelbefestigung (und somit auch keine Seitenverspannung)" - Spannwinkel benoetigen ja Seitenverspannung
								kann_auf_fensterfluegel_winkel = true;
						};
						if (line != NATURKONZEPT) { 		// bei Holzjalousien keine Klemmtraeger moeglich
								kann_auf_fensterfluegel_traeger = true;
						}
						break;
		}

		var befestigung_neu = false;
		if (kann_in_glasleiste) { document.getElementById('befestigung_in_glasleiste').style.display = 'block' } else { document.getElementById('befestigung_in_glasleiste').style.display = 'none'; if (befestigung == IN_GLASLEISTE) {befestigung_neu = true;} };
		if (kann_in_fensternische) { document.getElementById('befestigung_in_fensternische').style.display = 'block' } else { document.getElementById('befestigung_in_fensternische').style.display = 'none'; if (befestigung == IN_FENSTERNISCHE) {befestigung_neu = true;}  };
		if (kann_vor_fensternische) { document.getElementById('befestigung_vor_fensternische').style.display = 'block' } else { document.getElementById('befestigung_vor_fensternische').style.display = 'none'; if (befestigung == VOR_FENSTERNISCHE) {befestigung_neu = true;}  };
		if (kann_auf_fensterfluegel_traeger) { document.getElementById('befestigung_auf_fensterfluegel_traeger').style.display = 'block' } else { document.getElementById('befestigung_auf_fensterfluegel_traeger').style.display = 'none'; if (befestigung == AUF_FENSTERFLUEGEL_TRAEGER) {befestigung_neu = true;}  };
		if (kann_auf_fensterfluegel_winkel) { document.getElementById('befestigung_auf_fensterfluegel_winkel').style.display = 'block' } else { document.getElementById('befestigung_auf_fensterfluegel_winkel').style.display = 'none'; if (befestigung == AUF_FENSTERFLUEGEL_WINKEL) {befestigung_neu = true;}  };

		if (befestigung_neu) {
				if (kann_in_glasleiste) befestigung = IN_GLASLEISTE
				else if (kann_in_fensternische) befestigung = IN_FENSTERNISCHE
				else if (kann_vor_fensternische) befestigung = VOR_FENSTERNISCHE
				else if (kann_auf_fensterfluegel_traeger) befestigung = AUF_FENSTERFLUEGEL_TRAEGER
				else if (kann_auf_fensterfluegel_winkel) befestigung = AUF_FENSTERFLUEGEL_WINKEL;
				document.getElementById('konfigurator').befestigung[radioIndexByValue(document.getElementById('konfigurator').befestigung, befestigung)].checked = true;
		}



		// Optionen
		// Blende und Seitenfuehrung / Seitenverspannung
		var blende;
		var seitenf;		

		if (kannBlende(modell, line, b, befestigung) || kannSeitenfuehrung(modell, line)) {
				document.getElementById('auswahl_optionen').style.display = 'block';
		} else {
				document.getElementById('auswahl_optionen').style.display = 'none';
		}

		if (kannBlende(modell, line, b, befestigung)) {
				document.getElementById('option_blende').style.display = 'block';
				if (document.getElementById('checkbox_blende').checked) {
						blende = 1;
				} else {
						blende = 0;
				}
		} else {
				document.getElementById('checkbox_blende').checked = false;
				document.getElementById('option_blende').style.display = 'none';
				blende = 0
		}

		// Dachfenster haben zwar eine Seitenverspannung, diese ist aber immer inklusive und wird nicht extra mit Aufpreis berechnet
		if (kannSeitenfuehrung(modell, line)) {
				document.getElementById('checkbox_seitenf').disabled = false;
				document.getElementById('option_seitenf').style.display = 'block';
				if (document.getElementById('checkbox_seitenf').checked) {
						seitenf = 1;
				} else {
						seitenf = 0;
				}
				document.getElementById('option_seitenf_dach').style.display = 'none';
		} else if (modell == DACH) {		// Seitenfuehrung inklusive
				document.getElementById('checkbox_seitenf').checked = false;
				document.getElementById('checkbox_seitenf').disabled = true;
				document.getElementById('option_seitenf').style.display = 'none';
				seitenf = 0;
				document.getElementById('option_seitenf_dach').style.display = 'block';
		} else {
				document.getElementById('checkbox_seitenf').disabled = false;
				document.getElementById('option_seitenf').style.display = 'none';
				seitenf = 0;
				document.getElementById('option_seitenf_dach').style.display = 'none';
		}



		// moegliche Bedienungen anzeigen / ausblenden
		var kann_bl_endlosschnur = false;
		var kann_bl_schnurzug_wendestab = false;
		var kann_bl_bediengriff_wendeknopf = false;
		var kann_bl_bediengriff_wendestab_b = false;
		var kann_bl_endloskette = false;
		var kann_schnurzug_wendeschnur = false;
		var kann_knickkurbel_a = false;
		var kann_knickkurbel = false;
		var kann_endlosschnur = false;
		var kann_endloskette_comfort = false;
		var kann_endloskette_exklusiv = false;
		var kann_schnurzug_wendestab = false;
		var kann_wendestab = false;

		
		switch (modell) {

				case SLOPE_H_AUF:
				case SLOPE_H_AB:
				case FUENFECK_G_AUF:
				case FUENFECK_G_AB:

						kann_schnurzug_wendestab = true;
						break;
						
				case TRAPEZ_T:
				case DREIECK_K_AUF:
				case DREIECK_K_AB:
				
						kann_wendestab = true;
						break;

				default:

						switch (line) {
								case COMFORT:
								
										if (blende == 1) { 	// b<=1500 und befestigung IN_GLASLEISTE
											   kann_bl_schnurzug_wendestab = true;
											   kann_bl_endlosschnur = true;
										} else {
												kann_schnurzug_wendestab = true;
												// kann_endloskette_comfort = true;
												kann_endlosschnur = true;
												//if modell <> DACH then
												// kann_knickkurbel = true;
												// kann_knickkurbel_a = true;
												//end if
										}

										break;
								case EXKLUSIV:
										if (blende == 1) {
												kann_bl_endloskette = true;
												// kann_bl_bediengriff_wendestab_b = true;
												kann_bl_bediengriff_wendeknopf = true;
										} else {
												kann_endloskette_exklusiv = true;
										}
										break;
								case MAXI:
										kann_schnurzug_wendeschnur = true;
										kann_endlosschnur = true;
										kann_knickkurbel = true;
										kann_knickkurbel_a = true;
										break;
								case NATURKONZEPT:
										if (lb == 25) {
												kann_schnurzug_wendestab = true;
										} else {    // 50
												kann_schnurzug_wendeschnur = true;
										}
										break;
								default:
										// Bedienung nicht relevant
						}
						break;
		}

		var bedienung_neu = false;
		if (kann_bl_endlosschnur) { document.getElementById('bedienung_bl_endlosschnur').style.display = 'block' } else { document.getElementById('bedienung_bl_endlosschnur').style.display = 'none'; if (bedienung == BL_ENDLOSSCHNUR) {bedienung_neu = true;} };
		if (kann_bl_schnurzug_wendestab) { document.getElementById('bedienung_bl_schnurzug_wendestab').style.display = 'block' } else { document.getElementById('bedienung_bl_schnurzug_wendestab').style.display = 'none'; if (bedienung == BL_SCHNURZUG_WENDESTAB) {bedienung_neu = true;}  };
		if (kann_bl_bediengriff_wendeknopf) { document.getElementById('bedienung_bl_bediengriff_wendeknopf').style.display = 'block' } else { document.getElementById('bedienung_bl_bediengriff_wendeknopf').style.display = 'none'; if (bedienung == BL_BEDIENGRIFF_WENDEKNOPF) {bedienung_neu = true;}  };
		if (kann_bl_bediengriff_wendestab_b) { document.getElementById('bedienung_bl_bediengriff_wendestab_b').style.display = 'block' } else { document.getElementById('bedienung_bl_bediengriff_wendestab_b').style.display = 'none'; if (bedienung == BL_BEDIENGRIFF_WENDESTAB_B) {bedienung_neu = true;}  };
		if (kann_bl_endloskette) { document.getElementById('bedienung_bl_endloskette').style.display = 'block' } else { document.getElementById('bedienung_bl_endloskette').style.display = 'none'; if (bedienung == BL_ENDLOSKETTE) {bedienung_neu = true;}  };
		if (kann_schnurzug_wendeschnur) { document.getElementById('bedienung_schnurzug_wendeschnur').style.display = 'block' } else { document.getElementById('bedienung_schnurzug_wendeschnur').style.display = 'none'; if (bedienung == SCHNURZUG_WENDESCHNUR) {bedienung_neu = true;}  };
		if (kann_knickkurbel_a) { document.getElementById('bedienung_knickkurbel_a').style.display = 'block' } else { document.getElementById('bedienung_knickkurbel_a').style.display = 'none'; if (bedienung == KNICKKURBEL_A) {bedienung_neu = true;}  };
		if (kann_knickkurbel) { document.getElementById('bedienung_knickkurbel').style.display = 'block' } else { document.getElementById('bedienung_knickkurbel').style.display = 'none'; if (bedienung == KNICKKURBEL) {bedienung_neu = true;}  };
		if (kann_endlosschnur) { document.getElementById('bedienung_endlosschnur').style.display = 'block' } else { document.getElementById('bedienung_endlosschnur').style.display = 'none'; if (bedienung == ENDLOSSCHNUR) {bedienung_neu = true;}  };
		if (kann_endloskette_comfort) { document.getElementById('bedienung_endloskette_comfort').style.display = 'block' } else { document.getElementById('bedienung_endloskette_comfort').style.display = 'none'; if (bedienung == ENDLOSKETTE_COMFORT) {bedienung_neu = true;}  };
		if (kann_endloskette_exklusiv) { document.getElementById('bedienung_endloskette_exklusiv').style.display = 'block' } else { document.getElementById('bedienung_endloskette_exklusiv').style.display = 'none'; if (bedienung == ENDLOSKETTE_EXKLUSIV) {bedienung_neu = true;}  };
		if (kann_schnurzug_wendestab) { document.getElementById('bedienung_schnurzug_wendestab').style.display = 'block' } else { document.getElementById('bedienung_schnurzug_wendestab').style.display = 'none'; if (bedienung == SCHNURZUG_WENDESTAB) {bedienung_neu = true;}  };
		if (kann_wendestab) { document.getElementById('bedienung_wendestab').style.display = 'block' } else { document.getElementById('bedienung_wendestab').style.display = 'none'; if (bedienung == WENDESTAB) {bedienung_neu = true;}  };

		if (bedienung_neu) {
				if (kann_bl_endlosschnur) bedienung = BL_ENDLOSSCHNUR
				else if (kann_schnurzug_wendestab) bedienung = SCHNURZUG_WENDESTAB
				else if (kann_bl_schnurzug_wendestab) bedienung = BL_SCHNURZUG_WENDESTAB
				else if (kann_bl_bediengriff_wendeknopf) bedienung = BL_BEDIENGRIFF_WENDEKNOPF
				else if (kann_bl_bediengriff_wendestab_b) bedienung = BL_BEDIENGRIFF_WENDESTAB_B
				else if (kann_bl_endloskette) bedienung = BL_ENDLOSKETTE
				else if (kann_schnurzug_wendeschnur) bedienung = SCHNURZUG_WENDESCHNUR
				else if (kann_knickkurbel_a) bedienung = KNICKKURBEL_A
				else if (kann_knickkurbel) bedienung = KNICKKURBEL
				else if (kann_endlosschnur) bedienung = ENDLOSSCHNUR
				else if (kann_endloskette_comfort) bedienung = ENDLOSKETTE_COMFORT
				else if (kann_endloskette_exklusiv) bedienung = ENDLOSKETTE_EXKLUSIV
				else if (kann_wendestab) bedienung = WENDESTAB;
				document.getElementById('konfigurator').bedienung[radioIndexByValue(document.getElementById('konfigurator').bedienung, bedienung)].checked = true;
		}
	


/*
		// Wahl der Bedienseite ein/ausschalten
		switch (modell) {
				case SLOPE_LINKS:
						document.getElementById('konfigurator').bedienseite[radioIndexByValue(document.getElementById('konfigurator').bedienseite, LINKS)].checked = true;
						document.getElementById('auswahl_bedienseite').style.display = 'none';
						break;
				case SLOPE_RECHTS:
						document.getElementById('konfigurator').bedienseite[radioIndexByValue(document.getElementById('konfigurator').bedienseite, RECHTS)].checked = true;
						document.getElementById('auswahl_bedienseite').style.display = 'none';
						break;
				case RECHTECK_XL:
				case RECHTECK_XXL:
				case RECHTECK:
				case DACH:
						document.getElementById('auswahl_bedienseite').style.display = 'block';
						break;
		}
*/

		// Wahl der Profilfarbe ein/ausschalten
		if (line == EXKLUSIV) {
				document.getElementById('wahl_profilfarbe').style.display = 'block';
		} else {
				document.getElementById('wahl_profilfarbe').style.display = 'none';
		}

		// Dachfensterauswahl anzeigen / ausblenden
		// Hinweis 'Dachfensterjalousien sind keine Originalprodukte der Fensterhersteller' anzeigen / ausblenden
		// Wahl der Befestigung ein/ausschalten
		if (modell == DACH) {
				document.getElementById('auswahl_dachfenster').style.display = 'block';
				document.getElementById('hinweis_dach_original').style.display = 'block';
				document.getElementById('auswahl_befestigung').style.display = 'none';
				
				document.getElementById('hinweis_bestellmasse_anlagenmasse').style.display = 'none';
				document.getElementById('hinweis_bestellmasse_fenstermasse').style.display = 'block';
		} else {
				document.getElementById('auswahl_dachfenster').style.display = 'none';
				document.getElementById('hinweis_dach_original').style.display = 'none';
				document.getElementById('auswahl_befestigung').style.display = 'block';
				
				document.getElementById('hinweis_bestellmasse_fenstermasse').style.display = 'none';
				document.getElementById('hinweis_bestellmasse_anlagenmasse').style.display = 'block';

				document.getElementById('hinweis_bestellmasse_dachfenstertyp').style.display = 'none';
				document.getElementById('btn_messen').style.display = 'block';

		}


		// Muster Anfordern anzeigen / ausblenden
		if (material == HOLZ) {		// fuer Holz-Lamellen gibt es keine Muster
				document.getElementById('btn_muster_anfordern').style.display = 'none';
		} else {
				document.getElementById('btn_muster_anfordern').style.display = 'block';
		}

		if (kannStegband(lb, bedienung)) {
				document.getElementById('wahl_stegband').style.display = 'block';
		} else {
				// stegband = 0;		
				document.getElementById('wahl_stegband_0').checked = true;
				document.getElementById('wahl_stegband').style.display = 'none';
		}

		// Masseingabe fuer Modell anzeigen
		for (var i = 40; i <= 50; i++) {		// alle Modelle
				if (i != 41) {			// VERBUND-Fenster gibt es nicht mehr
						if (i != modell) {
								document.getElementById('mass_' + i).style.display = 'none';
						}
				}
		}
		document.getElementById('mass_' + modell).style.display = 'block';
		
		// Bild neu zeichnen
		displayBemassungBild();
		
		// letztes Tab ein- / ausblenden
		if ( kannClassic(modell, lb, line) || kannStegband(lb, bedienung) ) {
				document.getElementById('tab_opt').style.display = 'block';
		} else {
				document.getElementById('tab_opt').style.display = 'none';
		};


		if (aenderung == KONFIGURATION) {
				ajax_request_stoffe();		// weil nicht jedes Design fuer jedes Modell moeglich ist
		} else {		// aenderung == DESIGN
				setMasse(modell);
				ajax_request_preisberechnung();		// das rufe ich explizit auf, wo es gebruacht wird - beim Initialisieren der Seite waere es sonst zuviel
		}

}



function setzeCheckboxAlleFarben() {
        var alle = true;
		for (var i = 0; i < document.getElementById('konfigurator').farbton.length; i++) {
				if (document.getElementById('konfigurator').farbton[i].checked == false) {
						alle = false;
						break;
				}
		}
		document.getElementById('auswahl_farbe_alle').checked = alle;
}

function farbe_gewaehlt()
{
		setzeCheckboxAlleFarben();
		ajax_request_stoffe();
}

function alleFarben()
{
                if (document.getElementById('auswahl_farbe_alle').checked == false) {
                        for (i = 0; i < document.getElementById('konfigurator').farbton.length; i++) {
                                document.getElementById('konfigurator').farbton[i].checked = false;
                        }
                } else {
                        for (i = 0; i < document.getElementById('konfigurator').farbton.length; i++) {
                                document.getElementById('konfigurator').farbton[i].checked = true;
                        }
                }

				ajax_request_stoffe();
}

function setzeCheckboxAlleTransparenzen() {
        var alle = true;

		for (var i = 0; i < document.getElementById('konfigurator').transparenz.length; i++) {
				if (document.getElementById('konfigurator').transparenz[i].checked == false) {
						alle = false;
						break;
				}
		}
		document.getElementById('auswahl_transparenz_alle').checked = alle;
}

function transparenz_gewaehlt()
{
		setzeCheckboxAlleTransparenzen()
		ajax_request_stoffe();
}

function alleTransparenzen()
{
                if (document.getElementById('auswahl_transparenz_alle').checked == false) {
                        for (i = 0; i < document.getElementById('konfigurator').transparenz.length; i++) {
                                document.getElementById('konfigurator').transparenz[i].checked = false;
                        }
                } else {
                        for (i = 0; i < document.getElementById('konfigurator').transparenz.length; i++) {
                                document.getElementById('konfigurator').transparenz[i].checked = true;
                        }
                }

				ajax_request_stoffe();
}

function material_gewaehlt()
{
		ajax_request_stoffe();
}


function sort_designs(field) {
		document.getElementById('konfigurator').sort_by.value = field;
		if (document.getElementById('konfigurator').asc_desc.value == 'asc') {
				document.getElementById('konfigurator').asc_desc.value = 'desc';
				
				if (field == 'min_preis') {
						document.getElementById('arr_sort_preis').innerHTML = ARR_DN;
						document.getElementById('arr_sort_design').innerHTML = '';
				} else {
						document.getElementById('arr_sort_design').innerHTML = ARR_DN;
						document.getElementById('arr_sort_preis').innerHTML = '';
				}
				
		} else {
				document.getElementById('konfigurator').asc_desc.value = 'asc';

				if (field == 'min_preis') {
						document.getElementById('arr_sort_preis').innerHTML = ARR_UP;
						document.getElementById('arr_sort_design').innerHTML = '';
				} else {
						document.getElementById('arr_sort_design').innerHTML = ARR_UP;
						document.getElementById('arr_sort_preis').innerHTML = '';
				}

		}

		ajax_request_stoffe();
}


// AJAX

// -- hier keine Meldungen anzeigen, weil der Firefox, einen Fehler bringt, wenn bereits die Seite verlassen wurde, aber das Ajaxzeugs noch laeuft
function show_exception( requestObject, ex) {
        alert("Keine AJAX-Anfrage an " + requestObject.url + " möglich: " + ex);
}

function show_failure( requestObject ) {
        alert("Fehler von Server: " + requestObject.statusText);
}

function ajax_response_stoffe(originalRequest) {

        var resp = originalRequest.responseText;
        var data = resp.evalJSON();

		if (data.alleStoffe == '') {
				gewaehltesdesign_passtzur_auswahl = false;
				$('liste_stoffe').innerHTML = '<div style="padding:8px; margin-left:10px; margin-right:10px; margin-top:180px; border:1px solid black;">F&uuml;r diese Auswahl sind leider keine Lamellen vorhanden.</div>';
		} else {
				gewaehltesdesign_passtzur_auswahl = true;

				var aStoffe = data.alleStoffe;

				var tabelle = '';
				tabelle = tabelle + '<table style="width: 100%;"><tr>';

				var design, stil, bez, picture, min_preis;

				for (var i = 0; i <= aStoffe.length-1; i++) {

						design = aStoffe[i].design;
						stil = aStoffe[i].stil;
						bez = aStoffe[i].bez;
						picture = aStoffe[i].picture;
						min_preis = aStoffe[i].min_preis;

						tabelle = tabelle + '<tr id="d_' + design + '" class="' + stil + '" onmouseover="hover=this.className; this.className=\'lih\';" onmouseout="this.className=\'' + stil + '\';" onclick="aenderung = DESIGN; ajax_request_waehleStoff(\'' + design + '\');">';
						tabelle = tabelle + '<td><input type="radio" name="choice_design" value="' + design + '"';
						if (design == document.getElementById('konfigurator').design.value) {
								tabelle = tabelle + ' checked="checked"';
						};
						tabelle = tabelle + ' /></td>';

						tabelle = tabelle + '<td align="center">';
						tabelle = tabelle + '<div class="stoffwahl_bildbox">';

						tabelle = tabelle + '<img alt="' + bez + '" title="' + bez + '" src="' + VERZ_DESIGN_KL + picture + '.jpg" class="stoffwahl_bild">';
						//if (!(passtModellVHGStoffe(modell, untermodell, pl_no))) {
						//		tabelle = tabelle + '<img alt="nicht verfügbar" title="Design für dieses Modell nicht verfügbar" src="konfigurator/design-nv-kl.gif" class="stoffwahl_layerbild">';
						//}
						tabelle = tabelle + '</div>';
						tabelle = tabelle + bez;
						tabelle = tabelle + '</td>';

						tabelle = tabelle + '<td align="center">&nbsp;';
						if (min_preis == '----') {
								tabelle = tabelle + '----';
						} else {
								tabelle = tabelle + 'ab&nbsp;' + min_preis + '&nbsp;EUR';
						}
						tabelle = tabelle + '&nbsp;</td>';
						tabelle = tabelle + '</tr>';
				}

				tabelle = tabelle + '</tr></table>';

				$('liste_stoffe').innerHTML = tabelle;
		}

		// Element.hide( $('ajax_lade') );
		if (data.alternativdesign != '') {
				aenderung = DESIGN;
				ajax_request_waehleStoff(data.alternativdesign);		// wenn das Design nicht mehr in der Liste vorhanden ist
		} else if (document.getElementById('einzelpreis').innerHTML == '0') {
				ajax_request_waehleStoff(document.getElementById('konfigurator').design.value);		// wenn noch nie ajax_request_waehleStoff() aufgerufen wurde
		} else {

				// globales line neu setzen - es kann sein, dass von 'Flaechen' zu 'Rechteck' geschalten wird, dann wird der Stoff nicht neu geladen, aber line muss neu gesetzt werden
				var modell = document.getElementById('konfigurator').modell[radioSelectedIndex(document.getElementById('konfigurator').modell)].value * 1;
				line = getLineNr(modell, pl_no, material)
				ajax_request_preisberechnung();

				// da wir pl_no nicht mehr kennen, muss der stoff neu geladen werden
				// ajax_request_waehleStoff(document.getElementById('konfigurator').design.value);
		}

}

function ajax_request_stoffe() {

		// line - globaler parameter

		var parameter_farbton = '';
		var parameter_transparenz = '';
		var parameter_material = '';
		var anz_parameter = 0;
		
		var aCheckboxen;		// zum cachen

		anz_parameter = 0;
		aCheckboxen = document.getElementById('konfigurator').farbton;
		for (var i = 0; i < aCheckboxen.length; i++) {
				if (aCheckboxen[i].checked) {
						anz_parameter = anz_parameter + 1;
						if (anz_parameter > 1) {
								parameter_farbton = parameter_farbton + '&';
						}
						parameter_farbton = parameter_farbton + 'farbton=' + aCheckboxen[i].value;
				}
		}

		aCheckboxen = document.getElementById('konfigurator').transparenz;
		anz_parameter = 0;
		for (var i = 0; i < aCheckboxen.length; i++) {
				if (aCheckboxen[i].checked) {
						anz_parameter = anz_parameter + 1;
						if (anz_parameter > 1) {
								parameter_transparenz = parameter_transparenz + '&';
						}
						parameter_transparenz = parameter_transparenz + 'transparenz=' + aCheckboxen[i].value;
				}
		}

		aCheckboxen = document.getElementById('konfigurator').material;
		anz_parameter = 0;
		for (var i = 0; i < aCheckboxen.length; i++) {
				if (aCheckboxen[i].checked) {
						anz_parameter = anz_parameter + 1;
						if (anz_parameter > 1) {
								parameter_material = parameter_material + '&';
						}
						parameter_material = parameter_material + 'material=' + aCheckboxen[i].value;
				}
		}

        Element.show( $('ajax_lade') );         // Ladegrafik einblenden
        var myAjax = new Ajax.Request(
            'konfigurator/ajax-getstoffe.asp',
            {   method: 'post',
                // parameters: Form.serialize($('forumlar')),
                parameters: 'modell=' + document.getElementById('konfigurator').modell[radioSelectedIndex(document.getElementById('konfigurator').modell)].value +
							'&design=' + document.getElementById('konfigurator').design.value +
                            '&sort_by=' + document.getElementById('konfigurator').sort_by.value +
                            '&asc_desc=' + document.getElementById('konfigurator').asc_desc.value +
							'&lb=' + document.getElementById('konfigurator').lb[radioSelectedIndex(document.getElementById('konfigurator').lb)].value +
							'&' + parameter_farbton +
							'&' + parameter_transparenz +
							'&' + parameter_material +
							'&line=' + line,

                onComplete: ajax_response_stoffe,
                // onSuccess:   show_datum,
                onFailure:   show_failure,
                onException: show_exception
            }
        );
}

function ajax_response_waehleStoff(originalRequest) {
        var data = originalRequest.responseText.evalJSON();
        $('des_bez').innerHTML = data.jd_bez;
		$('zsf_des_bez').innerHTML = data.jd_bez;
        document.getElementById('konfigurator').design.value = data.jd_dessin;
        $('des_text').innerHTML = data.jd_text;
        $('bild_gr').innerHTML = '<img alt="' + data.jd_bez + '" src="' + VERZ_DESIGN_GR + data.jd_picture + '.jpg" style="width: 240px;" />';
        $('zsf_bild_kl').innerHTML = '<img src="' + VERZ_DESIGN_KL + data.jd_picture + '.jpg" alt="' + data.jd_bez + '" align="middle" style="border: 1px solid #CCCCCC;" />'
        des_bild = data.jd_picture;
		material = data.jm_no;
		
		var modell = document.getElementById('konfigurator').modell[radioSelectedIndex(document.getElementById('konfigurator').modell)].value * 1;

		pl_no = data.jd_pl_no;

		// document.getElementById('konfigurator').elements['choice_design'].checked = true;
		if (typeof(document.getElementById('konfigurator').choice_design) != 'undefined') {		// falls ueberhaupt mindestens ein Eintrag existiert
				if (document.getElementById('konfigurator').choice_design[0]) {		// falls es hier sich um ein Array handelt (mehr als ein Element)
						document.getElementById('konfigurator').choice_design[radioIndexByValue(document.getElementById('konfigurator').choice_design, data.jd_dessin)].checked = true;
				} else {
						document.getElementById('konfigurator').choice_design.checked = true;
				}
		}

		// Bild Stofffarbe neu zeichnen
		// Tabs neu einfaerben
        if (data.jd_rgb != '') {
				document.getElementById('bemassung_bild_rechteck').style.backgroundImage = '';
                document.getElementById('bemassung_bild_rechteck').style.backgroundColor = '#' + data.jd_rgb;
				document.getElementById('bemassung_bild_slope_h_auf').style.backgroundImage = '';
                document.getElementById('bemassung_bild_slope_h_auf').style.backgroundColor = '#' + data.jd_rgb;
				document.getElementById('bemassung_bild_slope_h_ab').style.backgroundImage = '';
                document.getElementById('bemassung_bild_slope_h_ab').style.backgroundColor = '#' + data.jd_rgb;
				document.getElementById('bemassung_bild_trapez_t').style.backgroundImage = '';
                document.getElementById('bemassung_bild_trapez_t').style.backgroundColor = '#' + data.jd_rgb;
				document.getElementById('bemassung_bild_dreieck_k_auf').style.backgroundImage = '';
                document.getElementById('bemassung_bild_dreieck_k_auf').style.backgroundColor = '#' + data.jd_rgb;
				document.getElementById('bemassung_bild_dreieck_k_ab').style.backgroundImage = '';
                document.getElementById('bemassung_bild_dreieck_k_ab').style.backgroundColor = '#' + data.jd_rgb;
				document.getElementById('bemassung_bild_fuenfeck_g_auf').style.backgroundImage = '';
                document.getElementById('bemassung_bild_fuenfeck_g_auf').style.backgroundColor = '#' + data.jd_rgb;
				document.getElementById('bemassung_bild_fuenfeck_g_ab').style.backgroundImage = '';
                document.getElementById('bemassung_bild_fuenfeck_g_ab').style.backgroundColor = '#' + data.jd_rgb;
				document.getElementById('bemassung_bild_flaechen').style.backgroundImage = '';
                document.getElementById('bemassung_bild_flaechen').style.backgroundColor = '#' + data.jd_rgb;
				document.getElementById('bemassung_bild_dach').style.backgroundImage = '';
                document.getElementById('bemassung_bild_dach').style.backgroundColor = '#' + data.jd_rgb;

				document.getElementById('tabs_balken').style.backgroundColor = '#' + data.jd_rgb;
				document.getElementById('tabnavi0_1').style.backgroundColor = '#' + data.jd_rgb;
				document.getElementById('tabnavi0_2').style.backgroundColor = '#' + data.jd_rgb;
				document.getElementById('tabnavi0_3').style.backgroundColor = '#' + data.jd_rgb;
        } else {
                document.getElementById('bemassung_bild_rechteck').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.jd_picture + '.jpg)';
				document.getElementById('bemassung_bild_slope_h_auf').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.jd_picture + '.jpg)';
				document.getElementById('bemassung_bild_slope_h_ab').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.jd_picture + '.jpg)';
				document.getElementById('bemassung_bild_trapez_t').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.jd_picture + '.jpg)';
				document.getElementById('bemassung_bild_dreieck_k_auf').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.jd_picture + '.jpg)';
				document.getElementById('bemassung_bild_dreieck_k_ab').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.jd_picture + '.jpg)';
				document.getElementById('bemassung_bild_fuenfeck_g_auf').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.jd_picture + '.jpg)';
				document.getElementById('bemassung_bild_fuenfeck_g_ab').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.jd_picture + '.jpg)';
				document.getElementById('bemassung_bild_flaechen').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.jd_picture + '.jpg)';
				document.getElementById('bemassung_bild_dach').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.jd_picture + '.jpg)';

				document.getElementById('tabs_balken').style.backgroundColor = '#E8DB97';	// "Raumtextilien-Braun"
				document.getElementById('tabnavi0_1').style.backgroundColor = '#E8DB97';
				document.getElementById('tabnavi0_2').style.backgroundColor = '#E8DB97';
				document.getElementById('tabnavi0_3').style.backgroundColor = '#E8DB97';
        }

		// grosses Mouseover-Fenster setzen
		design_detail = '';
		design_detail = design_detail + '<div class="detail">';
				design_detail = design_detail + '<h1 style="background-color: #' + data.jd_rgb + ';">Detailansicht</h1>';
				design_detail = design_detail + '<table style="width: 380px;"><tr><td>';
				design_detail = design_detail + '<h2>' + data.jd_bez + '</h2>';
				design_detail = design_detail + '</td><td>';
				design_detail = design_detail + '<span class="det_key">Material:</span> ' + data.jm_bez + '<br />';
				design_detail = design_detail + '</td></tr></table>';
				design_detail = design_detail + '<img src="' + VERZ_DESIGN_GR + data.jd_picture + '.jpg" alt="" />';
				design_detail = design_detail + '</td></tr></table>';
		design_detail = design_detail + '</div>';
		design_detail.replace('<', '&lt;');
		design_detail.replace('>', '&gt;');
		design_detail.replace('"', '&quot;');

		if (aenderung == KONFIGURATION) {
				setMasse(modell);
				ajax_request_preisberechnung();
		} else {		// aenderung == DESIGN
				aendereModell(0);
		}
}

function ajax_request_waehleStoff(design) {

		Element.show( $('ajax_lade') );         // Ladegrafik einblenden
		var myAjax = new Ajax.Request(
			'konfigurator/ajax-getdesign.asp',
			{   method: 'post',
				// parameters: Form.serialize($('forumlar')),
				parameters: 'design=' + design +
							'&modell=' + document.getElementById('konfigurator').modell[radioSelectedIndex(document.getElementById('konfigurator').modell)].value,
				onComplete: ajax_response_waehleStoff,
				// onSuccess:   show_datum,
				onFailure:   show_failure,
				onException: show_exception
			}
		);

		var dess;		// stil_elem ist global definiert

		// altes gewaehltes Element
		dess = 'd_' + document.getElementById('konfigurator').design.value;
		if (document.getElementById(dess)) {
				document.getElementById(dess).className = stil_elem;
				document.getElementById(dess).onmouseout = function(evt){this.className=stil_elem;};
				document.getElementById(dess).onmouseover = function(evt){hover=this.className; this.className='lih';};
		}

		// neues gewaehltes Element
		dess = 'd_' + design;
		if (document.getElementById(dess)) {
				stil_elem = hover;      // globale Variablen
				document.getElementById(dess).className = 'lig';
				document.getElementById(dess).onmouseout = function(evt){this.className='lig';};
				document.getElementById(dess).onmouseover = function(evt){this.className='lih';};
		}

}


function ajax_response_preisberechnung(originalRequest) {

        var data = originalRequest.responseText.evalJSON();
		var preis = 0;

		// Grundpreis
        preis = data.preis;

		// Aufpreise
		/*
		if (data.aufpreis_in_glasleiste > 0) { $('aufpreis_in_glasleiste').innerHTML = '(+&nbsp;' + data.aufpreis_in_glasleiste + '&nbsp;&euro;)'; } else { $('aufpreis_in_glasleiste').innerHTML = ''; };
		if (data.aufpreis_in_fensternische > 0) { $('aufpreis_in_fensternische').innerHTML = '(+&nbsp;' + data.aufpreis_in_fensternische + '&nbsp;&euro;)'; } else { $('aufpreis_in_fensternische').innerHTML = ''; };
		if (data.aufpreis_vor_fensternische > 0) { $('aufpreis_vor_fensternische').innerHTML = '(+&nbsp;' + data.aufpreis_vor_fensternische + '&nbsp;&euro;)'; } else { $('aufpreis_vor_fensternische').innerHTML = ''; };
		if (data.aufpreis_auf_fensterfluegel_traeger > 0) { $('aufpreis_auf_fensterfluegel_traeger').innerHTML = '(+&nbsp;' + data.aufpreis_auf_fensterfluegel_traeger + '&nbsp;&euro;)'; } else { $('aufpreis_auf_fensterfluegel_traeger').innerHTML = ''; };
		if (data.aufpreis_auf_fensterfluegel_winkel > 0) { $('aufpreis_auf_fensterfluegel_winkel').innerHTML = '(+&nbsp;' + data.aufpreis_auf_fensterfluegel_winkel + '&nbsp;&euro;)'; } else { $('aufpreis_auf_fensterfluegel_winkel').innerHTML = ''; };

		if (data.aufpreis_bl_endlosschnur > 0) { $('aufpreis_bl_endlosschnur').innerHTML = '(+&nbsp;' + data.aufpreis_bl_endlosschnur + '&nbsp;&euro;)'; } else { $('aufpreis_bl_endlosschnur').innerHTML = ''; };
		if (data.aufpreis_bl_schnurzug_wendestab > 0) { $('aufpreis_bl_schnurzug_wendestab').innerHTML = '(+&nbsp;' + data.aufpreis_bl_schnurzug_wendestab + '&nbsp;&euro;)'; } else { $('aufpreis_bl_schnurzug_wendestab').innerHTML = ''; };
		if (data.aufpreis_bl_bediengriff_wendeknopf > 0) { $('aufpreis_bl_bediengriff_wendeknopf').innerHTML = '(+&nbsp;' + data.aufpreis_bl_bediengriff_wendeknopf + '&nbsp;&euro;)'; } else { $('aufpreis_bl_bediengriff_wendeknopf').innerHTML = ''; };
		if (data.aufpreis_bl_bediengriff_wendestab_b > 0) { $('aufpreis_bl_bediengriff_wendestab_b').innerHTML = '(+&nbsp;' + data.aufpreis_bl_bediengriff_wendestab_b + '&nbsp;&euro;)'; } else { $('aufpreis_bl_bediengriff_wendestab_b').innerHTML = ''; };
		if (data.aufpreis_bl_endloskette > 0) { $('aufpreis_bl_endloskette').innerHTML = '(+&nbsp;' + data.aufpreis_bl_endloskette + '&nbsp;&euro;)'; } else { $('aufpreis_bl_endloskette').innerHTML = ''; };
		if (data.aufpreis_schnurzug_wendeschnur > 0) { $('aufpreis_schnurzug_wendeschnur').innerHTML = '(+&nbsp;' + data.aufpreis_schnurzug_wendeschnur + '&nbsp;&euro;)'; } else { $('aufpreis_schnurzug_wendeschnur').innerHTML = ''; };
		if (data.aufpreis_knickkurbel_a > 0) { $('aufpreis_knickkurbel_a').innerHTML = '(+&nbsp;' + data.aufpreis_knickkurbel_a + '&nbsp;&euro;)'; } else { $('aufpreis_knickkurbel_a').innerHTML = ''; };
		if (data.aufpreis_knickkurbel > 0) { $('aufpreis_knickkurbel').innerHTML = '(+&nbsp;' + data.aufpreis_knickkurbel + '&nbsp;&euro;)'; } else { $('aufpreis_knickkurbel').innerHTML = ''; };
		if (data.aufpreis_endlosschnur > 0) { $('aufpreis_endlosschnur').innerHTML = '(+&nbsp;' + data.aufpreis_endlosschnur + '&nbsp;&euro;)'; } else { $('aufpreis_endlosschnur').innerHTML = ''; };
		if (data.aufpreis_endloskette_comfort > 0) { $('aufpreis_endloskette_comfort').innerHTML = '(+&nbsp;' + data.aufpreis_endloskette_comfort + '&nbsp;&euro;)'; } else { $('aufpreis_endloskette_comfort').innerHTML = ''; };
		if (data.aufpreis_endloskette_exklusiv > 0) { $('aufpreis_endloskette_exklusiv').innerHTML = '(+&nbsp;' + data.aufpreis_endloskette_exklusiv + '&nbsp;&euro;)'; } else { $('aufpreis_endloskette_exklusiv').innerHTML = ''; };
		if (data.aufpreis_schnurzug_wendestab > 0) { $('aufpreis_schnurzug_wendestab').innerHTML = '(+&nbsp;' + data.aufpreis_schnurzug_wendestab + '&nbsp;&euro;)'; } else { $('aufpreis_schnurzug_wendestab').innerHTML = ''; };

		if (data.aufpreis_neigung_45 > 0) { $('aufpreis_neigung_45').innerHTML = '(+&nbsp;' + data.aufpreis_neigung_45 + '&nbsp;&euro;)'; } else { $('aufpreis_neigung_45').innerHTML = ''; };
		if (data.aufpreis_neigung_46 > 0) { $('aufpreis_neigung_46').innerHTML = '(+&nbsp;' + data.aufpreis_neigung_46 + '&nbsp;&euro;)'; } else { $('aufpreis_neigung_46').innerHTML = ''; };

		if (data.aufpreis_seitenf > 0) { $('aufpreis_seitenf').innerHTML = '(+&nbsp;' + data.aufpreis_seitenf + '&nbsp;&euro;)'; } else { $('aufpreis_seitenf').innerHTML = ''; };
		*/
		// da es zu grossen Verwirrungen kam, weil die Preisaenderung der einen Option auch die Preisaenderung anderer bereits gewaehlter Optionen nach sich zog, haben wir uns entschieden, nur noch anzuzeigen, dass es einen Aufpreis gibt, und nicht mehr die Hoehe
		if (data.aufpreis_in_glasleiste > 0) { $('aufpreis_in_glasleiste').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_in_glasleiste').innerHTML = ''; };
		if (data.aufpreis_in_fensternische > 0) { $('aufpreis_in_fensternische').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_in_fensternische').innerHTML = ''; };
		if (data.aufpreis_vor_fensternische > 0) { $('aufpreis_vor_fensternische').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_vor_fensternische').innerHTML = ''; };
		if (data.aufpreis_auf_fensterfluegel_traeger > 0) { $('aufpreis_auf_fensterfluegel_traeger').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_auf_fensterfluegel_traeger').innerHTML = ''; };
		if (data.aufpreis_auf_fensterfluegel_winkel > 0) { $('aufpreis_auf_fensterfluegel_winkel').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_auf_fensterfluegel_winkel').innerHTML = ''; };

		if (data.aufpreis_bl_endlosschnur > 0) { $('aufpreis_bl_endlosschnur').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_bl_endlosschnur').innerHTML = ''; };
		if (data.aufpreis_bl_schnurzug_wendestab > 0) { $('aufpreis_bl_schnurzug_wendestab').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_bl_schnurzug_wendestab').innerHTML = ''; };
		if (data.aufpreis_bl_bediengriff_wendeknopf > 0) { $('aufpreis_bl_bediengriff_wendeknopf').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_bl_bediengriff_wendeknopf').innerHTML = ''; };
		if (data.aufpreis_bl_bediengriff_wendestab_b > 0) { $('aufpreis_bl_bediengriff_wendestab_b').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_bl_bediengriff_wendestab_b').innerHTML = ''; };
		if (data.aufpreis_bl_endloskette > 0) { $('aufpreis_bl_endloskette').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_bl_endloskette').innerHTML = ''; };
		if (data.aufpreis_schnurzug_wendeschnur > 0) { $('aufpreis_schnurzug_wendeschnur').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_schnurzug_wendeschnur').innerHTML = ''; };
		if (data.aufpreis_knickkurbel_a > 0) { $('aufpreis_knickkurbel_a').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_knickkurbel_a').innerHTML = ''; };
		if (data.aufpreis_knickkurbel > 0) { $('aufpreis_knickkurbel').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_knickkurbel').innerHTML = ''; };
		if (data.aufpreis_endlosschnur > 0) { $('aufpreis_endlosschnur').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_endlosschnur').innerHTML = ''; };
		if (data.aufpreis_endloskette_comfort > 0) { $('aufpreis_endloskette_comfort').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_endloskette_comfort').innerHTML = ''; };
		if (data.aufpreis_endloskette_exklusiv > 0) { $('aufpreis_endloskette_exklusiv').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_endloskette_exklusiv').innerHTML = ''; };
		if (data.aufpreis_schnurzug_wendestab > 0) { $('aufpreis_schnurzug_wendestab').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_schnurzug_wendestab').innerHTML = ''; };

		if (data.aufpreis_neigung_45 > 0) { $('aufpreis_neigung_45').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_neigung_45').innerHTML = ''; };
		if (data.aufpreis_neigung_46 > 0) { $('aufpreis_neigung_46').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_neigung_46').innerHTML = ''; };

		if (data.aufpreis_seitenf > 0) { $('aufpreis_seitenf').innerHTML = '(+&nbsp;Aufpreis)'; } else { $('aufpreis_seitenf').innerHTML = ''; };


		if (preis == 0) {
				$('einzelpreis').innerHTML = '---,--';
		} else {
				$('einzelpreis').innerHTML = preis;
		}
		
        Element.hide( $('ajax_lade') );     // Ladegrafik ausblenden

}

function ajax_request_preisberechnung() {

		var seitenfuehrung; if (document.getElementById('checkbox_seitenf').checked) { seitenfuehrung = 1; } else { seitenfuehrung = 0; };

        Element.show( $('ajax_lade') );         // Ladegrafik einblenden
        var myAjax = new Ajax.Request(
            'konfigurator/ajax-preisberechnung.asp',
            {   method: 'post',
                // parameters: Form.serialize($('forumlar')),
                parameters: 'b1=' + document.getElementById('konfigurator').b1.value +
                            '&b2=' + document.getElementById('konfigurator').b2.value +
                            '&h1=' + document.getElementById('konfigurator').h1.value +
                            '&h2=' + document.getElementById('konfigurator').h2.value +
							'&modell=' + document.getElementById('konfigurator').modell[radioSelectedIndex(document.getElementById('konfigurator').modell)].value +
							'&material=' + material +
							'&pl_no=' + pl_no +
							'&lb=' + document.getElementById('konfigurator').lb[radioSelectedIndex (document.getElementById('konfigurator').lb)].value +
							'&bedienung=' + document.getElementById('konfigurator').bedienung[radioSelectedIndex (document.getElementById('konfigurator').bedienung)].value +
							'&befestigung=' + document.getElementById('konfigurator').befestigung[radioSelectedIndex (document.getElementById('konfigurator').befestigung)].value +
							'&seitenfuehrung=' + seitenfuehrung +
							'&d_neigung=' + document.getElementById('konfigurator').d_neigung[radioSelectedIndex (document.getElementById('konfigurator').d_neigung)].value +
							'&classic=' + document.getElementById('konfigurator').classic[radioSelectedIndex (document.getElementById('konfigurator').classic)].value +
							'&stegband=' + document.getElementById('konfigurator').stegband[radioSelectedIndex (document.getElementById('konfigurator').stegband)].value,
							onComplete: ajax_response_preisberechnung,
                // onSuccess:   show_datum,
                onFailure:   show_failure,
                onException: show_exception
            }
        );

}


function ajax_response_dachfensterdaten(originalRequest) {

        var resp = originalRequest.responseText;
        var data = resp.evalJSON();
		
		if (data.opt == 0) {
				aHersteller = data.hersteller;
                for (var i = 0; i <= aHersteller.length-1; i++) {
                        document.getElementById('konfigurator').d_hersteller.options[document.getElementById('konfigurator').d_hersteller.length] = new Option(aHersteller[i], aHersteller[i]);
                }
                document.getElementById('konfigurator').d_hersteller.options[document.getElementById('konfigurator').d_hersteller.length] = new Option(sonstige, sonstige);
				
				// und jetzt schon was auswaehelen
				if (d_hersteller != '') {
						for (i = 0; i < document.getElementById('konfigurator').d_hersteller.length; i++)
								if (document.getElementById('konfigurator').d_hersteller.options[i].value == d_hersteller)
										document.getElementById('konfigurator').d_hersteller.options[i].selected = true;
						setzeMasse(1, true);
				}
				
		} else if (data.opt == 1) {
				aProdukt = data.produkt;
			    for (var i = 0; i <= aProdukt.length-1; i++) {
						document.getElementById('konfigurator').d_produkt.options[document.getElementById('konfigurator').d_produkt.length] = new Option(aProdukt[i], aProdukt[i]);
				}
				document.getElementById('konfigurator').d_produkt.options[document.getElementById('konfigurator').d_produkt.length] = new Option(sonstige, sonstige);
				
				// und jetzt schon was auswaehelen
				if (d_produkt != '') {
						for (i = 0; i < document.getElementById('konfigurator').d_produkt.length; i++)
								if (document.getElementById('konfigurator').d_produkt.options[i].value == d_produkt)
										document.getElementById('konfigurator').d_produkt.options[i].selected = true;
						setzeMasse(2, true);
				}

		} else if (data.opt == 2) {
				aTyp = data.typ;
				for (var i = 0; i <= aTyp.length-1; i++) {
						document.getElementById('konfigurator').d_typ.options[document.getElementById('konfigurator').d_typ.length] = new Option(aTyp[i], aTyp[i]);
				}
				document.getElementById('konfigurator').d_typ.options[document.getElementById('konfigurator').d_typ.length] = new Option(sonstige, sonstige);
				
				// und jetzt schon was auswaehelen
				if (d_typ != '') {
						for (i = 0; i < document.getElementById('konfigurator').d_typ.length; i++)
								if (document.getElementById('konfigurator').d_typ.options[i].value == d_typ)
										document.getElementById('konfigurator').d_typ.options[i].selected = true;
						setzeMasse(3, true);
				}

		} else if (data.opt == 3) {
				document.getElementById('konfigurator').elements['mass_' + DACH + '_b1'].value = data.breit;
				document.getElementById('konfigurator').elements['mass_' + DACH + '_h1'].value = data.hoch;
				setMasse(DACH);
				ajax_request_preisberechnung();
		}
        Element.hide( $('ajax_lade') );         // Ladegrafik ausblenden

}

function ajax_request_dachfensterdaten(opt, hersteller, produkt, typ) {

        Element.show( $('ajax_lade') );         // Ladegrafik einblenden
        var myAjax = new Ajax.Request(
            'konfigurator/ajax-dachfensterdaten.asp',
            {   method: 'post',
                // parameters: Form.serialize($('forumlar')),
                parameters: 'opt=' + opt +
							'&hersteller=' + hersteller +
							'&produkt=' + produkt +
							'&typ=' + typ,

                onComplete: ajax_response_dachfensterdaten,
                // onSuccess:   show_datum,
                onFailure:   show_failure,
                onException: show_exception
            }
        );

}

function warenkorb() {

		var modell = document.getElementById('konfigurator').modell[radioSelectedIndex(document.getElementById('konfigurator').modell)].value * 1;
		var b1 = document.getElementById('konfigurator').b1.value * 1;
		var b2 = document.getElementById('konfigurator').b2.value * 1;
		var h1 = document.getElementById('konfigurator').h1.value * 1;
		var h2 = document.getElementById('konfigurator').h2.value * 1;
		
		var dach_genormt = false;
		var dach_ungenormt = false;
		if (modell == DACH) {
				if
					(document.getElementById('konfigurator').d_hersteller[document.getElementById('konfigurator').d_hersteller.selectedIndex].value=='' ||
					 document.getElementById('konfigurator').d_hersteller[document.getElementById('konfigurator').d_hersteller.selectedIndex].value=='---------' ||
					 document.getElementById('konfigurator').d_hersteller[document.getElementById('konfigurator').d_hersteller.selectedIndex].value=='Sonstige' ||
					 document.getElementById('konfigurator').d_produkt[document.getElementById('konfigurator').d_produkt.selectedIndex].value=='' ||
					 document.getElementById('konfigurator').d_produkt[document.getElementById('konfigurator').d_produkt.selectedIndex].value=='---------' ||
					 document.getElementById('konfigurator').d_produkt[document.getElementById('konfigurator').d_produkt.selectedIndex].value=='Sonstige' ||
					 document.getElementById('konfigurator').d_typ[document.getElementById('konfigurator').d_typ.selectedIndex].value=='' ||
					 document.getElementById('konfigurator').d_typ[document.getElementById('konfigurator').d_typ.selectedIndex].value=='---------' ||
					 document.getElementById('konfigurator').d_typ[document.getElementById('konfigurator').d_typ.selectedIndex].value=='Sonstige'
					 ) {
						dach_ungenormt = true;
				} else {
						dach_genormt = true;
				}
		}


		// Fluegelbreite muss groesser gleich Glasbreite sein
		if (dach_ungenormt == true && b2 > b1) {
				
				alert('Bestellung nicht möglich!\nDie Glasbreite muss kleiner oder gleich der Flügelbreite sein.\nKorrigieren Sie bitte die eingegebenen Maße. Lesen Sie ggf. nochmal die Messanleitung.');

		} else if (dach_ungenormt == true && h2 > h1) {
				
				alert('Bestellung nicht möglich!\nDie Glashöhe muss kleiner oder gleich der Flügelhöhe sein.\nKorrigieren Sie bitte die eingegebenen Maße. Lesen Sie ggf. nochmal die Messanleitung.');

/*
		} else if (dach_ungenormt == true && document.getElementById('konfigurator').notizen.value == '')
				{	// Dachfenster, und Notizfeld leer und kein Dachfenstermodell / Typ / Hersteller angegeben
				alert('Bitte tragen Sie zusaetzliche Informationen\nzu Ihrem Dachfenster in die Hinweisbox ein!\n(Hersteller, Produkt, Typ, ...)\n\nUeberpruefen Sie Ihre Masse!');
*/
		} else if (dach_ungenormt == true
					 &&
					 (
							document.getElementById('konfigurator').b2.value == '' || document.getElementById('konfigurator').b2.value == '0' ||
							document.getElementById('konfigurator').h2.value == '' || document.getElementById('konfigurator').h2.value == '0' ||
							document.getElementById('konfigurator').elements['mass_' + DACH + '_tgl'].value == '' || document.getElementById('konfigurator').elements['mass_' + DACH + '_tgl'].value == '0'
					 )
					) {	// Dachfenster, kein Dachfenstermodell / Typ / Hersteller angegeben und nicht alle Masse komplett ausgefuellt
				alert('Bitte wählen Sie entweder Hersteller, Produkt und Typ Ihres Dachfensters, oder\nfüllen Sie alle Maßfelder, insbesondere auch Glasbreite, Glashöhe und Glasleistentiefe, mit Eingaben aus!');
		} else if ((modell == SLOPE_H_AUF || modell == FUENFECK_G_AUF) && (h1 >= h2)) {

				alert('Beachten Sie bitte, dass die linke Höhe kleiner als die rechte Höhe sein muss.\nKorrigieren Sie bitte Ihre Maßangaben. Wählen Sie gegebenenfalls ein anderes Modell!');

		} else if ((modell == SLOPE_H_AB || modell == FUENFECK_G_AB) && (h1 <= h2)) {

				alert('Beachten Sie bitte, dass die linke Höhe größer als die rechte Höhe sein muss.\nKorrigieren Sie bitte Ihre Maßangaben. Wählen Sie gegebenenfalls ein anderes Modell!');
				
		} else if (gewaehltesdesign_passtzur_auswahl == false) {
		
				alert('Bestellung nicht möglich.\nFür Ihre Auswahlkriterien die Sie im Tab "Lamellen/Muster" getroffen haben, gibt es leider kein passendes Design.');

		} else if (document.getElementById('einzelpreis').innerHTML == '0') {

				alert('Die gewählte Konfiguration ist so nicht realisierbar!');

		} else if (confirm(document.getElementById('konfigurator').menge.value + ' Stück des gewählten Artikels\nin den Warenkorb legen ?' )) {

				if (document.getElementById('konfigurator').notizen.value == INIT_NOTIZEN) {
						document.getElementById('konfigurator').notizen.value = '';
				};
				document.getElementById('konfigurator').submit();

		}
}

// MouseOver-Texte

var infos = ''
+ 'Klicken Sie hier um weitere Informationen zu diesem Produkt zu erhalten.';

var h_neigung = ''
+ '<div align="center">'
+ '<h2>Neigung</h2>'
+ '<img src="konfigurator/h_neigung.gif">'
+ '</div>'
+ '<ul>'
+ '<li>Eine Neigung der Jalousie für Dachfenster ist bis 45° möglich.</li>'
+ '<li>Bei 46&deg&nbsp;-&nbsp;60&deg werden die Lamellen zwischen Leiterkordeln geführt (Aufpreis).</li>'
+ '<li>Neigungen größer als 60&deg sind nicht möglich.</li>'
+ '</ul>';

var h_seitenfuehrung = ''
+ '<h3>Seitenverspannung</h3>'
+ 'Eine <b>Seitenverspannung</b>, auch <b>Seitenführung</b> oder <b>Pendelsicherung</b> genannt, '
+ 'verhindert wirkungsvoll das Pendeln der Jalousie.';

var h_blende = ''
+ '<h3>Abdeckblende f&uuml;r die Montage in die Glasleiste.</h3>'
+ ' Durch die Montage mit Spezialtr&auml;gern in die Glasleiste'
+ ' 20mm (Exklusiv-Line) bzw. 15mm'
+ ' nach innen (Mindestglasleistenbreite) steht die Jalousie nur'
+ ' 15mm (Exklusiv-Line) bzw. 17mm au&szlig;en &uuml;ber.'
+ ' Au&szlig;erdem werden die Oberschiene, sowie die Tr&auml;ger und Schrauben durch die Abdeckblende verdeckt.<br />'
+ ' Blendenfarbe: wei&szlig; (Comfort-Line) bzw. wei&szlig; (Standard) oder grau, bronze, schwarz m&ouml;glich. (bei Bedarf bitte in das Sonderw&uuml;nsche-Textfeld eintragen.)';

