var dataLocation = "/fileadmin/files/hero.xml";

//====================================================================

var currentTime = new Date();
var pauseTime;
var transitionSpeed;
var imageRootUrl;
var navWidth;
var navMargin;
var zoneWidth;
var dateData;
var urlData;

$(document).ready(function(){
	
	$.ajax({
		type: "GET",
		url: dataLocation,
		success: function(xml)
		{
			
			// GET SLIDE SHOW SETTINGS FROM XML DOC
			$(xml).find('settings').each(function()
			{
				pauseTime = parseFloat($(this).find('pausetime').text())*1000;
				transitionSpeed = parseFloat($(this).find('transitionspeed').text())*1000;
				imageRootUrl = $(this).find('imagerooturl').text();
				navWidth = $(this).find('navwidth').text();
				navMargin = $(this).find('navmargin').text();
				zoneWidth = $(this).find('zonewidth').text();
				dateData = $(this).find('datedata').text();
				urlData = $(this).find('urldata').text();
				tierStructure = $(this).find('tierstructure').text();
				if (tierStructure == 2) {
					dateData = false;
					urlData = false;
				}
				
			});
			
			var slides = new Array();
			
			// PULL XML DATA FOR IMAGES
			$(xml).find('hero').each(function()
			{
				
				// SHOW SLIDE IF WITHIN DATE RANGE
				if (dateData == true) {
					var start = $(this).find('start').text().split('/');
					var end = $(this).find('end').text().split('/');
					
					start = new Date(start[2], start[0] - 1, start[1]);
					end = new Date(end[2], end[0] - 1, end[1]);			
					
					if (start < currentTime && end > currentTime) {
						var slide = new Object();
						slide.url = $(this).find('url').text();
						slide.image = $(this).find('image').text();
						slides[slides.length] = slide;					
					}
				} else {		
					var slide = new Object();
					if( urlData == true ){ slide.url = $(this).find('url').text() };
					
					if(tierStructure == 3) {
						slide.image = $(this).find('image').text();
					} else {
						slide.image = $(this).text();
					}
					slides[slides.length] = slide;	
				}
			
			});

			for (var i = 0; i < slides.length; i++) {
				var slide = slides[i];				
				var image = slide.image;
				
				if( urlData == true ){ 
					var url = slide.url;
					$('.herocontent').append('<a href="' + url + '"><img src="' + imageRootUrl +  image + '" alt="" /></a>');
				} else {
					$('.herocontent').append('<img src="' + imageRootUrl +  image + '" alt="" />');
				}
			}
			
			var pauseTimeout;
				
			// MOUSEENTER PAUSE
			$('.hero').mouseenter(function() { 
			    $('.herocontent').cycle('pause');
				clearTimeout(pauseTimeout) 
			});
			
			// MOUSELEAVE RESUME
			$('.hero').mouseleave(function() { 
				
				pauseTimeout = setTimeout(function(){ 
			    	$('.herocontent').cycle('resume', true); 
				}, pauseTime ); 
			});
			
			// CYCLER FUNCTIONS
		    $('.herocontent').cycle({
				fx: 'scrollHorz', //fade, scrollUp, scrollDown, scrollLeft, scrollRight, shuffle
			    timeout: pauseTime, //Display Time
			    pager: '.heronav', //Hero Container
			    pagerEvent: 'click', //Click to Navigation
		        prev: '.arrowleft', //Div for Left
		        next: '.arrowright', //Div for Right
			    speed: transitionSpeed //Transition Speed
			});
			
			// IF LESS THAN 2 SLIDES - SHOW NO ARROWS
			if ( $('.herocontent').children().length <= 1 ) {
				$('.arrowright').css('display','none');
				$('.arrowleft').css('display','none');
			}
			
			// CENTER NAVIGATION
			var navLeftPosition = (zoneWidth - (($('.herocontent').children().length * navWidth) - navMargin))/2
			$('.heronav').css('left',navLeftPosition);
			
			
		},
		error: function (xhr, ajaxOptions, thrownError){
        }
	});
});
