window.addEvent('domready', function(){
	presetInputField( document.getElementById ( 'nlEmailField' ), strNlSignInFieldPreset );
});

function changeImg(displayImg)
{
	// Bild-Container-Id
	var strImgContainerId = 'HomeAmbienteImages';
	// Bild-Objekt für Preloading
	var objImgTimeShift = new Image();

    // Image Container Element
 	var objImgContainer = jQuery( '#' + strImgContainerId );

	// Bildinformationen
	var arrImgInfo = [
		{//MO-FR 8-16
			strLinkHref: 'de/pflanzenwaende.html',
			strLinkTarget: '_self',
			strImgPath: 'img/share/other/pflanzenwand/gruene-waende-3.jpg',
			strTitle: 'Vertikale Pflanzenwände - Bei uns wachsen die Pflanzen von oben nach unten',
			strTxt: 'Vertikale Pflanzenwände<br>Bei uns wachsen die Pflanzen von oben nach unten',
			strTxtClass: 'bottom2',
         	strImgClass: ''
		},
		{//MO-FR 16-8
			strLinkHref: 'de/pflanzenwaende.html',
			strLinkTarget: '_self',
			strImgPath: 'img/share/other/pflanzenwand/pflanzenwaende-1.jpg',
			strTitle: 'Raumklima verbessern, Tapete sparen: Mit lebenden Wänden unter einem Dach',
			strTxt: 'Raumklima verbessern, Tapete sparen:<br>Mit lebenden Wänden unter einem Dach',
			strTxtClass: 'bottom2',
         	strImgClass: ''
		},
		{//SA-SO
			strLinkHref: 'de/pflanzenwaende.html',
			strLinkTarget: '_self',
			strImgPath: 'img/share/other/pflanzenwand/vertikal-gruen-1.jpg',
			strTitle: 'Entspannung im Grünen - Auch in den eigenen vier Wänden',
			strTxt: 'Entspannung im Grünen<br>Auch in den eigenen vier Wänden',
			strTxtClass: 'bottom2',
         	strImgClass: ''
		}
//			{
//				strLinkHref: 'de/gartenteichbecken.html',
//				strLinkTarget: '_self',
//				strImgPath: 'img/share/other/gartenteich-1-ambiente.jpg',
//				strTitle: 'Gartenteichbecken – Natur perfekt inszeniert',
//				strTxt: 'Gartenteichbecken – Natur perfekt inszeniert',
//				strTxtClass: 'bottom2',
//            	strImgClass: ''
//			},
// 			{
// 				strLinkHref: 'downloads/kataloge/dimension_produkt_4.pdf',
// 				strLinkTarget: '_self',
// 				strImgPath: 'img/share/other/startseite_ambiente2.jpg',
// 				strTitle: 'Gefäße, die sich nicht verstecken m&uuml;ssen<br />DIMENSION PRODUKT4.',
// 				strTxt: 'Gef&auml;&szlig;e, die sich nicht verstecken m&uuml;ssen<br />DIMENSION PRODUKT4.',
// 				strTxtClass: '',
//              strImgClass: ''
// 			},
// 			{
// 				strLinkHref: 'downloads/kataloge/dimension_produkt_4.pdf',
// 				strLinkTarget: '_self',
// 				strImgPath: 'img/share/other/startseite_ambiente3.jpg',
// 				strTitle: 'Das passende Grünzeug finden Sie bei uns!<br />DIMENSION PRODUKT4.',
// 				strTxt: 'Das passende Gr&uuml;nzeug finden Sie bei uns!<br />DIMENSION PRODUKT4.',
// 				strTxtClass: 'bottom',
//              strImgClass: ''
// 			}
// 			{
// 				strLinkHref: 'http://www.hydroflora.de/shop/Kunststoff/Lechuza-Line/Lechuza-Cubico-Weihnachtsangebot::260.html',
// 				strLinkTarget: '_self',
// 				strImgPath: 'img/share/other/lechuza_cubico_angebot.jpg',
// 				strTitle: 'Lechuza Cubico - Weihnachtaktion',
// 				strTxt: '',
// 				strTxtClass: 'small',
// 				strImgClass: 'noborder'
// 			}

	];
	// Startzeiten der Bilder
	var arrDisplayTimeSpans = [
		{
			iImgInfoId: 2, // Ambiente 3
			iStartDayOfWeek: 0,
			iStartHourOfDay: 0,
			iStartMinOfDay: 0
		},
		{
			iImgInfoId: 1, // Ambiente 2
			iStartDayOfWeek: 0,
			iStartHourOfDay: 22,
			iStartMinOfDay: 0
		},
		{
			iImgInfoId: 0, // Ambiente 1
			iStartDayOfWeek: 1, // Mo 8:00
			iStartHourOfDay: 8,
			iStartMinOfDay: 0
		},
		{
			iImgInfoId: 1, // Ambiente 2
			iStartDayOfWeek: 1, // Mo 16:00
			iStartHourOfDay: 16,
			iStartMinOfDay: 0
		},
		{
			iImgInfoId: 0, // Ambiente 1
			iStartDayOfWeek: 2,
			iStartHourOfDay: 8,
			iStartMinOfDay: 0
		},
		{
			iImgInfoId: 1, // Ambiente 2
			iStartDayOfWeek: 2,
			iStartHourOfDay: 16,
			iStartMinOfDay: 0
		},
		{
			iImgInfoId: 0, // Ambiente 1
			iStartDayOfWeek: 3,
			iStartHourOfDay: 8,
			iStartMinOfDay: 0
		},
		{
			iImgInfoId: 1, // Ambiente 2
			iStartDayOfWeek: 3,
			iStartHourOfDay: 16,
			iStartMinOfDay: 0
		},
		{
			iImgInfoId: 0, // Ambiente 1
			iStartDayOfWeek: 4,
			iStartHourOfDay: 8,
			iStartMinOfDay: 0
		},
		{
			iImgInfoId: 1, // Ambiente 2
			iStartDayOfWeek: 4,
			iStartHourOfDay: 16,
			iStartMinOfDay: 0
		},
		{
			iImgInfoId: 0, // Ambiente 1
			iStartDayOfWeek: 5,
			iStartHourOfDay: 8,
			iStartMinOfDay: 0
		},
		{
			iImgInfoId: 1, // Ambiente 2
			iStartDayOfWeek: 5,
			iStartHourOfDay: 16,
			iStartMinOfDay: 0
		},
		{
			iImgInfoId: 2, // Ambiente 3
			iStartDayOfWeek: 6,
			iStartHourOfDay: 0,
			iStartMinOfDay: 0
		},
		{
			iImgInfoId: 2, // Ambiente 3
			iStartDayOfWeek: 6,
			iStartHourOfDay: 23,
			iStartMinOfDay: 59
		}
// 		{
// 			iImgInfoId: 0, // Aktion
// 			iStartDayOfWeek: 0,
// 			iStartHourOfDay: 0,
// 			iStartMinOfDay: 0
// 		},
// 		{
// 			iImgInfoId: 0, // Aktion
// 			iStartDayOfWeek: 6,
// 			iStartHourOfDay: 0,
// 			iStartMinOfDay: 0
// 		}
	];


	// Zeit setzen "changeImg('13 11 2011 8:01')" (für Entwickler)
	// Format: "mm dd yyyy hh:mm"
	if (
			( typeof displayImg != 'undefined' ) &&
			( iDate = Date.parse( displayImg ) ) 
		)
	{
		var objDate = new Date(iDate);
		console.log(objDate);
	}
	else
	{
		var objDate = new Date();
	}
	
	objDate.setSeconds( 0 );
	objDate.setMilliseconds( 0 );
	// Initialisierung mit der aktuellen Zeit
	var objTimeSpanInfo = {
		iDiffToNext: objDate.getTime(),
		iDiffToLast: -1 * objDate.getTime(),
		iIndexLast: 0,
		iIndexNext: 0
	}
	var actWeekDay = objDate.getDay(); // 0-6 / Start Sonntag
	
	// Bild direkt auswählen (für Entwickler)
	// displayImg == array-index
	if (
			( typeof displayImg != 'undefined' ) &&
			( !isNaN( displayImg ) ) 
		)
	{
			objTimeSpanInfo.iDiffToLast = 99999;
			objTimeSpanInfo.iIndexLast = displayImg;
	}
	else
	{
		// Iterieren aller Startzeiten
		jQuery( arrDisplayTimeSpans ).each(
			function( iIndex )
			{
			    var iDayDiff = this.iStartDayOfWeek - actWeekDay; // neg. Wert -> vergangen / 0 (Null) -> Heute / pos. Wert -> Zukunft

				// Temp. Date-Obj
                var objTmpDate = new Date( objDate.getTime() );
                // Setzen des Datums anhand der Differenz des gewünschten Wochentages und des aktuellen Wochentages
                objTmpDate.setDate( objDate.getDate() + iDayDiff );
				objTmpDate.setHours( this.iStartHourOfDay );
				objTmpDate.setMinutes( this.iStartMinOfDay );
				objTmpDate.setSeconds( 59 );
				objTmpDate.setMilliseconds( 999 );
				
                var iTstamp = objTmpDate.getTime(); // Generierter Timestamp des Startdatums
                var iTmpDiffFromNow =  iTstamp - objDate.getTime();// neg. Wert -> vergangen / 0 (Null) -> Jetzt / pos. Wert -> Zukunft

				// Wenn iTmpDiffFromNow > 0, dann Liegt das Datum in der Zukunft.
				// Wenn die bisherige kleinste Differenz zur aktuellen Zeit minus der Differenz des aktuellen Objekts größer Null,
				// so ist die die aktuelle Differenz kleiner
				if (
				        ( objTimeSpanInfo.iDiffToNext === false ) ||
						(
							( iTmpDiffFromNow > 0 ) &&
							( ( objTimeSpanInfo.iDiffToNext - iTmpDiffFromNow ) > 0 )
						)
					)
				{
					objTimeSpanInfo.iDiffToNext = iTmpDiffFromNow;
					objTimeSpanInfo.iIndexNext = this.iImgInfoId;
				}
				// Wenn iTmpDiffFromNow <= 0, dann liegt das Datum in der Vergangenheit.
				// Wenn die bisherige kleinste Differenz zur aktuellen Zeit minus der Differenz des aktuellen Objekts kleiner Null (da negative Zahlen),
				// so ist die die aktuelle Differenz kleiner
				else if (
					        ( objTimeSpanInfo.iDiffToLast === false ) ||
							(
								( iTmpDiffFromNow <= 0 ) &&
								( ( objTimeSpanInfo.iDiffToLast - iTmpDiffFromNow ) <= 0 )
							)
						)
				{
					objTimeSpanInfo.iDiffToLast = iTmpDiffFromNow;
					objTimeSpanInfo.iIndexLast = this.iImgInfoId;
				}
			}
		);
	}

	// Image Preloading
	objImgTimeShift.src = arrImgInfo[ objTimeSpanInfo.iIndexLast ].strImgPath;
	// Image Container Element
 	var objImgContainer = jQuery( '#' + strImgContainerId );

	// Anpassen der Attribute
	jQuery( 'img', objImgContainer ).attr({
         'src': objImgTimeShift.src,
         'alt': arrImgInfo[ objTimeSpanInfo.iIndexLast ].strTitle,
         'class': arrImgInfo[ objTimeSpanInfo.iIndexLast ].strImgClass
	});
	// Anpassen der Attribute
	jQuery( 'a', objImgContainer ).attr({
         'href': arrImgInfo[ objTimeSpanInfo.iIndexLast ].strLinkHref,
         'target': arrImgInfo[ objTimeSpanInfo.iIndexLast ].strLinkTarget,
         'title': arrImgInfo[ objTimeSpanInfo.iIndexLast ].strTitle
	});
	// Einfügen des Textes
	var objTextContainer = jQuery( '> p', objImgContainer );
	if ( arrImgInfo[ objTimeSpanInfo.iIndexLast ].strTxt != '' )
	{
		jQuery( '> p', objImgContainer ).attr( 'class', arrImgInfo[ objTimeSpanInfo.iIndexLast ].strTxtClass ).html( arrImgInfo[ objTimeSpanInfo.iIndexLast ].strTxt );
		jQuery( '> p', objImgContainer ).show();
	}
	else
	{
        jQuery( '> p', objImgContainer ).hide();
	}

	// Sicherstellen, dass das Bild fertig geladen ist ...
	var objImgLoadInterval = setInterval(
		function()
		{
		    if ( objImgTimeShift.complete == true )
		    {
                clearInterval( objImgLoadInterval );
				objImgContainer.slideDown( 1000,
					function()
					{
					    if ( jQuery.browser.msie && jQuery.browser.version < 8 )
                        	objImgContainer.css( 'position', 'static' );
					}
				);
			}
		},
		50
	);

    // Erneuter Aufruf, für Bildwechsel
	setTimeout(
		function()
		{
			// Preloading Next Image
			objImgTimeShift.src = arrImgInfo[ objTimeSpanInfo.iIndexNext ].strImgPath;
		    objImgContainer.slideUp( 1000,
				function()
				{
		            changeImg();
				}
			);
		},
		objTimeSpanInfo.iDiffToNext
	);
}


if(window.jQuery){
	jQuery(function(){

		changeImg();

	});
};


