function DataLoader()
{
	iHeartArray:Array;
	workSitesArray:Array;
	workAdvertisingArray:Array;
	workDiversionsArray:Array;
	summaryArray:Array;
	
	var locationSites = "data/work_sites.xml";
	var locationAdvertising = "data/work_advertising.xml";
	var locationDiversions = "data/work_diversions.xml";
	var locationFeatures = "data/work_features.xml";
	var locationGames = "data/work_games.xml";
	
	
	DataLoader.prototype.loadXMLAjaxIHeart = function(src)
	{
		$.ajax({
			type: "GET",
			url: src,
			dataType: "xml",
			success: parseXmlIHeart,
			error: showError
		  });
	}
	
	function showError(jqXHR, textStatus, errorThrown)
	{
		alert("error: "+textStatus);
	}
	
	function parseXmlIHeart(xml)
	{
		iHeartArray = [];
		$(xml).find("heart").each(function()
		{
			iHeartArray.push($(this).text());
			//alert($(this).find('heart').text());
		});
		$E.dispatchEvent('parsedIHeart');
	}
	
	// SUMMARY
	
	DataLoader.prototype.loadXMLAjaxSummary = function(src)
	{
		$.ajax({
			type: "GET",
			url: src,
			dataType: "xml",
			success: parseXmlSummary,
			error: showError
		  });
	}
	
	function parseXmlSummary(xml)
	{
		summaryArray = [];
		$(xml).find("resItem").each(function()
		{
			var listObj = new Object();
			listObj.location = $(this).attr("location");
			listObj.title = $(this).attr("title");
			listObj.descBody = $(this).text();
			
			summaryArray.push(listObj);
		});
		//alert("data load complete");
		$E.dispatchEvent('parsedSummary');
	}
	
	// WORK SITES
	
	DataLoader.prototype.loadXMLAjaxWorkSites = function()
	{
		//alert("loading "+src);
		$.ajax({
			type: "GET",
			url: locationSites,
			dataType: "xml",
			success: parseXmlWorkSites,
			error: showError
		  });
	}
	
	function parseXmlWorkSites(xml)
	{
		//alert("parsing");
		workSitesArray = [];
		$(xml).find("navItem").each(function()
		{
			
			var listObj = new Object();
			listObj.title = $(this).attr("title");
			listObj.agency = $(this).attr("agency");
			listObj.role = $(this).attr("role");
			listObj.imgSrc = $(this).find("images").find("primaryImg").attr("imgSrc");
			listObj.descHead = $(this).find("featuretteHead").text();
			listObj.descBody = $(this).find("featuretteBody").text();
			listObj.cinSrc = $(this).find("cinSource").text();
			
			workSitesArray.push(listObj);
		});
		//alert("data load complete");
		//$E.dispatchEvent('parsedWorkSites');
		loadXMLAjaxWorkAdvertising();
	}
	
	// WORK ADVERTISING
	
	loadXMLAjaxWorkAdvertising = function()
	{
		$.ajax({
			type: "GET",
			url: locationAdvertising,
			dataType: "xml",
			success: parseXmlWorkAdvertising,
			error: showError
		  });
	}
	
	function parseXmlWorkAdvertising(xml)
	{
		//alert("parsing");
		workAdvertisingArray = [];
		$(xml).find("navItem").each(function()
		{
			
			var listObj = new Object();
			listObj.title = $(this).attr("title");
			listObj.agency = $(this).attr("agency");
			listObj.role = $(this).attr("role");
			listObj.imgSrc = $(this).find("images").find("primaryImg").attr("imgSrc");
			listObj.descHead = $(this).find("featuretteHead").text();
			listObj.descBody = $(this).find("featuretteBody").text();
			listObj.cinSrc = $(this).find("cinSource").text();
			
			workAdvertisingArray.push(listObj);
		});
		//alert("data load complete");
		//$E.dispatchEvent('parsedWork');	
		loadXMLAjaxWorkDiversions();
	}
	
	// WORK DIVERSIONS
	
	loadXMLAjaxWorkDiversions = function()
	{
		$.ajax({
			type: "GET",
			url: locationDiversions,
			dataType: "xml",
			success: parseXmlWorkDiversions,
			error: showError
		  });
	}
	
	function parseXmlWorkDiversions(xml)
	{
		//alert("parsing");
		workDiversionsArray = [];
		$(xml).find("navItem").each(function()
		{
			
			var listObj = new Object();
			listObj.title = $(this).attr("title");
			listObj.agency = $(this).attr("agency");
			listObj.role = $(this).attr("role");
			listObj.imgSrc = $(this).find("images").find("primaryImg").attr("imgSrc");
			listObj.descHead = $(this).find("featuretteHead").text();
			listObj.descBody = $(this).find("featuretteBody").text();
			listObj.cinSrc = $(this).find("cinSource").text();
			
			workDiversionsArray.push(listObj);
		});
		//alert("data load complete");
		//$E.dispatchEvent('parsedWork');
		loadXMLAjaxWorkGames();	
	}
	
	// WORK GAMES
	
	loadXMLAjaxWorkGames= function()
	{
		$.ajax({
			type: "GET",
			url: locationGames,
			dataType: "xml",
			success: parseXmlWorkGames,
			error: showError
		  });
	}
	
	function parseXmlWorkGames(xml)
	{
		//alert("parsing");
		workGamesArray = [];
		$(xml).find("navItem").each(function()
		{
			
			var listObj = new Object();
			listObj.title = $(this).attr("title");
			listObj.agency = $(this).attr("agency");
			listObj.role = $(this).attr("role");
			listObj.imgSrc = $(this).find("images").find("primaryImg").attr("imgSrc");
			listObj.descHead = $(this).find("featuretteHead").text();
			listObj.descBody = $(this).find("featuretteBody").text();
			listObj.cinSrc = $(this).find("cinSource").text();
			
			workGamesArray.push(listObj);
		});
		//alert("data load complete");
		//$E.dispatchEvent('parsedWork');
		loadXMLAjaxWorkFeatures();	
	}
	
	// WORK FEATURES
	
	loadXMLAjaxWorkFeatures= function()
	{
		$.ajax({
			type: "GET",
			url: locationFeatures,
			dataType: "xml",
			success: parseXmlWorkFeatures,
			error: showError
		  });
	}
	
	function parseXmlWorkFeatures(xml)
	{
		//alert("parsing");
		workFeaturesArray = [];
		$(xml).find("navItem").each(function()
		{
			
			var listObj = new Object();
			listObj.title = $(this).attr("title");
			listObj.agency = $(this).attr("agency");
			listObj.role = $(this).attr("role");
			listObj.imgSrc = $(this).find("images").find("primaryImg").attr("imgSrc");
			listObj.descHead = $(this).find("featuretteHead").text();
			listObj.descBody = $(this).find("featuretteBody").text();
			listObj.cinSrc = $(this).find("cinSource").text();
			
			workFeaturesArray.push(listObj);
		});
		//alert("data load complete");
		$E.dispatchEvent('parsedWork');	
	}
}
