var myView;
var myAjax;
var album;
var content;
var type;
var currentPage;

function Control()
{
	myView = new View(reageerOpKlikOpMenu, 
					  toonGallery, 
					  toonProducts, 
					  reageerOpKlikOpVolgende, 
					  reageerOpKlikOpVorige, 
					  reageerOpEindeSchuivenNaarVolgende, 
					  reageerOpEindeSchuivenNaarVorige, 	
					  reageerOpEindeSchuivenNaarBenedenVoorLaden, 
					  reageerOpEindeSchuivenNaarBenedenVoorContent, 
					  reageerOpEindeSchuivenNaarBoven, 
					  reageerOpEindeSchuifNaarGekozenVolgendeFoto, 
					  reageerOpEindeSchuifNaarGekozenVorigeFoto);

	myAjax = new Ajax(laden, setNieuwContent);
	
	
	var busy = false;
	
	this.reageerOpGekozenFoto = reageerOpGekozenFoto;
	
	currentPage = 'Home'
	myView.veranderToestand('Home', 'Active');
	
	function reageerOpKlikOpMenu(e)
	{		
		if(e)//firefox
		{
			bron = e.target;
			bronID = bron.id;
		}
		else //IE
		{
			bron = window.event.srcElement;
			bronID = bron.id;
		}
		if(bronID != currentPage && bronID != "products")
		{
			if(currentPage == 'fotoAlbum')
			{
				myView.schuifDivGalleryAndProductsNaarBeneden();
			}
			myView.veranderToestand(bronID, 'Active');
			if((currentPage != 'Gallery') && (currentPage != 'products') && (currentPage != 'fotoAlbum'))
			{
				myView.veranderToestand(currentPage, '');
			}
			currentPage = bronID;
			myAjax.makeRequest('index.php','?actie=Content&contentName='+bronID, 'content', 'GET', 'pageLoading');
		}
		else if(bronID == "products")
		{
			if((currentPage != 'Gallery') && (currentPage != 'products') && (currentPage != 'fotoAlbum'))
			{
				myView.veranderToestand(currentPage, '');
			}
			currentPage = bronID;
			myAjax.makeRequest('index.php','?actie=Content&contentName='+bronID, 'content', 'GET', 'pageLoading');
		}
	}
	
	function toonHome()
	{

		myAjax.makeRequest("index.php","?actie=HomeAjax","","GET","pageLoading");
		currentPage = 'Home';
		myView.setActieveEnPassieveButton(currentPage);
	}
		
	function toonGallery(e)
	{
		if(e)//firefox
		{
			bron = e.target;
			bronID = bron.id;
		}
		else //IE
		{
			bron = window.event.srcElement;
			bronID = bron.id;
		}
		
		if(bronID == "terug")
		{
			myView.schuifDivGalleryAndProductsNaarBeneden();
		}
		myAjax.makeRequest("index.php","?actie=Gallery","","GET","pageLoading");
		if(currentPage != 'Gallery' && bronID != "terug")
		{
			myView.veranderToestand(currentPage, '');
		}
		currentPage = 'Gallery';
	}
	
	function toonProducts()
	{
		myView.schuifDivGalleryAndProductsNaarBoven();
		myView.schuifProductenNaarBoven();
	}
	
	function setNieuwContent(newContent, newType)
	{
		content = newContent;
		type = newType;
		reageerOpContentOntvangst();
	}
	
	function reageerOpContentOntvangst()
	{
		if(busy == false)
		{
			busy = true;
			myView.schuifContentNaarBenedenVoorContent();
		}
		else
		{
			setTimeout(reageerOpContentOntvangst, 2000);
		}
	}
	
	function reageerOpEindeSchuivenNaarBenedenVoorContent()
	{
		myView.vulContent(content,type);
		if(type == "fotoAlbum")
		{
			myView.InitialiseerFotoAlbum();
			myView.setEersteFoto(album);
		}
		myView.schuifContentNaarBoven();
	}

	function laden()
	{
		if(busy == false)
		{
			busy = true;
			myView.schuifContentNaarBenedenVoorLaden();
		}
		else
		{
			setTimeout(laden, 2000);
		}
	}
	
	function reageerOpEindeSchuivenNaarBenedenVoorLaden()
	{
		myView.vulContent("","loading");
		myView.schuifContentNaarBoven();
	}
	
	function reageerOpEindeSchuivenNaarBoven()
	{
		busy = false;
	}
	
	function reageerOpKlikOpVolgende(e)
	{
		myView.verwijderVorigeDiv();
		myView.gaNaarVolgendeFoto();
	}
	
	function reageerOpKlikOpVorige()
	{
		myView.verwijderVolgendeDiv();
		myView.gaNaarVorigeFoto();
	}
	
	function reageerOpEindeSchuivenNaarVolgende()
	{
		myView.setVolgendeNewFotoId();
		myView.veranderDivIdNaarVolgende();
		myView.setVolgendeFoto(album);
		myView.selecteerActieveFoto();
		myView.scrollMeeMetFotoNaarVolgende();
	}
	
	function reageerOpEindeSchuivenNaarVorige()
	{
		myView.setVorigeNewFotoId();
		myView.veranderDivIdNaarVorige();
		myView.setVorigeFoto(album);
		myView.selecteerActieveFoto();
		myView.scrollMeeMetFotoNaarVorige();
	}
	
	function reageerOpEindeSchuifNaarGekozenVolgendeFoto()
	{
		myView.setGekozenNewVolgendeFotoId();
		myView.veranderDivIdNaarVolgende();
		myView.setVolgendeFoto(album);
		myView.verwijderVorigeDiv();
		myView.setVorigeFoto(album);
		myView.selecteerActieveFoto();
		myView.scrollMeeMetFotoNaarGekozenVolgende();
		myView.InitialiseerFotoAlbum();
	}
	
	function reageerOpEindeSchuifNaarGekozenVorigeFoto()
	{
		myView.setGekozenNewVorigeFotoId();
		myView.veranderDivIdNaarVorige();
		myView.setVorigeFoto(album);
		myView.verwijderVolgendeDiv();
		myView.setVolgendeFoto(album);
		myView.selecteerActieveFoto();
		myView.scrollMeeMetFotoNaarGekozenVorige();
		myView.InitialiseerFotoAlbum();
	}
}

function reageerOpGekozenFoto(fotoNr)
{
	myView.controleerGekozenFoto(fotoNr, album);
}

function reageerOpGeklikteAlbum(newAlbum,afbeeldingen)
{
	album = newAlbum;
	myView.maakFoto(afbeeldingen);
	myAjax.makeRequest("index.php","?actie=FotoAlbum&path="+album,"","GET","fotoLoading");
	myView.schuifDivGalleryAndProductsNaarBoven();
	myView.laadNavigator(album);
	currentPage = 'fotoAlbum';
}


