﻿/* Custom Javascript ______________________________________________*/
	
	var oColorpickerData = '';
	
	function openColorpicker(sID, sInsertID, sUrl) {
	
		if (oColorpickerData == '') {
			loadColorpicker(sID, sInsertID, sUrl);
		} else {
			$('colorpicker').show();
		}
	
	}
	
	function loadColorpicker(sID, sInsertID, sUrl) {
		
		new Ajax.Request(sUrl, {
			onSuccess: function(response) {
				oColorpickerData = response.responseText.evalJSON();
				insertColorpicker(sID, sInsertID);
			}
		});
	
	}
	
	function insertColorpicker(sID, sInsertID) {
		
		var oSchliesen = '';
		var oRow = '';
		var oCell = '';
		var oCellInnen = '';
		var oContainer = '';
		var oContainerInnen = '';
		
		oContainer = new Element('div', {
			'class': 'colorpicker',
			'id': 'colorpicker'
		});
		oContainer.hide();
		
		oContainerInnen = new Element('div', {
			'class': 'innen'
		});
		
		oSchliesen = new Element('div', { 'class': 'schliesen' }).update('X')
		
		oSchliesen.observe('click', function(event){
			setRalColor(sInsertID);
		});
		
		oContainerInnen.insert({
			bottom: oSchliesen
		});
		
		oColorpickerData.data.each(function(aRow, i){
			
			oRow = new Element('div', { 'class': 'row row' + i });
			
			oContainerInnen.insert({
				bottom: new Element('div', { 'class': 'row rowtext' }).update(aRow.beschreibung)
			});
			
			aRow.data.each(function(oCellData, j){
			
				oCell = new Element('div', { 'class': 'cell cell' + j, 'title': oCellData.text });
				oCellInnen = new Element('div', { 'class': 'bgcell' }).update('&nbsp;');
				oCellInnen.setStyle({
					backgroundColor: oCellData.hex
				});
				oCell.observe('click', function(event){
					setRalColor(sInsertID, i, j);
				});
				
				oCell.insert({
					bottom: oCellInnen
				});
				
				oRow.insert({
					bottom: oCell
				});
			
			});
			
			oContainerInnen.insert({
				bottom: oRow
			});
		
		});
		
		oContainerInnen.insert({
			bottom: '<div class="clear">&nbsp;</div>'
		});
		
		oContainer.insert({
			bottom: oContainerInnen
		});
		
		oContainerInnen.insert({
			bottom: '<div class="clear">&nbsp;</div>'
		});
		
		$(sID).insert({ 
			bottom: oContainer
		});
		
		oContainer.show();
		
	}
	
	function setRalColor(sInsertID, lDataType, lRal) {
		
		if (lDataType != undefined && lRal != undefined) {
			$('ralfarbe').value = oColorpickerData.data[lDataType].data[lRal].text + ' (' + oColorpickerData.data[lDataType].data[lRal].ral + ')';
		}
		$('colorpicker').hide();
		
	}

/* Form Infos ___________________________ */
	
	var formTimer;
	var bLockForm = false;
	
	function openFormInfo(sElement) {
	
		clearTimeout(formTimer);
		if(!$(sElement).visible()) {
			if(!bLockForm){
				bLockForm = true;
				$(sElement).appear({
					duration: 0.8,
					afterFinish: function() { 
						bLockForm = false; 
					}
				});
			}
		}
		
	}
	
	function closeFormInfoTimer(sElement) {
	
		formTimer = setTimeout('closeFormInfo(\'' + sElement + '\')', 1000);
		
	}
	
	function closeFormInfo(sElement) {
	
		if($(sElement).visible()) {
			if(!bLockForm){
				bLockForm = true;
				$(sElement).fade({
					duration: 0.8,
					afterFinish: function() { 
						bLockForm = false; 
					}
				});
			}
		}
	
	}
	
	function stopFormInfo() {
	
		clearTimeout(formTimer);
	
	}

/* Popup schliessen ___________________________ */

	function closePopup () {
		document.getElementById('overlayerlanguage').style.display = "none";
		document.getElementById('waehleland').style.display = "none";
	}

/* Suche Paging ________________________________*/

	function ChangePage (sFormName, nPage) {
		sFormName.lPageNumber.value = nPage;
		sFormName.submit();
	}
	

/* Box Länder _____________________________________________________ */

	function ChooseLanguage (sPageName, sSubPageName, sKategorie) {
	
		document.getElementById('overlayerlanguage').style.display = "block";
		document.getElementById('waehleland').style.display = "block";
		document.getElementById('pagenamepopup').value = sPageName;
		document.getElementById('subpagenamepopup').value = sSubPageName;
		document.getElementById('kategorie').value = sKategorie;
	
	}
	
/* Box Referenzen ________________________________________________ */
	
	var sReferenzenTeacking = '';
	
	function SetReferenzenTeackingText (sText) {
	
		sReferenzenTeacking = sText;
	
	}
	
	function ReferenzenTeacking (bDebugMode) {
		
		if (sReferenzenTeacking != '') {
			new GATracking('_trackEvent', { sEventCategory: 'Referenzen', sEventAction: 'Link-Mail', aEventOptLabel: [sReferenzenTeacking], bShowString: bDebugMode });
		}
	
	}
	
	function SendReferenzenLink (welches, back) {
	
		document.getElementById('overlayerlanguage').style.display = "block";
		document.getElementById('sendreferenzen').style.display = "block";
		$('ReferenzensLink').value = welches;
		if (back != null) {
			$('ReferenzensBackLink').value = back;
		}
	
	}
	
	function closePopupReferenzenLink () {
		document.getElementById('overlayerlanguage').style.display = "none";
		document.getElementById('sendreferenzen').style.display = "none";
	}

	
/* Menü ___________________________________________________________*/

	function nurauf (aktuelles) {

		if (letztes != null) {
			clearTimeout(aktiv);
			document.getElementById(letztes).style.display = 'none';
		}
		
		document.getElementById(aktuelles).style.display = 'block';
		document.getElementById('overlayerbild').style.display = 'block';
		letztes = aktuelles;
		return false;
	}
	
	function nuraufsprache (aktuelles) {

		if (letztes != null) {
			clearTimeout(aktiv);
			document.getElementById(letztes).style.display = 'none';
		}
		
		document.getElementById(aktuelles).style.display = 'block';
		letztes = aktuelles;
		return false;
	}

	
	function verzoegern () {

		if (letztes != null) {
			document.getElementById('overlayerbild').style.display = 'none';
			document.getElementById(letztes).style.display = 'none';
			letztes = null;
		}
		
		return false;
	}
	
	function SendLaender(land, sprache) {
	
		document.laender.land.value = land;
		document.laender.sprache.value = sprache;
		document.laender.submit();
	
	}
	
	function SendLaenderPopup(land, sprache) {
	
		document.laenderpopup.land.value = land;
		document.laenderpopup.sprache.value = sprache;
		document.laenderpopup.submit();
	
	}
	
	function SendLaenderPopupSprache(land, landsession, sprache1, sprache2, sprache3, languageID) {
	
		if ((languageID != sprache1) && (languageID != sprache2) && (languageID != sprache3)) {
		
			document.getElementById('laenderpopup').style.display = 'none';
			document.getElementById('sprachepopup').style.display = 'block';
			document.getElementById(land).style.display = 'block';
			document.getElementById('landwahlen').style.display = 'none';
			document.getElementById('sprachewahlen').style.display = 'block';
			
		} else {
		
			SendLaenderPopup(landsession, languageID);
		
		}
	
	}
	
	var letztesaufzu = null;
	var letztesaufzuli = null;
	
	function aufzuautoVantaggi (welches, welchesli) {
	
		if (letztesaufzu != null && letztesaufzu != welches) {
			document.getElementById(letztesaufzu).style.display = 'none';
			document.getElementById(letztesaufzuli).className = '';
			letztesaufzu = null;
			letztesaufzuli = null;
		}

		if (document.getElementById(welches).style.display == 'block') {
			document.getElementById(welches).style.display = 'none';
			document.getElementById(welchesli).className = '';
		} else {
			document.getElementById(welches).style.display = 'none';
			document.getElementById(welches).style.display = 'block';
			document.getElementById(welchesli).className = 'aktiv';
			letztesaufzu = welches;
			letztesaufzuli = welchesli;
		}
		
		void(0);
	}
	
	function aufzuVantaggi (welches, ersteID) {

		if (document.getElementById(welches).style.display == 'block') {
			document.getElementById(welches).style.display = 'none';
			document.getElementById('id' + ersteID).style.display = 'none';
			document.getElementById('liid' + ersteID).className = '';
		} else {
			document.getElementById(welches).style.display = 'none';
			document.getElementById(welches).style.display = 'block';
			document.getElementById('id' + ersteID).style.display = 'block';
			document.getElementById('liid' + ersteID).className = 'aktiv';
			letztesaufzu = 'id' + ersteID;
			letztesaufzuli = 'liid' + ersteID;
		}
		
		void(0);
	}


/* Overlayer _________________________________________________*/

	function hideOverlayer () {

		document.getElementById('jsnewsletteroverlayerbg').style.display = 'none';
		document.getElementById('jsnewsletteroverlayerposition').style.display = 'none';
	
	}

	

