/*
* Author:      Marco Kuiper (http://www.marcofolio.net/)
*/

// Speed of the automatic slideshow
var slideshowSpeed = 6000;

// Variable to store the images we need to set as background
// which also includes some text and urls.
var photos = [ {
            "title": "View samples",
		    "image" : "Slide1.jpg",
		    "url": "/Node.aspx?NodeId=4",
		    "firstline" : "Samples of my work",
		    "secondline" : "Print design",
		    "backcolor": "ffffff"
        }, {
            "title": "View samples",
            "image": "Slide2.jpg",
            "url": "/Node.aspx?NodeId=3",
            "firstline": "Samples of my work",
            "secondline": "Logo design",
            "backcolor": "ffffff"
        }, {
            "title": "View work for this client",
            "image": "Slide3.jpg",
            "url": "/Node.aspx?NodeId=18",
            "firstline": "Featured client",
            "secondline": "Diversified",
            "backcolor": "ffffff"
        }, {
            "title": "View work for this client",
            "image": "Slide4.jpg",
            "url": "/Node.aspx?NodeId=19",
            "firstline": "Featured client",
            "secondline": "Dental Group South",
            "backcolor": "ffffff"
        }, {
            "title": "View this project",
            "image": "Slide5.jpg",
            "url": "#",
            "firstline": "Latest project",
            "secondline": "What is it?",
            "backcolor": "ffffff"
        }
];


	$(document).ready(function () {
		
		// Backwards navigation
		$("#back").click(function () {
			stopAnimation();
			navigate("back");
		});

		// Forward navigation
		$("#next").click(function () {
			stopAnimation();
			navigate("next");
		});

		var interval;
		$("#control").toggle(function () {
			stopAnimation();
		}, function () {
			// Change the background image to "pause"
			$(this).css({ "background-image": "url(/_MaryLord/templates/v1/images/btn_pause.png)" });

			// Show the next image
			navigate("next");

			// Start playing the animation
			interval = setInterval(function () {
				navigate("next");
			}, slideshowSpeed);
		});


		var activeContainer = 1;
		var currentImg = 0;
		var animating = false;
		
		var navigate = function (direction) {
			// Check if no animation is running. If it is, prevent the action
			if (animating) {
				return;
			}

			// Check which current image we need to show
			if (direction == "next") {
				currentImg++;
				if (currentImg == photos.length + 1) {
					currentImg = 1;
				}
			} else {
				currentImg--;
				if (currentImg == 0) {
					currentImg = photos.length;
				}
			}

			// Check which container we need to use
			var currentContainer = activeContainer;
			if (activeContainer == 1) {
				activeContainer = 2;
			} else {
				activeContainer = 1;
			}

			showImage(photos[currentImg - 1], currentContainer, activeContainer);
		};

		var currentZindex = -1;
		var showImage = function (photoObject, currentContainer, activeContainer) {
			animating = true;

			// Make sure the new container is always on the background
			currentZindex--;

			// Set the background image of the new active container
			$("#headerimg" + activeContainer).css({
				"background-image": "url(/_MaryLord/templates/v1/images/" + photoObject.image + ")",
				"display": "block",
				"z-index": currentZindex,
				"background-color": "#" + photoObject.backcolor
			});

			// Hide the header text
			$("#headertxt").css({ "display": "none" });

			// Set the new header text
			$("#firstline").html(photoObject.firstline);
			$("#secondline")
			.attr("href", photoObject.url)
			.html(photoObject.secondline);
			$("#pictureduri")
			.attr("href", photoObject.url)
			.html(photoObject.title);

			// $("#headerimg2").css({ "background-color" : "#" + photoObject.backcolor });

			// Fade out the current container
			// and display the header text when animation is complete
			$("#headerimg" + currentContainer).fadeOut(function () {
				setTimeout(function () {
					$("#headertxt").css({ "display": "block" });
					animating = false;
				}, 500);
			});
		};

		var stopAnimation = function () {
			// Change the background image to "play"
			$("#control").css({ "background-image": "url(/_MaryLord/templates/v1/images/btn_play.png)" });

			// Clear the interval
			clearInterval(interval);
		};

		// We should statically set the first image
		navigate("next");

		// Start playing the animation
		interval = setInterval(function () {
			navigate("next");
		}, slideshowSpeed);

	});
