
var akt_tab = 1;				// aktuell gewaehltes Tab
var modell_vorher = 0;			// wenn neues Modell gewaehlt wird, dann beinhaltet die Variable, das alte, vorher gewaehlte, Modell
var vhg_moeglich = 0;			// weiss, ob fuer das gewaehlte Modell VHG-Stoffe moeglich sind
var konfigurationOK = 1;		// prueft ob Konfiguration moeglich ist
var pl_no = 0;					// Preisgruppe
var farbe_stoff = '';			// Der RGB-Wert des gewaehlten Stoffes

// Caching	- Der Performance fuehre ich diese globalen Variablen ein, damit der Wert nicht immer mittels document.getElementById('konfigurator').modell[radioSelectedIndex(document.getElementById('konfigurator').modell)].value ausgelesen werden muss
var modell = 0;
var untermodell = 0;
var kassettenform = 0;
var bedienung = 0;

function showHint(field) {
		document.getElementById('hinweisboxen').style.display = 'none';
		document.getElementById('btn_stoffprobe').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_stoffprobe').style.display = 'block';
}

function hideHints() {
		document.getElementById('hinweisbilder').style.display = 'none';
		document.getElementById('hinweisboxen').style.display = 'block';
		document.getElementById('btn_stoffprobe').style.display = 'block';
}

function updateHintFluegelTyp() {

		d_hersteller = document.getElementById('konfigurator').d_hersteller.options[document.getElementById('konfigurator').d_hersteller.selectedIndex].value;
		d_produkt = document.getElementById('konfigurator').d_produkt.options[document.getElementById('konfigurator').d_produkt.selectedIndex].value;

		if (
			d_hersteller == 'Velux' && 
			( d_produkt == 'VL' || d_produkt == 'VU' || d_produkt == 'VKU')
		) {
				showHint('fluegeltyp_aby');
				document.getElementById('konfigurator').d_typ.title = 'Welchen Typ (I, II oder Y) Ihr Dachfenster hat, erfahren Sie auf der Hilfeskizze rechts.';
		} else if (
			d_hersteller == 'Velux' && 
			( d_produkt == 'VL-Holz' || d_produkt == 'VL-PU' || d_produkt == 'VE' || d_produkt == 'VS' || d_produkt == 'VK' || d_produkt == 'VF' || d_produkt == 'VG' || d_produkt == 'VT' || d_produkt == 'VX')
		) {
				showHint('fluegeltyp_ab');
				document.getElementById('konfigurator').d_typ.title = 'Welchen Typ (I oder II) Ihr Dachfenster hat, erfahren Sie auf der Hilfeskizze rechts.';
		} else {
				hideHints();
				document.getElementById('konfigurator').d_typ.title = '';
		};

}

function getMaxMass(modell, untermodell, bedienung, mass) {

		modell = modell * 1;
		untermodell = untermodell * 1;
		bedienung = bedienung * 1;

		var maxMass = 0;
		var maxB = 0;
		var maxH = 0;

		switch (modell) {
				case RECHTECK:
						switch (untermodell) {
								case BASIS:
										switch (bedienung) {
												case MITTELZUG: maxB = 2000; maxH = 2300; break;
												case SEITENZUG: maxB = 4000; maxH = 3500; break;
										}
										break;
								case TRAEGERPROFIL:
										switch (bedienung) {
												case MITTELZUG: maxB = 2000; maxH = 2300; break;
												case SEITENZUG: maxB = 2200; maxH = 3000; break;
										}
										break;
								case MINIKASSETTE:
										switch (bedienung) {
												case SEITENZUG: maxB = 1500; maxH = 2100; break;
												case BEDIENGRIFF: maxB = 1500; maxH = 1500; break;
										}
										break;
								case MIDIKASSETTE:
										switch (bedienung) {
												case SEITENZUG: maxB = 2200; maxH = 2500; break;
												case MITTELZUG: maxB = 2200; maxH = 2300; break;
												case BEDIENGRIFF: maxB = 1500; maxH = 1700; break;
										}
										break;
								case MAXIKASSETTE:
										maxB = 4000; maxH = 3500; break;
						}
						break;
				case GLASLEISTE:
						switch (bedienung) {
								case SEITENZUG:
										maxB = 1500; maxH = 2100; break;
								case BEDIENGRIFF:
										maxB = 1500; maxH = 1500; break;
						}
						break;
				case DACH:
						switch (untermodell) {
								case BASIS:
								case BLENDE_ARRETIERUNG:
								case BLENDE_STUFENLOS:
								case MULTISTOP:
										maxB = 1300; maxH = 1400; break;
								case COMFORT:
										maxB = 1200; maxH = 1400; break;
						}
						break;
				case DOPPEL:
						switch (untermodell) {
								case TRAEGERPROFIL: maxB = 2200; maxH = 2000; break;
								case KASSETTE: maxB = 2400; maxH = 2600; break;
						}
						break;
		}

		switch (mass) {
				case 'b1':
						maxMass = maxB; break;
				case 'h1':
						maxMass = maxH; break;
		}
		return maxMass;

}

function getMinTgl(modell, untermodell) {
		untermodell = untermodell * 1;
		var minTgl = 0;

		switch(modell) {
				case GLASLEISTE:
						minTgl = 14; break;
				case DACH:
						switch (untermodell) {
								case BASIS:
										minTgl = 30; break;
								case BLENDE_ARRETIERUNG:
								case BLENDE_STUFENLOS:
										minTgl = 42; break;
								case MULTISTOP:
										minTgl = 50; break;
								case COMFORT:
										minTgl = 45; break;
						}
						break;
		}

		return minTgl;
}

function kannModellVHGStoffe(modell, untermodell) {
		if (modell == RECHTECK && (untermodell == BASIS || untermodell == TRAEGERPROFIL) || modell == DOPPEL) {
				return true;
		} else {
				return false;
		}
}

function passtModellVHGStoffe(modell, untermodell, pl_no) {
// nur falls VHG-Stoff gewaehlt, dann das Modell pruefen, fuer Erfal-Stoffe passen alle Modelle
		var modellStoffePasst = true;
		if (pl_no >= 130 && pl_no <= 149 && ! (kannModellVHGStoffe(modell, untermodell)) ) {
						modellStoffePasst = false;
		}
		return modellStoffePasst;
}

// Tabs

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);

        if (tab_new == 2) {
				document.getElementById('box_masse').style.display='none';
				document.getElementById('box_optionen').style.display='none';
                document.getElementById('box_design').style.display='block';
        } else if (tab_new == 3) {
				document.getElementById('box_design').style.display='none';
                document.getElementById('box_masse').style.display='none';
				document.getElementById('box_optionen').style.display='block';
        } else {
				document.getElementById('box_design').style.display='none';
				document.getElementById('box_optionen').style.display='none';
                document.getElementById('box_masse').style.display='block';
        }

		var farbe = new Array('#000000', '#000000', '#000000');
		farbe[tab_new - 1] = '#ffffff';
		
		if (isFarbeDunkel(farbe_stoff)) {
				document.getElementById('tabnavi0_1').style.color = farbe[0];
				document.getElementById('tabnavi0_2').style.color = farbe[1];
				document.getElementById('tabnavi0_3').style.color = farbe[2];
		} else {
				document.getElementById('tabnavi0_1').style.color = '#000000';
				document.getElementById('tabnavi0_2').style.color = '#000000';
				document.getElementById('tabnavi0_3').style.color = '#000000';
		}

		if (tab_new == TAB_MASSE) {
				document.getElementById('zsf_modell_masse').onclick = '';
				document.getElementById('zsf_modell_masse').style.cursor = '';
				document.getElementById('zsf_modell_masse').title = '';
		} else {
				document.getElementById('zsf_modell_masse').onclick = function() { activate(akt_tab, TAB_MASSE); };
				document.getElementById('zsf_modell_masse').style.cursor = 'pointer';
				document.getElementById('zsf_modell_masse').title = title = 'Klicken Sie hier um das Modell / die Maße zu &auml;ndern!';
		}
		
		if (tab_new == TAB_DESIGN) {
				document.getElementById('zsf_des_bez').onclick = '';
				document.getElementById('zsf_des_bez').style.cursor = '';
				document.getElementById('zsf_des_bez').title = '';
				document.getElementById('zsf_bild_kl').onclick = '';
				document.getElementById('zsf_bild_kl').style.cursor = '';
				document.getElementById('zsf_bild_kl').title = '';
		} else {
				document.getElementById('zsf_des_bez').onclick = function() { activate(akt_tab, TAB_DESIGN); };
				document.getElementById('zsf_des_bez').style.cursor = 'pointer';
				document.getElementById('zsf_des_bez').title = title = 'Klicken Sie hier um den Stoff / das Muster zu &auml;ndern!';
				document.getElementById('zsf_bild_kl').onclick = function() { activate(akt_tab, TAB_DESIGN); };
				document.getElementById('zsf_bild_kl').style.cursor = 'pointer';
				document.getElementById('zsf_bild_kl').title = title = 'Klicken Sie hier um den Stoff / das Muster zu &auml;ndern!';
		}

}

function highlight(tab) {
        if (akt_tab*1 != tab) {
				document.getElementById('tabnavi0_' + tab).className = 'tabnavi_oben_highlight';
				document.getElementById('tabnavi1_' + tab).className = 'tabnavi_unten_highlight';

				if (isFarbeDunkel(farbe_stoff)) {
						document.getElementById('tabnavi0_' + tab).style.color = '#ffffff'
				} else {
						document.getElementById('tabnavi0_' + tab).style.color = '#000000';
				}

        };
}

function unhighlight(tab) {
        if (akt_tab*1 != tab) {
				document.getElementById('tabnavi0_' + tab).className = 'tabnavi_oben_unhighlight';
				document.getElementById('tabnavi1_' + tab).className = 'tabnavi_unten_unhighlight';
				document.getElementById('tabnavi0_' + tab).style.color = '#000000'
        };
}

function modellKannVolant(modell, untermodell, bedienung) {
			modell = modell * 1;
			bedienung = bedienung * 1;
			untermodell = untermodell * 1;
			if (modell == RECHTECK && untermodell != MAXIKASSETTE && bedienung != BEDIENGRIFF) {			// SEITENZUG und auch MITTELZUG(!) kann VOLANT
					return true;
			} else {
					return false;
			}
}

// Tab Volantwahl ein- / ausblenden
function showhideVolantwahl() {
		// var bedienung = document.getElementById('konfigurator').bedienung[document.getElementById('konfigurator').bedienung.selectedIndex].value * 1;
		// var design_kannvolant -- globale Variable

		if (design_kannvolant != 0 && modellKannVolant(modell, untermodell, bedienung)) {
				document.getElementById('tab_optionen0').style.display = 'block';	// Tab "Optionen" oben
				document.getElementById('tab_optionen1').style.display = 'block';	// Tab "Optionen" unten

				document.getElementById('choose_volant_hinweis').style.display = 'none';
				document.getElementById('choose_volant').style.display = 'block';
		} else {
				document.getElementById('tab_optionen0').style.display = 'none';	// Tab "Optionen" oben
				document.getElementById('tab_optionen1').style.display = 'none';	// Tab "Optionen" unten

				document.getElementById('choose_volant').style.display = 'none';
				document.getElementById('choose_volant_hinweis').style.display = 'block';
				setVolant('0');
		}

}

// Volant setzen (entweder per Programm, oder wenn Nutzer auf Wahl Volant bei der Volantwahlseite klickt)
function setVolant(volant) {
		document.getElementById('id_v' + volant).checked = true;		// Falls wir das Volant vom Programm aus setzen, oder falls der Nutzer auf das Bild geklickt hat, dann den Radiobutton noch setzen!
		document.getElementById('zsf_bild_volant_img').src = 'konfigurator/volant/' + volant + '_mi.gif';
		document.getElementById('zsf_bild_volant_img').alt = 'Volant ' + volant;
		if (volant == '0') {
				document.getElementById('zsf_bild_volant').style.display = 'none';
		} else {
				document.getElementById('zsf_bild_volant').style.display = 'block';
		}

		// ajax_request_preisberechnung(); ruf ich extern nur dort auf, wo es gebruacht wird
}

function getIdbez(modell) {
		var idbez = '';
		switch (modell * 1) {
				case RECHTECK: idbez = 'rechteck'; break;
				case GLASLEISTE: idbez = 'glasleiste'; break;
				case DACH: idbez = 'dach'; break;
				case DOPPEL: idbez = 'doppel'; break;
		}
		return idbez;
}

function getKuerzelUntermodell(modell, untermodell) {
		var kuerzel = '';
		modell = modell * 1;
		untermodell = untermodell * 1;

		switch (modell) {
				case RECHTECK:
						switch (untermodell) {
								case BASIS: kuerzel = 'basis'; break;
								case TRAEGERPROFIL: kuerzel = 'traegerprofil'; break;
								case MINIKASSETTE: kuerzel = 'minikassette'; break;
								case MIDIKASSETTE: kuerzel = 'midikassette'; break;
								case MAXIKASSETTE: kuerzel = 'maxikassette'; break;
						};
						break;
				case DOPPEL:
						switch (untermodell) {
								case TRAEGERPROFIL: kuerzel = 'doppel_traegerprofil'; break;
								case KASSETTE: kuerzel = 'doppel_kassette'; break;
						};
						break;
				case DACH:
						switch (untermodell) {
								case BASIS: kuerzel = 'dach_basis'; break;
								case BLENDE_ARRETIERUNG: kuerzel = 'dach_blende_arretierung'; break;
								case BLENDE_STUFENLOS: kuerzel = 'dach_blende_stufenlos'; break;
								case MULTISTOP: kuerzel = 'dach_multistop'; break;
								case COMFORT: kuerzel = 'dach_comfort'; break;
						}
						break;
				case GLASLEISTE:
						 kuerzel = 'glasleiste'; break;
		}
		return kuerzel;
}

function getKuerzelBedienung(bedienung) {
		var kuerzel = '';
		switch (bedienung * 1) {
				case MITTELZUG: kuerzel = 'mittelzug'; break;
				case SEITENZUG: kuerzel = 'seitenzug'; break;
				case BEDIENGRIFF: kuerzel = 'bediengriff'; break;
				case KURBEL: kuerzel = 'kurbel'; break;
		}
		return kuerzel;
}

function getKuerzelSeite(seite) {
		var kuerzel = '';
		switch (seite * 1) {
				case LINKS: kuerzel = 'links'; break;
				case RECHTS: kuerzel = 'rechts'; break;
		}
		return kuerzel;
}

function getKuerzelBlende(blende) {
		var kuerzel = '';
		switch (blende * 1) {
				case 0: kuerzel = 'ohneblende'; break;
				case PVC: kuerzel = 'blendepvc'; break;
				case ALU: kuerzel = 'blendealu'; break;
		}
		return kuerzel;
}

function getKuerzelSeitenfuehrung(seitenfuehrung) {
		var kuerzel = '';
		switch (seitenfuehrung * 1) {
				case 0: kuerzel = 'ohneseitenfuehrung'; break;
				case PENDELSICHERUNG: kuerzel = 'pendelsicherung'; break;
				case SEITENPROFIL: kuerzel = 'seitenprofil'; break;
				case SEITENPROFIL_EINTEILIG: kuerzel = 'seitenprofil'; break;
				case SEITENPROFIL_ZWEITEILIG: kuerzel = 'seitenprofil'; break;
		}
		return kuerzel;
}

function getKuerzelProfilunten(profilunten) {
		var kuerzel = '';
		switch (profilunten * 1) {
				case 0: kuerzel = 'ohneprofilunten'; break;
				case EINLAUFPROFIL: kuerzel = 'einlaufprofil'; break;
		}
		return kuerzel;
}

function getKuerzelForm(form) {
		var kuerzel = '';
		switch (form * 1) {
				case RUND: kuerzel = 'rund'; break;
				case ECKIG: kuerzel = 'eckig'; break;
		}
		return kuerzel;
}

function getKuerzelFarbe(farbe) {
// diese Funktion wird verwendet fuer den Teil im Dateinamen UND fuer die Auswahl -- wenn zum Beispiel der 1. Buchstabe gross sein soll, dann muessen wir doese Funktion in 2 einzelne auftrennen
		var kuerzel = '';
		switch (farbe * 1) {
				case WEISS: kuerzel = 'weiss'; break;
				case SILBER: kuerzel = 'silber'; break;
				case SCHWARZ: kuerzel = 'schwarz'; break;
				case GRAU: kuerzel = 'grau'; break;
		}
		return kuerzel;
}

function displayModellbild() {
		// var untermodell, dachmodell
		// var bedienung = document.getElementById('konfigurator').bedienung[document.getElementById('konfigurator').bedienung.selectedIndex].value * 1;
		var seite = document.getElementById('konfigurator').bedienseite[document.getElementById('konfigurator').bedienseite.selectedIndex].value * 1;
		var profilfarbe = document.getElementById('konfigurator').profilfarbe[document.getElementById('konfigurator').profilfarbe.selectedIndex].value * 1;
		// var kassettenform = document.getElementById('konfigurator').kassettenform[document.getElementById('konfigurator').kassettenform.selectedIndex].value * 1;
		var blende = 0; if (document.getElementById('blende_pvc').checked) { blende = PVC } else if (document.getElementById('blende_alu').checked) { blende = ALU };
		var seitenfuehrung = document.getElementById('konfigurator').seitenfuehrung[document.getElementById('konfigurator').seitenfuehrung.selectedIndex].value * 1;
		var profilunten = 0; if (document.getElementById('einlaufprofil').checked) { profilunten = EINLAUFPROFIL };

		for (var i = 1; i <= 4; i++) {
				document.getElementById('mass_' + i).style.display = 'none';
		}
		document.getElementById('mass_' + modell).style.display = 'block';

		if (modell == RECHTECK || modell == DOPPEL) {
				if (modell == RECHTECK && (untermodell == MINIKASSETTE || untermodell == MAXIKASSETTE)) {
						if (bedienung == SEITENZUG || bedienung == KURBEL) {
								document.getElementById('bemassung_bild_' + getIdbez(modell)).src = VERZ_BILDER_GR + getKuerzelUntermodell(modell, untermodell) + '_' + getKuerzelFarbe(profilfarbe) + '_' + getKuerzelSeitenfuehrung(seitenfuehrung) + '_' + getKuerzelProfilunten(profilunten) + '_' + getKuerzelBedienung(bedienung) + '_' + getKuerzelSeite(seite) + '.png';
						} else {
								document.getElementById('bemassung_bild_' + getIdbez(modell)).src = VERZ_BILDER_GR + getKuerzelUntermodell(modell, untermodell) + '_' + getKuerzelFarbe(profilfarbe) + '_' + getKuerzelSeitenfuehrung(seitenfuehrung) + '_' + getKuerzelProfilunten(profilunten) + '_' + getKuerzelBedienung(bedienung) + '.png';
						}
				} else if (modell == RECHTECK && untermodell == MIDIKASSETTE) {
						if (bedienung == SEITENZUG) {
								document.getElementById('bemassung_bild_' + getIdbez(modell)).src = VERZ_BILDER_GR + getKuerzelUntermodell(modell, untermodell) + '_' + getKuerzelFarbe(profilfarbe) + '_' + getKuerzelSeitenfuehrung(seitenfuehrung) + '_' + getKuerzelProfilunten(profilunten) + '_' + getKuerzelForm(kassettenform) + '_' + getKuerzelBedienung(bedienung) + '_' + getKuerzelSeite(seite) + '.png';
						} else {
								document.getElementById('bemassung_bild_' + getIdbez(modell)).src = VERZ_BILDER_GR + getKuerzelUntermodell(modell, untermodell) + '_' + getKuerzelFarbe(profilfarbe) + '_' + getKuerzelSeitenfuehrung(seitenfuehrung) + '_' + getKuerzelProfilunten(profilunten) + '_' + getKuerzelForm(kassettenform) + '_' + getKuerzelBedienung(bedienung) + '.png';
						}
				} else {
						if (bedienung == SEITENZUG || bedienung == KURBEL) {
								document.getElementById('bemassung_bild_' + getIdbez(modell)).src = VERZ_BILDER_GR + getKuerzelUntermodell(modell, untermodell) + '_' + getKuerzelFarbe(profilfarbe) + '_' + getKuerzelSeitenfuehrung(seitenfuehrung) + '_' + getKuerzelBedienung(bedienung) + '_' + getKuerzelSeite(seite) + '.png';
						} else {
								document.getElementById('bemassung_bild_' + getIdbez(modell)).src = VERZ_BILDER_GR + getKuerzelUntermodell(modell, untermodell) + '_' + getKuerzelFarbe(profilfarbe) + '_' + getKuerzelSeitenfuehrung(seitenfuehrung) + '_' + getKuerzelBedienung(bedienung) + '.png';
						}
				}
		} else if (modell == DACH) {
				// BEDIENGRIFF
						document.getElementById('bemassung_bild_' + getIdbez(modell)).src = VERZ_BILDER_GR + getKuerzelUntermodell(modell, untermodell) + '_' + getKuerzelFarbe(profilfarbe) + '.png';
		} else {	// GLASLEISTE
				if (bedienung == SEITENZUG) {
						document.getElementById('bemassung_bild_' + getIdbez(modell)).src = VERZ_BILDER_GR + getIdbez(modell) + '_' + getKuerzelFarbe(profilfarbe) + '_' + getKuerzelBlende(blende) + '_' + getKuerzelBedienung(bedienung) + '_' + getKuerzelSeite(seite) + '.png';
				} else {
						document.getElementById('bemassung_bild_' + getIdbez(modell)).src = VERZ_BILDER_GR + getIdbez(modell) + '_' + getKuerzelFarbe(profilfarbe) + '_' + getKuerzelBlende(blende) + '_' + getKuerzelBedienung(bedienung) + '.png';
				}
		}
}

function getMglProfilfarben(modell, untermodell) {
		modell = modell * 1;
		untermodell = untermodell * 1;
		var aMglProfilfarben = new Array();
		
		switch (modell) {
				case RECHTECK:
						switch (untermodell) {
								case BASIS:
								case TRAEGERPROFIL:
								case MIDIKASSETTE:
								case MINIKASSETTE:
										aMglProfilfarben = new Array(WEISS, GRAU, SCHWARZ);
										break;
								case MAXIKASSETTE:
										aMglProfilfarben = new Array(WEISS, GRAU);
										break;
						}
						break;
				case GLASLEISTE:
						aMglProfilfarben = new Array(WEISS, GRAU, SCHWARZ);
						break;
				case DOPPEL:
						aMglProfilfarben = new Array(WEISS, GRAU);
						break;
				case DACH:
						switch (untermodell) {
								case BASIS:
										aMglProfilfarben = new Array(WEISS, GRAU, SCHWARZ);
										break;
								case BLENDE_ARRETIERUNG:
								case BLENDE_STUFENLOS:
								case MULTISTOP:
								case COMFORT:
										aMglProfilfarben = new Array(WEISS, GRAU);
										break;
						}
						break;
		}
		// aMglProfilfarben = new Array(1);			// so siehts aus, wenn wir nur eine Farbe zuweisen - "aMglProfilfarben = new Array(WEISS);" geht nicht, weil WEISS eine Konstante ist und wir sonst ein Array mit n Elementen haetten, wobei n = WEISS
		// aMglProfilfarben[0] = WEISS;
		return aMglProfilfarben;
}

function aendereProfilfarbe() {
		var profilfarbe = document.getElementById('konfigurator').profilfarbe[document.getElementById('konfigurator').profilfarbe.selectedIndex].value * 1;
		switch (profilfarbe) {
				case WEISS:
						document.getElementById('id_profilfarbe_wahl').src = '/i/farben_kl/weiss.gif';
						document.getElementById('id_profilfarbe_wahl').alt = 'weiß';
						break;
				case SILBER:
						document.getElementById('id_profilfarbe_wahl').src = '/i/farben_kl/silber.gif';
						document.getElementById('id_profilfarbe_wahl').alt = 'silber';
						break;
				case SCHWARZ:
						document.getElementById('id_profilfarbe_wahl').src = '/i/farben_kl/schwarz.gif';
						document.getElementById('id_profilfarbe_wahl').alt = 'schwarz';
						break;
				case GRAU:
						document.getElementById('id_profilfarbe_wahl').src = '/i/farben_kl/grau.gif';
						document.getElementById('id_profilfarbe_wahl').alt = 'grau';
						break;
		}
		if (profilfarbe != WEISS && modell == RECHTECK && untermodell == BASIS) {
				document.getElementById('hinweis_farbe_abdeckkappen').style.display = 'block';
		} else {
				document.getElementById('hinweis_farbe_abdeckkappen').style.display = 'none';
		}
		// displayModellbild();
}

function massGeaendertOhnePreisneuberechnung(isFinal, modell, mass) {

		var hinweis = 0;

		// 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 (alterWert != neuerWert) {
				document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value = neuerWert;
		}

		if ((modell == DACH || modell == GLASLEISTE) && mass == 'tgl') {
				if (isFinal) {
						var minTgl = getMinTgl(modell, untermodell);
						if (neuerWert < minTgl) {
								alert('Bitte beachten Sie, dass die Glasleistentiefe für dieses Modell mindestens ' + minTgl + 'mm betragen muss!');
								document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value = minTgl;
						};
				}	// else nichts tun - auch nicht in den anderen Zweig springen
		} else if (mass == 'b1' || mass == 'h1') {

				// var bedienung = document.getElementById('konfigurator').bedienung[document.getElementById('konfigurator').bedienung.selectedIndex].value * 1;

				var maxMass = getMaxMass(modell, untermodell, bedienung, mass);
				// maximale / minimale Masse pruefen
				var hinweistext = '';
				if (document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value * 1 > maxMass) {
						if (isFinal) {
								document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value = 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 (mass == 'b1') {
								document.getElementById('hinweis_' + getIdbez(modell) + '_gross_' + mass + '_blase').className = 'sprechblase3a';
								document.getElementById('hinweis_' + getIdbez(modell) + '_gross_' + mass + '_text').className = 'sprechblase3b';
						} else {
								document.getElementById('hinweis_' + getIdbez(modell) + '_gross_' + mass + '_blase').className = 'sprechblase4a';
								document.getElementById('hinweis_' + getIdbez(modell) + '_gross_' + mass + '_text').className = 'sprechblase4b';
						}
						document.getElementById('hinweis_' + getIdbez(modell) + '_gross_' + mass + '_text').innerHTML = hinweistext;
						document.getElementById('hinweis_' + getIdbez(modell) + '_gross_' + mass).style.display = 'block';
	
				} else if (document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value * 1 < 200) {
						if (isFinal) {
								document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value = 200;

								hinweistext = '<b>Maß zu klein!</b>';
								hinweistext = hinweistext + '<br />Überpruefen Sie bitte auf';
								hinweistext = hinweistext + '<br />Verwechselung der Maßeinheit!';
								hinweistext = hinweistext + '<br />(1cm = 10mm)';
								if (mass == 'b1') {
										document.getElementById('hinweis_' + getIdbez(modell) + '_gross_' + mass + '_blase').className = 'sprechblase1a';
										document.getElementById('hinweis_' + getIdbez(modell) + '_gross_' + mass + '_text').className = 'sprechblase1b';
								} else {
										document.getElementById('hinweis_' + getIdbez(modell) + '_gross_' + mass + '_blase').className = 'sprechblase2a';
										document.getElementById('hinweis_' + getIdbez(modell) + '_gross_' + mass + '_text').className = 'sprechblase2b';
								}
								document.getElementById('hinweis_' + getIdbez(modell) + '_gross_' + mass + '_text').innerHTML = hinweistext;
								document.getElementById('hinweis_' + getIdbez(modell) + '_gross_' + mass).style.display='block';
						};
				} else {
						document.getElementById('hinweis_' + getIdbez(modell) + '_gross_' + mass).style.display = 'none';
				}

				if (modell == RECHTECK && isFinal) {
						displayBefestigung();		// wegen der Befestigung - Weil die bei Basis-Rollo von der Groesse abhaengig ist
				}
		}
		
		if ( ((modell == RECHTECK || modell == DOPPEL) && (mass == 'b1' || mass == 'h1')) || ((modell == DACH || modell == GLASLEISTE) && (mass == 'b2' || mass == 'h2')) ) {
				if (mass == 'b1' || mass == 'b2') {
						document.getElementById('zsf_b_value').innerHTML = document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value;
				} else if (mass == 'h1' || mass == 'h2') {
						document.getElementById('zsf_h_value').innerHTML = document.getElementById('konfigurator').elements['mass_' + modell + '_' + mass].value;
				}
		}

}

function massGeaendert(isFinal, modell, mass) {
		massGeaendertOhnePreisneuberechnung(isFinal, modell, mass);
		setMasse(modell);
		ajax_request_preisberechnung();
}

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;
}

function displayBefestigung() {
		// var kassettenform = document.getElementById('konfigurator').kassettenform[document.getElementById('konfigurator').kassettenform.selectedIndex].value * 1;
		// var bedienung = document.getElementById('konfigurator').bedienung[document.getElementById('konfigurator').bedienung.selectedIndex].value * 1;

		var befestigung = document.getElementById('konfigurator').befestigung[radioSelectedIndex(document.getElementById('konfigurator').befestigung)].value * 1;
		var b1 = document.getElementById('konfigurator').b1.value * 1;
		var h1 = document.getElementById('konfigurator').h1.value * 1;

		if (modell == RECHTECK || modell == DOPPEL) {
				document.getElementById('auswahl_befestigung').style.display = 'block';
				var kann_standardtraeger = false;
				var kann_klemmtraeger = false;
				var kann_halteclip = false;
				var kann_profilklemmtraeger = false;
				var kann_wandwinkel = false;
				var kann_wand = false;
				var kann_nische = false;
				var kann_decke = false;
				var kann_wandwinkel_verstellbar = false;

				switch (modell) {
						case RECHTECK:
								switch(untermodell) {
										case BASIS:
												kann_standardtraeger = true;
												if (b1 <= 2000 && h1 <= 2300) {
														kann_klemmtraeger = true;
													}
												break;
										case TRAEGERPROFIL:
												kann_halteclip = true;
												kann_profilklemmtraeger = true;
												kann_wandwinkel = true;
												break;
										case MINIKASSETTE:
												kann_wand = true;
												kann_decke = true;
												kann_klemmtraeger = true;
												break;
										case MIDIKASSETTE:
												kann_halteclip = true;
												if (kassettenform == RUND) {
														if (bedienung == BEDIENGRIFF) {		// verspanntes Rollo
																kann_klemmtraeger = true;
														} else {
																kann_profilklemmtraeger = true;
																kann_wandwinkel_verstellbar = true;
																kann_wandwinkel = true;
														}
												} else {		// ECKIG
														kann_profilklemmtraeger = true;
														kann_wandwinkel = true;
														kann_wandwinkel_verstellbar = true;
												}

												break;
										case MAXIKASSETTE:
														kann_wand = true;
														kann_nische = true;
														kann_decke = true;
												break;
								} break;
						case DOPPEL:
								switch(untermodell) {
										case TRAEGERPROFIL:
												kann_halteclip = true;
												kann_profilklemmtraeger = true;
												kann_wandwinkel_verstellbar = true;
												break;
										case KASSETTE:
												kann_wand = true;
												kann_decke = true;
												kann_klemmtraeger = true;
												break;
								}
				}

				document.getElementById('befestigung_standardtraeger').style.display = display(kann_standardtraeger);
				document.getElementById('befestigung_klemmtraeger').style.display = display(kann_klemmtraeger);
				document.getElementById('befestigung_halteclip').style.display = display(kann_halteclip);
				document.getElementById('befestigung_profilklemmtraeger').style.display = display(kann_profilklemmtraeger);
				document.getElementById('befestigung_wandwinkel').style.display = display(kann_wandwinkel);
				document.getElementById('befestigung_wand').style.display = display(kann_wand);
				document.getElementById('befestigung_nische').style.display = display(kann_nische);
				document.getElementById('befestigung_decke').style.display = display(kann_decke);
				document.getElementById('befestigung_wandwinkel_verstellbar').style.display = display(kann_wandwinkel_verstellbar);

				var befestigung_neu = false;
				if (befestigung == STANDARDTRAEGER && kann_standardtraeger == false) befestigung_neu = true
				else if (befestigung == KLEMMTRAEGER && kann_klemmtraeger == false) befestigung_neu = true
				else if (befestigung == HALTECLIP && kann_halteclip == false) befestigung_neu = true
				else if (befestigung == PROFILKLEMMTRAEGER && kann_profilklemmtraeger == false) befestigung_neu = true
				else if (befestigung == WANDWINKEL && kann_wandwinkel == false) befestigung_neu = true
				else if (befestigung == WAND && kann_wand == false) befestigung_neu = true
				else if (befestigung == NISCHE && kann_nische == false) befestigung_neu = true
				else if (befestigung == DECKE && kann_decke == false) befestigung_neu = true
				else if (befestigung == WANDWINKEL_VERSTELLBAR && kann_wandwinkel_verstellbar == false) befestigung_neu = true;
				if (befestigung_neu) {		// Reihenfolge beachten!		(das was als erstes moeglich ist, wird genommen --> Standardbefestigung bei Wechsel des Modells)
						if (kann_standardtraeger) befestigung = STANDARDTRAEGER
						else if (kann_halteclip) befestigung = HALTECLIP
						else if (kann_profilklemmtraeger) befestigung = PROFILKLEMMTRAEGER
						else if (kann_wandwinkel) befestigung = WANDWINKEL
						else if (kann_decke) befestigung = DECKE
						else if (kann_wand) befestigung = WAND
						else if (kann_nische) befestigung = NISCHE
						else if (kann_klemmtraeger) befestigung = KLEMMTRAEGER
						else if (kann_wandwinkel_verstellbar) befestigung = WANDWINKEL_VERSTELLBAR;
						document.getElementById('konfigurator').befestigung[radioIndexByValue(document.getElementById('konfigurator').befestigung, befestigung)].checked = true;
				}

		} else {
				document.getElementById('auswahl_befestigung').style.display = 'none';
		}

}

function display(truefalse) {
		if (truefalse == true) { return 'block'; } else { return 'none'; }
}

function getUntermodellNo() {
		var modell = document.getElementById('konfigurator').modell[radioSelectedIndex(document.getElementById('konfigurator').modell)].value * 1;
		var untermodell = 0;
		if (modell == DACH) {
				untermodell = document.getElementById('konfigurator').dachmodell[radioSelectedIndex(document.getElementById('konfigurator').dachmodell)].value * 1;		// dachmodell
		} else if (modell == DOPPEL) {
				untermodell = document.getElementById('konfigurator').doppelmodell[radioSelectedIndex(document.getElementById('konfigurator').doppelmodell)].value * 1;		// doppelmodell
		} else {
				untermodell = document.getElementById('konfigurator').untermodell[document.getElementById('konfigurator').untermodell.selectedIndex].value * 1;		// untermodell
				if (untermodell == KASSETTE) {
						untermodell = document.getElementById('konfigurator').kassettengroesse[document.getElementById('konfigurator').kassettengroesse.selectedIndex].value * 1;		// kassettenmodell (kassettengroesse)
				}
		}
		return untermodell;
}

function aendereModell() {
		// modell und untermodell sind globale Variablen
		modell = document.getElementById('konfigurator').modell[radioSelectedIndex(document.getElementById('konfigurator').modell)].value * 1;
		untermodell = getUntermodellNo();


		kassettenform = document.getElementById('konfigurator').kassettenform[document.getElementById('konfigurator').kassettenform.selectedIndex].value * 1;
		bedienung = document.getElementById('konfigurator').bedienung[document.getElementById('konfigurator').bedienung.selectedIndex].value * 1;

		massGeaendertOhnePreisneuberechnung(true, modell, 'b1');	// u.a. zur Anzeige in der Zusammenfassungsleist
		massGeaendertOhnePreisneuberechnung(true, modell, 'h1');
		massGeaendertOhnePreisneuberechnung(true, modell, 'b2');
		massGeaendertOhnePreisneuberechnung(true, modell, 'h2');
		massGeaendertOhnePreisneuberechnung(true, modell, 'tgl');
		setMasse(modell);

		// moegliche Bedienungen anzeigen / ausblenden
		var kann_bediengriff = false;
		var kann_mittelzug = false;
		var kann_seitenzug = false;
		var kann_kurbel = false;
		// var kann_motor = false;
		switch (modell) {
				case RECHTECK:
						document.getElementById('auswahl_bedienung').style.display = 'block';
						if (untermodell == MINIKASSETTE) {
								kann_bediengriff = true;
								kann_seitenzug = true;
						} else if (untermodell == MIDIKASSETTE) {
								if (kassettenform == RUND) {
										kann_bediengriff = true;
								}
								kann_seitenzug = true;
								// kann_mittelzug = true;		bei Kassette soll der Mittelzug raus (laut Danny Maerz 2011)
								// kann_motor = true;
						} else if (untermodell == MAXIKASSETTE) {
										kann_kurbel = true;
										kann_seitenzug = true;
										// kann_motor = true;
						} else {		// BASIS, TRAEGERPROFIL
										kann_mittelzug = true;
										kann_seitenzug = true;
										// kann_motor = true;
						}
						break;
				case GLASLEISTE:
						document.getElementById('auswahl_bedienung').style.display = 'block';
						kann_bediengriff = true;
						kann_seitenzug = true;
						break;
				case DACH:
						kann_bediengriff = true;
						document.getElementById('auswahl_bedienung').style.display = 'none';	// Der Preis fuer den Bediengriff ist beim Dachmodell bereits inbegriffen und darf an dieser Stelle nicht angezeigt werden
						break;
				case DOPPEL:
						document.getElementById('auswahl_bedienung').style.display = 'block';
						kann_seitenzug = true;
						// kann_motor = true;
						break;
		}

		var bedienung_alt = document.getElementById('konfigurator').bedienung[document.getElementById('konfigurator').bedienung.selectedIndex].value;
		document.getElementById('konfigurator').bedienung.length = 0;

		if (kann_bediengriff) {
				document.getElementById('konfigurator').bedienung.options[document.getElementById('konfigurator').bedienung.length] = new Option(textBedienungBediengriff + ' + ?? ' + kDefWaehrung, BEDIENGRIFF, false, bedienung_alt == BEDIENGRIFF);
		}
		if (kann_mittelzug) {
				document.getElementById('konfigurator').bedienung.options[document.getElementById('konfigurator').bedienung.length] = new Option(textBedienungMittelzug, MITTELZUG, false, bedienung_alt == MITTELZUG);
		}
		if (kann_seitenzug) {
				document.getElementById('konfigurator').bedienung.options[document.getElementById('konfigurator').bedienung.length] = new Option(textBedienungSeitenzug, SEITENZUG, false, bedienung_alt == SEITENZUG);
		}
		if (kann_kurbel) {
				document.getElementById('konfigurator').bedienung.options[document.getElementById('konfigurator').bedienung.length] = new Option(textBedienungKurbel + ' + ?? ' + kDefWaehrung, KURBEL, false, bedienung_alt == KURBEL);
		}
/*
		if (kann_motor) {
				document.getElementById('konfigurator').bedienung.options[document.getElementById('konfigurator').bedienung.length] = new Option(textBedienungMotor, MOTOR, false, bedienung_alt == MOTOR);
				document.getElementById('konfigurator').bedienung[document.getElementById('konfigurator').bedienung.length].disabled = true;
		}
*/
		var bedienung_neu = false;
		if (kann_kurbel == false && bedienung == KURBEL) bedienung_neu = true
		else if (kann_bediengriff == false && bedienung == BEDIENGRIFF) bedienung_neu = true
		else if (kann_mittelzug == false && bedienung == MITTELZUG) bedienung_neu = true
		else if (kann_seitenzug == false && bedienung == SEITENZUG) bedienung_neu = true;
		// Bedienung Motor kann nicht gewaehlt werden. Bedienung Motor ist "disabled"
		if (bedienung_neu) {
				if (kann_seitenzug) bedienung = SEITENZUG
				else if (kann_mittelzug) bedienung = MITTELZUG
				else if (kann_bediengriff) bedienung = BEDIENGRIFF
				else if (kann_kurbel) bedienung = KURBEL;
				document.getElementById('konfigurator').bedienung[radioIndexByValue(document.getElementById('konfigurator').bedienung, bedienung)].selected = true;
		}

		// Wahl der Bedienseite ein/ausschalten
		switch (bedienung) {
				case SEITENZUG:
				case KURBEL:
						document.getElementById('auswahl_bedienung_bedienung').style.width = '61%';
						document.getElementById('auswahl_bedienseite').style.display = 'inline';
						break;
				case MITTELZUG:
				case BEDIENGRIFF:
						document.getElementById('auswahl_bedienseite').style.display = 'none';
						document.getElementById('auswahl_bedienung_bedienung').style.width = '100%';
						break;
		}

		// Untermodell-Auswahl anzeigen / ausblenden
		if (modell == RECHTECK) {
				document.getElementById('auswahl_untermodell').style.display = 'block';
		} else {
				document.getElementById('auswahl_untermodell').style.display = 'none';
		}
		// Kassettengroesse-Auswahl anzeigen / ausblenden
		if (modell == RECHTECK && (untermodell == KASSETTE || untermodell == MINIKASSETTE || untermodell == MIDIKASSETTE || untermodell == MAXIKASSETTE)) {
				document.getElementById('auswahl_kassettengroesse').style.display = 'block';
		} else {
				document.getElementById('auswahl_kassettengroesse').style.display = 'none';
		}
		// Kassettenform-Auswahl anzeigen / ausblenden
		if (modell == RECHTECK && untermodell == MIDIKASSETTE) {
				document.getElementById('auswahl_kassettenform').style.display = 'block';
		} else {
				document.getElementById('auswahl_kassettenform').style.display = 'none';
		}
		
		// Dachmodell-Auswahl anzeigen / ausblenden
		// Aufpreis fuer Bedienung Bediengriff ein/ ausblenden
		// Mindestglasleistentiefe pruefen
		if (modell == DACH) {
				document.getElementById('auswahl_dachmodell').style.display = 'block';
				document.getElementById('hinweis_dachfenster_anschrauben').style.display = 'block';
				// document.getElementById('zusatz_bediengriff_nichtfuerdach').style.display = 'none';
				massGeaendertOhnePreisneuberechnung(true, DACH, 'tgl');
		} else {
				document.getElementById('auswahl_dachmodell').style.display = 'none';
				document.getElementById('hinweis_dachfenster_anschrauben').style.display = 'none';
				// document.getElementById('zusatz_bediengriff_nichtfuerdach').style.display = 'inline';
		}
		// doppelmodell-Auswahl anzeigen / ausblenden
		if (modell == DOPPEL) {
				document.getElementById('auswahl_doppelmodell').style.display = 'block';
		} else {
				document.getElementById('auswahl_doppelmodell').style.display = 'none';
		}
		
		// Auswahl der Seitenblende anzeigen / ausblenden
		if (modell == GLASLEISTE) {
				document.getElementById('auswahl_blende').style.display = 'block';
		} else {
				document.getElementById('auswahl_blende').style.display = 'none';
		}

		// Auswahl der Seitenfuehrung, Profile (Seite, Unten) anzeigen / ausblenden
		if (modell == RECHTECK && (untermodell == TRAEGERPROFIL || untermodell == KASSETTE || untermodell == MINIKASSETTE || untermodell == MIDIKASSETTE || untermodell == MAXIKASSETTE) && bedienung != MITTELZUG) {
				document.getElementById('auswahl_seitenfuehrung').style.display = 'block';

				var seitenfuehrung = document.getElementById('konfigurator').seitenfuehrung[document.getElementById('konfigurator').seitenfuehrung.selectedIndex].value * 1;
				document.getElementById('konfigurator').seitenfuehrung.length = 0;

				document.getElementById('konfigurator').seitenfuehrung.options[document.getElementById('konfigurator').seitenfuehrung.length] = new Option('keine', 0, false, seitenfuehrung == 0);
				
				if (untermodell == TRAEGERPROFIL) {
						document.getElementById('konfigurator').seitenfuehrung.options[document.getElementById('konfigurator').seitenfuehrung.length] = new Option(textSeitenfuehrungPendelsicherung + ' + ?? ' + kDefWaehrung, PENDELSICHERUNG, false, seitenfuehrung == PENDELSICHERUNG);
						document.getElementById('h_seitenfuehrung').style.display = 'none';
				} else {
						if (untermodell == MINIKASSETTE || untermodell == MAXIKASSETTE) {
								document.getElementById('konfigurator').seitenfuehrung.options[document.getElementById('konfigurator').seitenfuehrung.length] = new Option(textSeitenfuehrungSeitenprofil + ' + ?? ' + kDefWaehrung, SEITENPROFIL, false, seitenfuehrung == SEITENPROFIL);
						} else if (untermodell == MIDIKASSETTE) {
								document.getElementById('konfigurator').seitenfuehrung.options[document.getElementById('konfigurator').seitenfuehrung.length] = new Option(textSeitenfuehrungSeitenprofilEinteilig + ' + ?? ' + kDefWaehrung, SEITENPROFIL_EINTEILIG, false, seitenfuehrung == SEITENPROFIL_EINTEILIG);
								document.getElementById('konfigurator').seitenfuehrung.options[document.getElementById('konfigurator').seitenfuehrung.length] = new Option(textSeitenfuehrungSeitenprofilZweiteilig + ' + ?? ' + kDefWaehrung, SEITENPROFIL_ZWEITEILIG, false, seitenfuehrung == SEITENPROFIL_ZWEITEILIG);
						}
						document.getElementById('h_seitenfuehrung').style.display = 'inline';
				}
				
				seitenfuehrung = document.getElementById('konfigurator').seitenfuehrung[document.getElementById('konfigurator').seitenfuehrung.selectedIndex].value * 1;	// noch mal aktualisieren, falls geaendert wurde
				if ((seitenfuehrung == SEITENPROFIL || seitenfuehrung == SEITENPROFIL_EINTEILIG || seitenfuehrung == SEITENPROFIL_ZWEITEILIG) && bedienung != BEDIENGRIFF) {		// Tel. 3.5.2011 Danny: wenn federzug verspannt dann kein einlaufprofil moeglich!! (wegen den Spannschuhen)
				// Andreas: Einfallprofil nur anbieten, wenn Seitenprofil gewaehlt
						document.getElementById('auswahl_profilunten').style.display = 'block';
				} else {
						document.getElementById('einlaufprofil').checked = false;
						document.getElementById('auswahl_profilunten').style.display = 'none';						
				}

		} else {
				document.getElementById('konfigurator').seitenfuehrung[radioIndexByValue(document.getElementById('konfigurator').seitenfuehrung, 0)].selected = true;
				document.getElementById('auswahl_seitenfuehrung').style.display = 'none';
				document.getElementById('einlaufprofil').checked = false;
				document.getElementById('auswahl_profilunten').style.display = 'none';
		}

		// Dachfensterauswahl (Hersteller, Produkt, Typ) anzeigen / ausblenden
		// Hinweistext "Dachfenster"
		switch (modell) {
				case RECHTECK:
				case GLASLEISTE:
				case DOPPEL:
						document.getElementById('auswahl_dachfenster').style.display = 'none';
						document.getElementById('hinweis_dach_original').style.display = 'none';
						document.getElementById('hinweis_bestellmasse_dachfensterdaten').style.display = 'none';
						document.getElementById('zsf_dachfensterdaten').style.display = 'none';
						document.getElementById('zsf_masse').style.display = 'block';
						document.getElementById('btn_messen').style.display = 'block';
						break;
				case DACH:
						document.getElementById('auswahl_dachfenster').style.display = 'block';
						document.getElementById('hinweis_dach_original').style.display = 'block';
						if (d_typ != sonstige && d_typ != '') {
								document.getElementById('hinweis_bestellmasse_dachfensterdaten').style.display = 'block';
								document.getElementById('zsf_masse').style.display = 'none';
								document.getElementById('zsf_dachfensterdaten').style.display = 'block';
								document.getElementById('btn_messen').style.display = 'none';
						}
						break;
		}

		// Hinweistext "Bestellmass" und "grosse Sorgfalt"
		switch (modell) {
				case RECHTECK:
				case DOPPEL:
						document.getElementById('hinweis_grossesorgfalt').style.display = 'none';
						document.getElementById('hinweis_bestellmasse').style.display = 'block';
						document.getElementById('hinweis_traegeraussenmass').style.display = 'block';
						break;
				case DACH:
				case GLASLEISTE:
						document.getElementById('hinweis_bestellmasse').style.display = 'none';
						document.getElementById('hinweis_traegeraussenmass').style.display = 'none';
						document.getElementById('hinweis_grossesorgfalt').style.display = 'block';
						break;
		}

		// Wahl der Profilfarbe ein/ausschalten
		var aMglProfilfarben = getMglProfilfarben(modell, untermodell);
		var profilfarbe_vorher = document.getElementById('konfigurator').profilfarbe[document.getElementById('konfigurator').profilfarbe.selectedIndex].value * 1;
		var profilfarbe_neu = 0;

		// Profilfarbe-Liste fuellen
		document.getElementById('konfigurator').profilfarbe.length = 0;
		for (var i = 0; i <= aMglProfilfarben.length-1; i++) {
				profilfarbe_neu = aMglProfilfarben[i];
				if (profilfarbe_neu == profilfarbe_vorher) {
						document.getElementById('konfigurator').profilfarbe.options[i] = new Option(getKuerzelFarbe(profilfarbe_neu), profilfarbe_neu, false, true);
				} else {
						document.getElementById('konfigurator').profilfarbe.options[i] = new Option(getKuerzelFarbe(profilfarbe_neu), profilfarbe_neu, false, false);
				}
		}
		aendereProfilfarbe();
		if (document.getElementById('konfigurator').profilfarbe.length >= 1) {
				document.getElementById('auswahl_profilfarbe').style.display = 'block';
		} else {
				document.getElementById('auswahl_profilfarbe').style.display = 'none';
		}

		displayBefestigung();
		// moegliche Befestigungsarten anzeigen / ausblenden
/*
		// in der Zusammenfassungsleiste Optionen ein- / ausblenden
		if (modell == DACH) {
				document.getElementById('zsf_opt').style.display = 'none';
		} else {
				document.getElementById('zsf_opt').style.display = 'block';
		}
*/
		// richtiges Tab "Stoffwahl einlenden"
		if (modell == DOPPEL) {
				document.getElementById('stoffwahl_normal').style.display = 'none';
				document.getElementById('stoffwahl_doppel').style.display = 'block';
		} else {
				document.getElementById('stoffwahl_doppel').style.display = 'none';
				document.getElementById('stoffwahl_normal').style.display = 'block';
		}

		displayModellbild();

		showhideVolantwahl();

		// Zusammenfassungsleiste Masse
		if (modell == GLASLEISTE || modell == DACH) {
				document.getElementById('zsf_b_bez').innerHTML = 'Glasbreite';
				document.getElementById('zsf_h_bez').innerHTML = 'Glashöhe';
		} else {
				document.getElementById('zsf_b_bez').innerHTML = 'Breite';
				document.getElementById('zsf_h_bez').innerHTML = 'Höhe';
		}
		
		// Zusammenfassungsleiste kleines Modellbild
		document.getElementById('zsf_modellbild').src = VERZ_BILDER_KL + getIdbez(modell) + '.gif';

		// setMasse(modell);		// sonst wird bei Modellwechsel der Hinweis noch vom alten Modell angezeigt - machen wir weiter oben schon
		massGeaendertOhnePreisneuberechnung(true, modell, 'b1');		// unterschiedliche Modelle, Untermodelle und Bedienungen haben unterschiedliche Maximalmasse zur Folge
		massGeaendertOhnePreisneuberechnung(true, modell, 'h1');
		
		if (modell_vorher == DOPPEL || modell == DOPPEL || modell_vorher == 0 || (vhg_moeglich != kannModellVHGStoffe(modell, untermodell))) {
		// falls wir von Doppelrollo auf anderes Modell wechseln, oder falls wir auf Doppelrollo-Modell wechseln, oder falls der Konfigurator zum ersten Mal geladen wird, order falls mit einem Mal VHG-Stoffe moeglich oder nicht mehr moeglich sind (um anzuzeigen, ob Stoffe verfuegbar sind oder nicht)
				ajax_request_stoffe();		// weil nicht jedes Design fuer jedes Modell moeglich ist, ruft ajax_request_preisberechnung() auf - also wenn wir das Modell aendern, wo andere Stoffe moeglich / noetig sind
											// modell_vorher == 0 ist der Initialzustand
		} else {
				ajax_request_preisberechnung();		// wir muessen erst abwarten, wenn die stoffe zurueck geliefert wurden, falls wir ajax_request_stoffe() aufrufen
		}

		modell_vorher = modell;
		vhg_moeglich = kannModellVHGStoffe(modell, untermodell);
}


function setzeCheckboxAlleLicht() {
        var alle = true;
		for (var i = 0; i < document.getElementById('konfigurator').licht.length; i++) {
				if (document.getElementById('konfigurator').licht[i].checked == false) {
						alle = false;
						break;
				}
		}
		document.getElementById('auswahl_licht_alle').checked = alle;
}

function licht_gewaehlt()
{
		setzeCheckboxAlleLicht();
		ajax_request_stoffe();
}

function alleLicht()
{
                if (document.getElementById('auswahl_licht_alle').checked == false) {
                        for (i = 0; i < document.getElementById('konfigurator').licht.length; i++) {
                                document.getElementById('konfigurator').licht[i].checked = false;
                        }
                } else {
                        for (i = 0; i < document.getElementById('konfigurator').licht.length; i++) {
                                document.getElementById('konfigurator').licht[i].checked = true;
                        }
                }

				ajax_request_stoffe();
}


function setzeCheckboxAlleFarben() {
        var alle = true;
		var farbton = document.getElementById('konfigurator').farbton; // caching
		for (var i = 0; i < farbton.length; i++) {
				if (farbton[i].checked == false) {
						alle = false;
						break;
				}
		}
		document.getElementById('auswahl_farbe_alle').checked = alle;
}

function farbe_gewaehlt()
{
		setzeCheckboxAlleFarben();
		ajax_request_stoffe();
}

function alleFarben()
{
		var farbton = document.getElementById('konfigurator').farbton; // caching

		if (document.getElementById('auswahl_farbe_alle').checked == false) {
				for (i = 0; i < farbton.length; i++) {
						farbton[i].checked = false;
				}
		} else {
				for (i = 0; i < farbton.length; i++) {
						farbton[i].checked = true;
				}
		}

		ajax_request_stoffe();
}

function setzeCheckboxAlleGruppen() {
        var alle = true;

		var gruppe = document.getElementById('konfigurator').gruppe; // caching
		for (var i = 0; i < gruppe.length; i++) {
				if (gruppe[i].checked == false) {
						alle = false;
						break;
				}
		}
		document.getElementById('auswahl_gruppe_alle').checked = alle;
}

function gruppe_gewaehlt()
{
		setzeCheckboxAlleGruppen()
		ajax_request_stoffe();
}

function alleGruppen()
{
		var gruppe = document.getElementById('konfigurator').gruppe; // caching
		if (document.getElementById('auswahl_gruppe_alle').checked == false) {
				for (i = 0; i < gruppe.length; i++) {
						gruppe[i].checked = false;
				}
		} else {
				for (i = 0; i < gruppe.length; i++) {
						gruppe[i].checked = true;
				}
		}

		ajax_request_stoffe();
}

function clickSpr() {

		if (document.getElementById('spr').checked == true) {		// pruefen, NACHDEM geklickt wurde - auswahl_sonderpreise hat bereits neuen Status!
				var farbton = document.getElementById('konfigurator').farbton; // caching
				var gruppe = document.getElementById('konfigurator').gruppe; // caching
				
				document.getElementById('auswahl_farbe_alle').checked = true;
				for (i = 0; i < farbton.length; i++) {
						farbton[i].checked = true;
				}
				document.getElementById('auswahl_licht_alle').checked = true;
				for (i = 0; i < document.getElementById('konfigurator').licht.length; i++) {
						document.getElementById('konfigurator').licht[i].checked = true;
				}
				document.getElementById('auswahl_gruppe_alle').checked = true;
				for (i = 0; i < gruppe.length; i++) {
						gruppe[i].checked = true;
				}
		}
		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);
		Element.hide( $('ajax_lade') );
}

function show_failure( requestObject ) {
//		alert("Fehler von Server: " + requestObject.statusText);
		Element.hide( $('ajax_lade') );
}

// Konstanten
var S_DACHFENSTERDATEN = 0; var S_STOFFE = 1; var S_STOFFEX = 2; var S_DESIGN = 3; var S_PREISBERECHNUNG = 4;
aStatiAjax = new Array(5);		// Ladestati der einzelnen Ajax-Requests
for (var i = 0; i <= aStatiAjax.length; i++) {
		aStatiAjax[i-1] = false;
}
var statusAjax = false;		// Gesamtstatus, ob gerade irgendwas laedt

// Ladegrafik einblenden
// ich habe hier eine eigene Funktion, weil es mehrere Ajax-Requests gibt, die teilweise parallel ablaufen. Es soll aber erst der letzte abgeschlossene Ajax-Request die Ladegrafik ausblenden und nicht etwa irgendeiner zwischendurch, der eher fertig ist als die anderen
function showStatuspic(action) {
		aStatiAjax[action] = true;
		statusAjax = true;
		Element.show( $('ajax_lade') );		// Grafik einblenden
}

// Ladegrafik ausblenden
function hideStatuspic(action) {
		aStatiAjax[action] = false;
		statusAjax = false;
		for (var i = 0; i <= aStatiAjax.length; i++) {
				if (aStatiAjax[i] == true) {
						statusAjax = true;
				}
		}
		if (statusAjax == false) {		// Grafik erst einblenden, wenn ALLE fertig sind
				Element.hide( $('ajax_lade') );
		}
}

function ajax_response_stoffe(originalRequest) {

        var resp = originalRequest.responseText;
        var data = resp.evalJSON();
		
		if (data.alleStoffe == '') {
				$('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 Stoffe vorhanden.</div>';
		} else {

				var aStoffe = data.alleStoffe;

				var tabelle = ''
				
				var design, stil, bez, picture, pl_no, min_preis;

				tabelle = tabelle + '<table>';
				
				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;
						pl_no = aStoffe[i].pl_no;
						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="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 + '</table>'

				$('liste_stoffe').innerHTML = tabelle;
		}
		
        hideStatuspic(S_STOFFE);     // Ladegrafik ausblenden

        // if (data.alternativdesign != document.getElementById('konfigurator').design.value) {		// macht beim Neuladen keinen Sinn!
		if (data.alternativdesign != ''	)
		{					// gar kein Stoff in der Liste - Einschraenkung zu gross!    - auch bei Wechsel des Modells (bei Doppelrollo zu normalen Rollo, muss der Doppelrollo-Stoff raus!)
                ajax_request_waehleStoff(data.alternativdesign);
		} else {
				// der Einfachheit halber den ganzen Stoff nochmal laden, um "Stoff nicht verfuegbar" an- bzw. auszuschalten
				ajax_request_waehleStoff(document.getElementById('konfigurator').design.value);
		}
		// }

}

function ajax_request_stoffe() {

		showStatuspic(S_STOFFE);         // Ladegrafik einblenden

		var parameter_licht = '';
		var parameter_farbton = '';
		var parameter_gruppe = '';
		var anz_parameter = 0;

		var spr; if (document.getElementById('spr').checked == true) { spr = 1; } else { spr = 0; };
		var feuchtraum; if (document.getElementById('feuchtraum').checked == true) { feuchtraum = 1; } else { feuchtraum = 0; };
		var schwerentflammbar; if (document.getElementById('schwerentflammbar').checked == true) { schwerentflammbar = 1; } else { schwerentflammbar = 0; };
		var volantmoeglich; if (document.getElementById('volantmoeglich').checked == true) { volantmoeglich = 1; } else { volantmoeglich = 0; };

		anz_parameter = 0;
		for (var i = 0; i < document.getElementById('konfigurator').licht.length; i++) {
				if (document.getElementById('konfigurator').licht[i].checked) {
						anz_parameter = anz_parameter + 1;
						if (anz_parameter > 1) {
								parameter_licht = parameter_licht + '&';
						}
						parameter_licht = parameter_licht + 'licht=' + document.getElementById('konfigurator').licht[i].value;
				}
		}

		anz_parameter = 0;
		var farbton = document.getElementById('konfigurator').farbton; // caching
		for (var i = 0; i < farbton.length; i++) {
				if (farbton[i].checked) {
						anz_parameter = anz_parameter + 1;
						if (anz_parameter > 1) {
								parameter_farbton = parameter_farbton + '&';
						}
						parameter_farbton = parameter_farbton + 'farbton=' + farbton[i].value;
				}
		}

		anz_parameter = 0;
		var gruppe = document.getElementById('konfigurator').gruppe; // caching
		for (var i = 0; i < gruppe.length; i++) {
				if (gruppe[i].checked) {
						anz_parameter = anz_parameter + 1;
						if (anz_parameter > 1) {
								parameter_gruppe = parameter_gruppe + '&';
						}
						parameter_gruppe = parameter_gruppe + 'gruppe=' + gruppe[i].value;
				}
		}

        var myAjax = new Ajax.Request(
            'konfigurator/ajax-getstoffe.asp',
            {   method: 'post',
                // parameters: Form.serialize($('forumlar')),
                parameters: 'modell=' + modell +
							'&untermodell=' + untermodell +
							'&design=' + document.getElementById('konfigurator').design.value +
                            '&sort_by=' + document.getElementById('konfigurator').sort_by.value +
                            '&asc_desc=' + document.getElementById('konfigurator').asc_desc.value +
							'&' + parameter_licht +
							'&' + parameter_farbton +
							'&' + parameter_gruppe +
							'&rf_no=' + rf_no + 
							'&feuchtraum=' + feuchtraum +
							'&schwerentflammbar=' + schwerentflammbar +
							'&volantmoeglich=' + volantmoeglich +
							'&spr=' + spr,

                onComplete: ajax_response_stoffe,
                // onSuccess:   show_datum,
                onFailure:   show_failure,
                onException: show_exception
            }
        );
}


function ajax_response_stoffex(originalRequest) {

        var resp = originalRequest.responseText;
        var data = resp.evalJSON();
		var aStoffe = data.alleStoffex;
		var x = data.x;

		var tabellex = ''
		tabellex = tabellex + '<table><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;
		
				tabellex = tabellex + '<td id="d2_' + design + '" class="' + stil + '" onmouseover="hover=this.className; this.className=\'lih\';" onmouseout="this.className=\'' + stil + '\';" onclick="ajax_request_waehleStoff(\'' + design + '\');">';
				tabellex = tabellex + '<img alt="' + bez + '" title="' + bez + '" src="' + VERZ_DESIGN_KL + picture + '.jpg"><br>';
				tabellex = tabellex + '<input type="radio" name="choice_design2" value="' + design + '"';
				tabellex = tabellex + ' />';
				tabellex = tabellex + bez;
				tabellex = tabellex + '<br>';
				if (min_preis == '----') {
						tabellex = tabellex + '----';
				} else {
						tabellex = tabellex + 'ab&nbsp;' + min_preis + '&nbsp;EUR';
				}
				tabellex = tabellex + '</td>';

		}
		
		tabellex = tabellex + '</tr></table>';

		$('stoffwahl' + x).innerHTML = tabellex;

        hideStatuspic(S_STOFFEX);     // Ladegrafik ausblenden

}

function ajax_request_stoffex(x) {

		// das x (entweder 2, oder 3) gibt an, wofuer Stoffe nachgeladen werden sollen. 2: Erfal-Stoffe fuer "normale" Rollo, 3: Erfal-Stoffe fuer Doppelrollo

		showStatuspic(S_STOFFEX);         // Ladegrafik einblenden

        var myAjax = new Ajax.Request(
            'konfigurator/ajax-getstoffex.asp',
            {   method: 'post',
                // parameters: Form.serialize($('forumlar')),
                parameters: 'modell=' + modell +
							'&untermodell=' + untermodell +
							'&design=' + document.getElementById('konfigurator').design.value +
							'&rf_no=' + rf_no +
							'&x=' + x,

                onComplete: ajax_response_stoffex,
                // onSuccess:   show_datum,
                onFailure:   show_failure,
                onException: show_exception
            }
        );
}


function ajax_response_waehleStoff(originalRequest) {

		var data = originalRequest.responseText.evalJSON();

        $('des_bez').innerHTML = data.rd_bez;
		$('zsf_des_bez').innerHTML = data.rd_bez;
		$('zsf_bild_kl').innerHTML = '<img src="' + VERZ_DESIGN_KL + data.rd_picture + '.jpg" alt="' + data.rd_bez + '" style="border: 1px solid #CCCCCC;">';

        document.getElementById('konfigurator').design.value = data.rd_dessin;
        pl_no = data.rd_pl_no;
		rf_no = data.rd_rf_no;
		farbe_stoff = data.rd_rgb;

        $('des_text').innerHTML = data.rd_text;

		var bild_gr = '<img alt="' + data.rd_bez + '" src="' + VERZ_DESIGN_GR + data.rd_picture + '.jpg" class="big_bild" />';
		if (   !(passtModellVHGStoffe(modell, untermodell, pl_no))   ) {
				bild_gr = bild_gr + '<img alt="nicht verfügbar" title="Design für dieses Modell nicht verfügbar" src="konfigurator/design-nv-gr.gif" class="big_layerbild">';
		}
        $('bild_gr').innerHTML = bild_gr;

		design_kannvolant = data.rd_rv_no;
		showhideVolantwahl();

		// 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.rd_dessin)].checked = true;
				} else {
						document.getElementById('konfigurator').choice_design.checked = true;
				}
		}

		// Bild Stofffarbe neu zeichnen
		// Tabs neu einfaerben
        if (data.rd_rgb != '') {
				document.getElementById('bemassung_bild_rechteck').style.backgroundImage = '';
                document.getElementById('bemassung_bild_rechteck').style.backgroundColor = '#' + data.rd_rgb;
				document.getElementById('bemassung_bild_glasleiste').style.backgroundImage = '';
                document.getElementById('bemassung_bild_glasleiste').style.backgroundColor = '#' + data.rd_rgb;
				document.getElementById('bemassung_bild_dach').style.backgroundImage = '';
                document.getElementById('bemassung_bild_dach').style.backgroundColor = '#' + data.rd_rgb;
				document.getElementById('bemassung_bild_doppel').style.backgroundImage = '';
                document.getElementById('bemassung_bild_doppel').style.backgroundColor = '#' + data.rd_rgb;

				document.getElementById('stoffwahl2_bild_basis').style.backgroundImage = '';
                document.getElementById('stoffwahl2_bild_basis').style.backgroundColor = '#' + data.rd_rgb;
				document.getElementById('stoffwahl2_bild_traegerprofil').style.backgroundImage = '';
                document.getElementById('stoffwahl2_bild_traegerprofil').style.backgroundColor = '#' + data.rd_rgb;
				document.getElementById('stoffwahl3_bild_traegerprofil').style.backgroundImage = '';
                document.getElementById('stoffwahl3_bild_traegerprofil').style.backgroundColor = '#' + data.rd_rgb;

				document.getElementById('zsf_bild_volant_img').style.backgroundImage = '';
                document.getElementById('zsf_bild_volant_img').style.backgroundColor = '#' + data.rd_rgb;

				document.getElementById('tabs_balken').style.backgroundColor = '#' + data.rd_rgb;
				document.getElementById('tabnavi0_1').style.backgroundColor = '#' + data.rd_rgb;
				document.getElementById('tabnavi0_2').style.backgroundColor = '#' + data.rd_rgb;
				document.getElementById('tabnavi0_3').style.backgroundColor = '#' + data.rd_rgb;

				if (isFarbeDunkel(data.rd_rgb)) {
						document.getElementById('tabnavi0_' + akt_tab).style.color = '#ffffff'
				} else {
						document.getElementById('tabnavi0_' + akt_tab).style.color = '#000000';
				}

        } else {
                document.getElementById('bemassung_bild_rechteck').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.rd_picture + '.jpg)';
				document.getElementById('bemassung_bild_glasleiste').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.rd_picture + '.jpg)';
				document.getElementById('bemassung_bild_dach').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.rd_picture + '.jpg)';
				document.getElementById('bemassung_bild_doppel').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.rd_picture + '.jpg)';

				document.getElementById('stoffwahl2_bild_basis').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.rd_picture + '.jpg)';
				document.getElementById('stoffwahl2_bild_traegerprofil').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.rd_picture + '.jpg)';
				document.getElementById('stoffwahl3_bild_traegerprofil').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.rd_picture + '.jpg)';

				document.getElementById('zsf_bild_volant_img').style.backgroundImage = 'url(' + VERZ_DESIGN_KL + data.rd_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';
				
				document.getElementById('tabnavi0_' + tab).style.color = '#000000';
        }

		// grosses Mouseover-Fenster setzen
		design_detail = '';
		design_detail = design_detail + '<div class="detail">';
				design_detail = design_detail + '<h1 style="background-color: #' + data.rd_rgb + '; text-decoration: none;">Detailansicht</h1>';
				design_detail = design_detail + '<h2 style="text-align: center;">' + data.rd_bez + '</h2>';
				design_detail = design_detail + '<table><tr><td class="det_left">';
				design_detail = design_detail + '<img src="' + VERZ_DESIGN_GR + data.rd_picture + '.jpg" alt="" style="border: 1px solid #eeeeee;" />';
				design_detail = design_detail + '</td><td class="det_right">';
				if (data.rd_transmission > 0 && data.rd_reflexion > 0 && data.rd_absorption > 0) {
						design_detail = design_detail + '<span class="det_key">Transmission:</span> ' + data.rd_transmission + '%<br />';
						design_detail = design_detail + '<span class="det_key">Reflexion:</span> ' + data.rd_reflexion + '%<br />';
						design_detail = design_detail + '<span class="det_key">Absorption:</span> ' + data.rd_absorption + '%<br />';
						design_detail = design_detail + '<span class="det_key">Lichtechtheit:</span> ' + data.rd_lichtechtheit + '<br />';
						design_detail = design_detail + '<br />';
				}
				design_detail = design_detail + '<span class="det_key">- Produktgruppe:</span> ' + data.rg_bez + '<br />';
				design_detail = design_detail + '<br />';
				design_detail = design_detail + '<span class="det_key">- Material:</span> ' + data.rd_material + '<br />';
				if (data.rd_rueckseite != '') {
						design_detail = design_detail + '<span class="det_key">- Rückseite:</span> ' + data.rd_rueckseite + '<br />';
				}
				if (data.rd_stoffbreite_mm > 0) {
						design_detail = design_detail + '<span class="det_key">- Stoffbreite:</span> ' + data.rd_stoffbreite_mm + 'mm<br />';
				}
				if (data.rd_stoffgewicht_gm2 > 0) {
						design_detail = design_detail + '<span class="det_key">- Stoffgewicht:</span> ' + data.rd_stoffgewicht_gm2 + 'g/m&sup2;<br />';
				}

				if (data.rd_kz_feuchtraum > 0) {
						design_detail = design_detail + '-&nbsp;Feuchtraum&nbsp;geeignet<br>';
				}
				if (data.rd_kz_feuchtabwischbar > 0) {
						design_detail = design_detail + '-&nbsp;feucht&nbsp;abwischbar<br>';
				}
				if (data.rd_kz_bildschirmarbeitsplatz > 0) {
						design_detail = design_detail + '-&nbsp;Bildschirmarbeitsplatz&nbsp;geeignet<br>';
				}
				if (data.rd_kz_oekotex > 0) {
						design_detail = design_detail + '-&nbsp;schadstoffgeprüft&nbsp;nach&nbsp;Ökotex&nbsp;100<br>';
				}
				if (data.rd_kz_partikelabweisend > 0) {
						design_detail = design_detail + '-&nbsp;schmutz-nbsp;und&nbsp;partikelabweisend<br>';
				}
				if (data.rd_kz_schwerentflammbar > 0) {
						design_detail = design_detail + '-&nbsp;schwer&nbsp;entflammbar<br>';
				}
				if (data.rd_kz_objekt > 0) {
						design_detail = design_detail + '-&nbsp;Objekt&nbsp;geeignet<br>';
				}
				if (data.rd_kz_schlafbereich > 0) {
						design_detail = design_detail + '-&nbsp;Schlafbereich&nbsp;geeignet<br>';
				}
				if (data.rd_kz_kinderzimmer > 0) {
						design_detail = design_detail + '-&nbsp;Kinderzimmer&nbsp;geeignet<br>';
				}
				if (data.rd_kz_wohnbereich > 0) {
						design_detail = design_detail + '-&nbsp;Wohnbereich&nbsp;geeignet<br>';
				}
				if (data.rd_kz_wintergarten > 0) {
						design_detail = design_detail + '-&nbsp;Wintergarten&nbsp;geeignet<br>';
				}
				if (data.rd_kz_pvchalogenfrei > 0) {
						design_detail = design_detail + '-&nbsp;PVC-/Halogenfrei<br>';
				}
				if (data.rd_kz_fungizid > 0) {
						design_detail = design_detail + '-&nbsp;fungizid<br>';
				}

				design_detail = design_detail + '</td></tr></table>';
		design_detail = design_detail + '</div>';
		design_detail.replace('<', '&lt;');
		design_detail.replace('>', '&gt;');
		design_detail.replace('"', '&quot;');

        ajax_request_preisberechnung();
		hideStatuspic(S_DESIGN);
}

function ajax_request_waehleStoff(design) {

		showStatuspic(S_DESIGN);
		var myAjax = new Ajax.Request(
			'konfigurator/ajax-getdesign.asp',
			{   method: 'post',
				// parameters: Form.serialize($('forumlar')),
				parameters: 'design=' + design,
				onComplete: ajax_response_waehleStoff,
				// onSuccess:   show_datum,
				onFailure:   show_failure,
				onException: show_exception
			}
		);

		var dess, stil;

		// 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();

		$('modell_bez').innerHTML = data.modell_bez;
		
		$('aufpreis_klemmtraeger').innerHTML = data.aufpreis_klemmtraeger;
		$('aufpreis_profilklemmtraeger').innerHTML = data.aufpreis_profilklemmtraeger;
		$('aufpreis_wandwinkel').innerHTML = data.aufpreis_wandwinkel;
		$('aufpreis_wandwinkel_verstellbar').innerHTML = data.aufpreis_wandwinkel_verstellbar;
		
		if (data.aufpreis_wand > 0) {
				$('aufpreis_wand').innerHTML = ' (+&nbsp;' + data.aufpreis_wand + '&nbsp;' + kDefWaehrung + ')';
		} else {
				$('aufpreis_wand').innerHTML = '';
		}

		var bedienung = document.getElementById('konfigurator').bedienung; // caching
		for (var i = 0; i < bedienung.length; i++) {
                if(bedienung[i].value == BEDIENGRIFF) {
                		bedienung[i].text = textBedienungBediengriff + ' +' + data.aufpreis_bediengriff + kDefWaehrung;
                }
                if(document.getElementById('konfigurator').bedienung[i].value == KURBEL) {
                		bedienung[i].text = textBedienungKurbel + ' + ' + data.aufpreis_kurbel + ' ' + kDefWaehrung;
                }
		}

		for (var i = 0; i < document.getElementById('konfigurator').seitenfuehrung.length; i++) {
                if(document.getElementById('konfigurator').seitenfuehrung[i].value == PENDELSICHERUNG) {
                		document.getElementById('konfigurator').seitenfuehrung[i].text = textSeitenfuehrungPendelsicherung + ' + ' + data.aufpreis_pendelsicherung + ' ' + kDefWaehrung;
                }
                if(document.getElementById('konfigurator').seitenfuehrung[i].value == SEITENPROFIL) {
                		document.getElementById('konfigurator').seitenfuehrung[i].text = textSeitenfuehrungSeitenprofil + ' + ' + data.aufpreis_seitenprofil + ' ' + kDefWaehrung;
                }
                if(document.getElementById('konfigurator').seitenfuehrung[i].value == SEITENPROFIL_EINTEILIG) {
                		document.getElementById('konfigurator').seitenfuehrung[i].text = textSeitenfuehrungSeitenprofilEinteilig + ' + ' + data.aufpreis_seitenprofil_einteilig + ' ' + kDefWaehrung;
                }
                if(document.getElementById('konfigurator').seitenfuehrung[i].value == SEITENPROFIL_ZWEITEILIG) {
                		document.getElementById('konfigurator').seitenfuehrung[i].text = textSeitenfuehrungSeitenprofilZweiteilig + ' + ' + data.aufpreis_seitenprofil_zweiteilig + ' ' + kDefWaehrung;
                }
		}

		$('aufpreis_einlaufprofil').innerHTML = data.aufpreis_einlaufprofil;

		$('id_p1').innerHTML = data.aufpreis_v1;
		$('id_p2').innerHTML = data.aufpreis_v2;
		$('id_p3').innerHTML = data.aufpreis_v3;
		$('id_p10').innerHTML = data.aufpreis_v10;
		$('id_p4').innerHTML = data.aufpreis_v4;
		$('id_p5').innerHTML = data.aufpreis_v5;
		$('id_p11').innerHTML = data.aufpreis_v11;
		$('id_p12').innerHTML = data.aufpreis_v12;
		$('id_p6a').innerHTML = data.aufpreis_v6a;
		$('id_p6b').innerHTML = data.aufpreis_v6b;
		$('id_p7a').innerHTML = data.aufpreis_v7a;
		$('id_p7b').innerHTML = data.aufpreis_v7b;
		$('id_p8a').innerHTML = data.aufpreis_v8a;
		$('id_p8b').innerHTML = data.aufpreis_v8b;
		$('id_p9a').innerHTML = data.aufpreis_v9a;
		$('id_p9b').innerHTML = data.aufpreis_v9b;

		$('aufpreis_blendepvc').innerHTML = data.aufpreis_blendepvc;
		$('aufpreis_blendealu').innerHTML = data.aufpreis_blendealu;
		
		konfigurationOK = checkKonfiguration();
		if (konfigurationOK == 0) {
				$('einzelpreis').innerHTML = '---,--';
		} else {
				$('einzelpreis').innerHTML = data.preis;
		}

        hideStatuspic(S_PREISBERECHNUNG);

}

function ajax_request_preisberechnung() {

		showStatuspic(S_PREISBERECHNUNG);

		var blende = 0; if (document.getElementById('blende_pvc').checked) { blende = PVC } else if (document.getElementById('blende_alu').checked) { blende = ALU };
		var seitenfuehrung = document.getElementById('konfigurator').seitenfuehrung[document.getElementById('konfigurator').seitenfuehrung.selectedIndex].value * 1;
		var profilunten = 0; if (document.getElementById('einlaufprofil').checked) { profilunten = EINLAUFPROFIL };

		setMasse(modell);

        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=' + modell +
							'&untermodell=' + untermodell +
							'&pl_no=' + pl_no +
							'&bedienung=' + bedienung +
							'&befestigung=' + document.getElementById('konfigurator').befestigung[radioSelectedIndex (document.getElementById('konfigurator').befestigung)].value +
							'&volant=' + document.getElementById('konfigurator').volant[radioSelectedIndex (document.getElementById('konfigurator').volant)].value +
							'&blende=' + blende +
							'&seitenfuehrung=' + seitenfuehrung +
							'&profilunten=' + profilunten,
							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();
		}
        hideStatuspic(S_DACHFENSTERDATEN);

}

function ajax_request_dachfensterdaten(modell, dachmodell, opt, hersteller, produkt, typ) {

        showStatuspic(S_DACHFENSTERDATEN);
        var myAjax = new Ajax.Request(
            'konfigurator/ajax-dachfensterdaten.asp',
            {   method: 'post',
                // parameters: Form.serialize($('forumlar')),
                parameters: 'opt=' + opt +
							'&modell=' + modell +
							'&dachmodell=' + dachmodell +
							'&hersteller=' + encodeURIComponent(hersteller) +
							'&produkt=' + encodeURIComponent(produkt) +
							'&typ=' + encodeURIComponent(typ),

                onComplete: ajax_response_dachfensterdaten,
                // onSuccess:   show_datum,
                onFailure:   show_failure,
                onException: show_exception
            }
        );

}


function checkKonfiguration() {
		var check = 1;

		// var pl_no -- globale Variable
		// var b1 = document.getElementById('konfigurator').b1.value * 1;
		// var h1 = document.getElementById('konfigurator').h1.value * 1;

		
		if (  (pl_no >= 130 && pl_no <= 149) && !(passtModellVHGStoffe(modell, untermodell, pl_no))   ) {		// groessere Breiten auf Anfrage: && b1 <= 3000 && h1 <= 3000
		// Falls VHG-Stoff gewaehlt, aber kein passendes Modell
				check = 0;
		}

		if (check == 0) {
				if (modell == DOPPEL) {
						ajax_request_stoffex('3');
						document.getElementById('hinweis_vhg_doppel').style.display = 'block';
				} else {
						ajax_request_stoffex('2');
						document.getElementById('hinweis_vhg').style.display = 'block';
				}
		} else {
				document.getElementById('hinweis_vhg').style.display = 'none';
				document.getElementById('hinweis_vhg_doppel').style.display = 'none';
		}

		return check;
}



function warenkorb() {

		// Die Variablen modell und untermodell sind global
		var befestigung = document.getElementById('konfigurator').befestigung[radioSelectedIndex(document.getElementById('konfigurator').befestigung)].value * 1;

		setMasse(modell);
		// Fluegelbreite muss groesser gleich Glasbreite sein

		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;
				}
		}

		if ((modell == GLASLEISTE || dach_ungenormt == true) && document.getElementById('konfigurator').elements['mass_' + modell + '_b2'].value * 1 > document.getElementById('konfigurator').elements['mass_' + modell + '_b1'].value * 1) {
				
				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 ((modell == GLASLEISTE || dach_ungenormt == true) && document.getElementById('konfigurator').elements['mass_' + modell + '_h2'].value * 1 > document.getElementById('konfigurator').elements['mass_' + modell + '_h1'].value * 1) {
				
				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 == DOPPEL && untermodell == KASSETTE && befestigung == KLEMMTRAEGER && (pl_no < 66 || pl_no > 67)) {
				
				alert('Bitte beachten Sie, dass die Befestigung "Klemmträger" bei Doppelrollos mit Kassette nicht bei allen Stoffen möglich ist.\nWählen Sie entweder das Rollo ohne Kassette, einen anderen Stoff oder eine andere Art der Befestigung.');
				
		} else if ($('einzelpreis').innerHTML == '0' || konfigurationOK == 0) {
		
				alert('Die gewählte Konfiguration ist so nicht realisierbar!\nWenn Sie Fragen haben, so kontaktieren Sie uns bitte!');
				
		} else {

				if ( confirm( document.getElementById('konfigurator').menge.value + ' Stück des gewählten Artikels\nin den Warenkorb legen ?' )) {
						document.getElementById('konfigurator').action = '/rts/warenkorb_rollo.asp';
						document.getElementById('konfigurator').method = 'POST';
						document.getElementById('konfigurator').submit();
				}
		}

}

// MouseOver Hilfetexte

// Volant
var v_0 = ''
+ '<b>Ohne Volant</b><br>'
+ '- gerader Abschluss';


var h_v1 = ''
+ '<b>Volant 1</b>'
+ '<ul>'
+ '<li>umsäumter Volant mit eingeschobenem Beschwerungsstab (kunststoffbeschichteter Metallstab, weiß)</li>'
+ '<li>Farbe des Einfaßbandes:'
+ '<ul><li>Standard farblich abgestimmt</li>'
+ '<li>auf Wunsch andersfarbig (bitte Farbnummer angeben)</li></ul></li>'
+ '</ul>'

var h_v2 = ''
+ '<b>Volant 2</b>'
+ '<ul>'
+ '<li>umsäumter Volant mit eingeschobenem Beschwerungsstab (kunststoffbeschichteter Metallstab, weiß)</li>'
+ '<li>Farbe des Einfaßbandes:'
+ '<ul><li>Standard farblich abgestimmt</li>'
+ '<li>auf Wunsch andersfarbig (bitte Farbnummer angeben)</li></ul></li>'
+ '</ul>'

var h_v3 = ''
+ '<b>Volant 3</b>'
+ '<ul>'
+ '<li>umsäumter Volant mit eingeschobenem Beschwerungsstab (kunststoffbeschichteter Metallstab, weiß)</li>'
+ '<li>Farbe des Einfaßbandes:'
+ '<ul><li>Standard farblich abgestimmt</li>'
+ '<li>auf Wunsch andersfarbig (bitte Farbnummer angeben)</li></ul></li>'
+ '</ul>'

var h_v4 = ''
+ '<b>Volant 4</b>'
+ '<ul>'
+ '<li>ungesäumter Volant mit taschenförmiger Aufnahme des Beschwerungsstabes</li>'
+ '<li>Beschwerungsstab muß separat bestellt werden (Aufpreis)</li>'
+ '</ul>'

var h_v5 = ''
+ '<b>Volant 5</b>'
+ '<ul>'
+ '<li>ungesäumter Volant mit taschenförmiger Aufnahme des Beschwerungsstabes</li>'
+ '<li>Beschwerungsstab muß separat bestellt werden (Aufpreis)</li>'
+ '</ul>'

var h_v6a = ''
+ '<b>Volant 6/1</b>'
+ '<ul>'
+ '<li>umsäumter Volant mit eingeschobenem Beschwerungsstab (kunststoffbeschichteter Metallstab, weiß)</li>'
+ '<li>Farbe des Einfaßbandes:'
+ '<ul><li>Standard farblich abgestimmt</li>'
+ '<li>auf Wunsch andersfarbig (bitte Farbnummer angeben)</li></ul></li>'
+ '</ul>'

var h_v6b = ''
+ '<b>Volant 6/2</b>'
+ '<ul>'
+ '<li>umsäumter Volant mit eingeschobenem Beschwerungsstab (kunststoffbeschichteter Metallstab, weiß)</li>'
+ '<li>Farbe des Einfaßbandes:'
+ '<ul><li>Standard farblich abgestimmt</li>'
+ '<li>auf Wunsch andersfarbig (bitte Farbnummer angeben)</li></ul></li>'
+ '</ul>'

var h_v7a = ''
+ '<b>Volant 7/1</b>'
+ '<ul>'
+ '<li>umsäumter Volant mit eingeschobenem Beschwerungsstab (kunststoffbeschichteter Metallstab, weiß)</li>'
+ '<li>Farbe des Einfaßbandes:'
+ '<ul><li>Standard farblich abgestimmt</li>'
+ '<li>auf Wunsch andersfarbig (bitte Farbnummer angeben)</li></ul></li>'
+ '</ul>'

var h_v7b = ''
+ '<b>Volant 7/2</b>'
+ '<ul>'
+ '<li>umsäumter Volant mit eingeschobenem Beschwerungsstab (kunststoffbeschichteter Metallstab, weiß)</li>'
+ '<li>Farbe des Einfaßbandes:'
+ '<ul><li>Standard farblich abgestimmt</li>'
+ '<li>auf Wunsch andersfarbig (bitte Farbnummer angeben)</li></ul></li>'
+ '</ul>'

var h_v8a = ''
+ '<b>Volant 8/1</b>'
+ '<ul>'
+ '<li>umsäumter Volant mit gleichfarbigem Mitteleinsatz</li>'
+ '<li>mit eingeschobenem Beschwerungsstab (kunststoffbeschichteter Metallstab, weiß)</li>'
+ '<li>Breite des Mitteleinsatzes ca. 2/3 der Rollobreite</li>'
+ '<li>Farbe des Einfaßbandes:'
+ '<ul><li>Standard farblich abgestimmt</li>'
+ '<li>auf Wunsch andersfarbig (bitte Farbnummer angeben)</li></ul></li>'
+ '</ul>'

var h_v8b = ''
+ '<b>Volant 8/2</b>'
+ '<ul>'
+ '<li>umsäumter Volant mit gleichfarbigem Mitteleinsatz</li>'
+ '<li>mit eingeschobenem Beschwerungsstab (kunststoffbeschichteter Metallstab, weiß)</li>'
+ '<li>Breite des Mitteleinsatzes ca. 2/3 der Rollobreite</li>'
+ '<li>Farbe des Einfaßbandes:'
+ '<ul><li>Standard farblich abgestimmt</li>'
+ '<li>auf Wunsch andersfarbig (bitte Farbnummer angeben)</li></ul></li>'
+ '</ul>'

var h_v9a = ''
+ '<b>Volant 9/1</b>'
+ '<ul>'
+ '<li>umsäumter Volant mit andersfarbigem Mitteleinsatz</li>'
+ '<li>mit eingeschobenem Beschwerungsstab (kunststoffbeschichteter Metallstab, weiß)</li>'
+ '<li>Breite des Mitteleinsatzes ca. 2/3 der Rollobreite</li>'
+ '<li>Farbe des Mitteleinsatzes: bitte Farbnummer angeben</li>'
+ '<li>Farbe des Einfaßbandes:'
+ '<ul><li>Standard farblich abgestimmt</li>'
+ '<li>auf Wunsch andersfarbig (bitte Farbnummer angeben)</li></ul></li>'
+ '</ul>'

var h_v9b = ''
+ '<b>Volant 9/2</b>'
+ '<ul>'
+ '<li>umsäumter Volant mit andersfarbigem Mitteleinsatz</li>'
+ '<li>mit eingeschobenem Beschwerungsstab (kunststoffbeschichteter Metallstab, weiß)</li>'
+ '<li>Breite des Mitteleinsatzes ca. 2/3 der Rollobreite</li>'
+ '<li>Farbe des Mitteleinsatzes: bitte Farbnummer angeben</li>'
+ '<li>Farbe des Einfaßbandes:'
+ '<ul><li>Standard farblich abgestimmt</li>'
+ '<li>auf Wunsch andersfarbig (bitte Farbnummer angeben)</li></ul></li>'
+ '</ul>'

var h_v10 = ''
+ '<b>Volant 10</b>'
+ '<ul>'
+ '<li>ums&auml;umter Volant mit Stoff&ouml;sen (Durchmesser 28 / 46 mm)</li>'
+ '<li>Stoff&ouml;sen m&uuml;ssen separat bestellt werden (Aufpreis)</li>'
+ '<li>mit eingeschobenem Beschwerungsstab (kunststoffbeschichteter Metallstab, weiß)</li>'
+ '<li>Farbe des Einfaßbandes:'
+ '<ul><li>Standard farblich abgestimmt</li>'
+ '<li>auf Wunsch andersfarbig (bitte Farbnummer angeben)</li></ul></li>'
+ '</ul>'

var h_v11 = ''
+ '<b>Volant 11</b>'
+ '<ul>'
+ '<li>unges&auml;umter Volant mit taschenf&ouml;rmiger Aufnahme des Beschwerungsstabes</li>'
+ '<li>Beschwerungsstab muß separat bestellt werden (Aufpreis)</li>'
+ '</ul>'

var h_v12 = ''
+ '<b>Volant 12</b>'
+ '<ul>'
+ '<li>unges&auml;umter Volant mit taschenf&ouml;rmiger Aufnahme des Beschwerungsstabes</li>'
+ '<li>Beschwerungsstab bzw. Vorhangstange muß separat bestellt werden (Aufpreis)</li>'
+ '</ul>'

function h_bef(befestigung) {
		// die variablen modell, untermodell und kassettenform sind global
		modell = modell * 1;
		untermodell = untermodell * 1;
		kassettenform = kassettenform * 1;
		
		var h = '';
		
		switch (befestigung) {
				case STANDARDTRAEGER:
						h = '<b>Wand-/Deckenbefestigung mit Standardträger</b>';
						if (modell == RECHTECK && untermodell == BASIS) {
								h = h + '<br><img src="konfigurator/befestigungen/h_bef_basis_standardtraeger.jpg" alt="">';
						}
						break;
				case KLEMMTRAEGER:
						h = '<b>Fensterflügelbefestigung mit Klemmträger</b><br>Hinweis: Klemmträger sind nur für Kunstofffenster geeignet!';
						if (modell == RECHTECK && untermodell == BASIS) {
								h = h + '<br><img src="konfigurator/befestigungen/h_bef_basis_klemmtraeger.jpg" alt="">';
						} else if (modell == DOPPEL && untermodell == KASSETTE) {
								h = h + '<br><img src="konfigurator/befestigungen/h_bef_doppel_kasette_klemmtraeger.jpg" alt="">';
						} else if (modell == RECHTECK && untermodell == MINIKASSETTE) {
								h = h + '<br><img src="konfigurator/befestigungen/h_bef_minikasette_klemmtraeger.jpg" alt="">';
						}
						break;
				case HALTECLIP:
						if (modell == DOPPEL) {
								h = '<b>Deckenbefestigung mit Halteclip</b>';
						} else {
								h = '<b>Wand-/Deckenbefestigung mit Halteclip</b>';
						}
						if ((modell == RECHTECK && untermodell == TRAEGERPROFIL) || (modell == DOPPEL && untermodell == TRAEGERPROFIL)) {
								h = h + '<br><img src="konfigurator/befestigungen/h_bef_traegerprofil_halteclip.jpg" alt="">';
						} else if (modell == RECHTECK && untermodell == MIDIKASSETTE) {
								if (kassettenform == RUND) {
										h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_midikassette_rund_halteclip.jpg">';
								} else if (kassettenform == ECKIG) {
										h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_midikassette_eckig_halteclip.jpg">';
								}
						}
						break;
				case PROFILKLEMMTRAEGER:
						h = '<b>Fensterflügelbefestigung mit Profilklemmträger</b><br>Hinweis: Klemmträger sind nur für Kunstofffenster geeignet!';
						if ((modell == RECHTECK && untermodell == TRAEGERPROFIL) || (modell == DOPPEL && untermodell == TRAEGERPROFIL)) {
								h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_traegerprofil_profilklemmtraeger.jpg">';
						} else if (modell == RECHTECK && untermodell == MIDIKASSETTE) {
								if (kassettenform == RUND) {
										h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_midikassette_rund_profilklemmtraeger.jpg">';
								} else if (kassettenform == ECKIG) {
										h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_midikassette_eckig_profilklemmtraeger.jpg">';
								}
						}
						break;
				case WANDWINKEL:
						if (modell == DOPPEL) {
								h = '<b>Wandwinkel</b>';
						} else {
								h = '<b>Nischenbefestigung mit Wandwinkel</b>';
						};
						if (modell == RECHTECK && untermodell == TRAEGERPROFIL) {
								h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_traegerprofil_wandwinkel.jpg">';
						} else if (modell == DOPPEL && untermodell == TRAEGERPROFIL) {
								h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_doppel_traegerprofil_wandwinkel.jpg">';
						} else if (modell == RECHTECK && untermodell == MIDIKASSETTE) {
								if (kassettenform == RUND) {
										h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_midikassette_rund_wandwinkel.jpg">';
								} else if (kassettenform == ECKIG) {
										h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_midikassette_eckig_wandwinkel.jpg">';
								}
						}
						break;
				case WAND:
						h = '<b>Wandbefestigung</b>';
						if (modell == RECHTECK && untermodell == TRAEGERPROFIL) {
								h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_traegerprofil_wandwinkel.jpg">';
						} else if (modell == DOPPEL && untermodell == KASSETTE) {
								h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_doppel_kasette_wandwinkel.jpg">';
						} else if (modell == RECHTECK && untermodell == MAXIKASSETTE) {
								h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_maxikassette_wandtraeger.jpg">';
						} else if (modell == RECHTECK && untermodell == MINIKASSETTE) {
								h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_minikassette_wandbefestigung.jpg">';
						}
						break;
				case DECKE:
						h = '<b>Deckenbefestigung</b>';
						if (modell == DOPPEL && untermodell == KASSETTE) {
								h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_doppel_kasette_deckentraeger.jpg">';
						} else if (modell == RECHTECK && untermodell == MAXIKASSETTE) {
								h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_maxikassette_deckentraeger.jpg">';
						} else if (modell == RECHTECK && untermodell == MINIKASSETTE) {
								h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_minikassette_deckenbefestigung.jpg">';
						}
						break;
				case NISCHE:
						h = '<b>Nischenbefestigung</b>';

						break;
				case WANDWINKEL_VERSTELLBAR:
						h = '<b>Wandbefestigung mit verstellbarem Wandwinkel</b>';
						if (modell == DOPPEL) {
								h += '<br>verstellbar von ca. 104 bis ca. 153mm'; // Erfal 108 - 156, VHG 100 - 150
						}
						if (modell == RECHTECK && untermodell == MIDIKASSETTE && kassettenform == RUND || modell == DOPPEL) {
								h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_midikassette_rund_wandwinkel-verstellbar-60-108.jpg">';
						} else if (modell == RECHTECK && untermodell == MIDIKASSETTE && kassettenform == ECKIG) {
								h = h + '<br><img alt="" src="konfigurator/befestigungen/h_bef_midikassette_eckig_wandwinkel-verstellbar-60-108.jpg">';
						}

						break;
		}
		
		return h;
}

function h_seitenprofil() {
		modell = modell * 1;
		untermodell = untermodell * 1;

		var h = '';

		if (modell == RECHTECK) {
				if (untermodell == MINIKASSETTE) {
						h = '<img alt="" src="konfigurator/h_seitenprofile_mini.jpg">';
				} else if (untermodell == MIDIKASSETTE) {
						h = '<img alt="" src="konfigurator/h_seitenprofile_midi.jpg">';
				} else if (untermodell == MAXIKASSETTE) {
						h = '<img alt="" src="konfigurator/h_seitenprofile_maxi.jpg">';
				}
		}
		return h;
}

// Bedienungen
var h_motor = 'Motorbedienung auf Anfrage'
var h_kurbel = 'Bitte beachten Sie, dass Sie die Kurbel zur Kurbelbedienung extra bestellen m&uuml;ssen. Die Kurbelstange ist f&uuml;r mehrere Rollos mit Kurbelbedienung nutzbar. Schreiben Sie dazu bitte einen Hinweis in das Sonderwunschfeld, wieviele Kurbeln in welcher Länge Sie benötigen.';

// Seitenblenden
var h_blendepvc = 'Die <b>Kunststoff-Seitenblende</b> mit Selbstklebestreifen, dient zur Reduzierung des seitlichen Lichteinfalls <b>(keine Verdunklung!)</b>.<br><br><img src="konfigurator/befestigungen/h_seitenblende_kunststoff.jpg" alt="Seitenblende Kunststoff">';
var h_blendealu = 'Die <b>Aluminium-Seitenblende</b> kann geklebt oder geschraubt werden. Die Blende wird ungebohrt und ohne Selbstklebestreifen geliefert. Sie dient zur Reduzierung des seitlichen Lichteinfalls (<b>keine Verdunklung!</b>).<br><br><img src="konfigurator/befestigungen/h_seitenblende_aluminium.jpg" alt="Seitenblende Aluminium">';

// Profile
var h_einlaufprofil = '<img alt="" src="konfigurator/h_einlaufprofil.jpg">';

// Dachfenster Rollomodell
var h_dach_basis = '<h2 style="color: #000000; margin-left: 1em;">Basis</h2><ul><li>Federzugrollo ohne Blende mit Mittelbedienung</li><li>Abschlussprofilhalter für drei Arretierungsstufen in weiß</li></ul>';
var h_dach_blende_arretierung = '<h2 style="color: #000000; margin-left: 1em;">Blenden Arretierung</h2><ul><li>Federzugrollo mit Blende oben und Mittelbedienung</li><li>Abschlussprofilhalter für drei Arretierungsstufen in weiß</li></ul>';
var h_dach_blende_stufenlos = '<h2 style="color: #000000; margin-left: 1em;">Blenden Stufenlos</h2><ul><li>Federzugrollo mit Blende oben und Mittelbedienung und seitlicher Verspannung</li><li>Abschlußprofilhalter an beliebiger Stelle arretierbar</li></ul>';
var h_dach_multistop = '<h2 style="color: #000000; margin-left: 1em;">Multistop</h2><ul><li>Federzugrollo mit oberer Blende, Seitenführungsschienen und Mittelbedienung</li><li>Abschlußprofil an beliebiger Stelle arretierbar</li></ul>';
var h_dach_comfort = '<h2 style="color: #000000; margin-left: 1em;">Comfort</h2><ul><li>Federzugrollo mit oberer Blende und Seitenführungsschienen</li><li>Abschlußprofil mit Griffmulde und Gummidichtlippe, stufenlos verstellbar</li><li>Stoff wird mit Stoffspannern in der Seitenführungsschiene geführt</li></ul>';


