var EVENT = {
	thumbsImageLink:"http://alastairwattsentertainment.co.uk/DancerWeb/images/thumbs/",
	slideImageLink:"http://alastairwattsentertainment.co.uk/DancerWeb/images/slides/",
	removeChildren:function(targetElement)
	{
		while(targetElement.childNodes.length>0)
		{
			targetElement.removeChild(targetElement.childNodes[0]);
		}
	},
	setStyle:function(targetElement,attribute)
	{
		try
			{
				targetElement.style.setAttribute('cssText',attribute);

			}catch(e)
			{
				targetElement.setAttribute('style',attribute);
			}

	},
	calcDay:function(str)
	{
		if(str.search(/Monday/i)!=-1) return 1;
		if(str.search(/Tuesday/i)!=-1) return 2;
		if(str.search(/Wednesday/i)!=-1) return 3;
		if(str.search(/Thursday/i)!=-1) return 4;
		if(str.search(/Friday/i)!=-1) return 5;
		if(str.search(/Saturday/i)!=-1) return 6;
		if(str.search(/Sunday/i)!=-1) return 7;

	},
	writeEventDiv:function(xml,targetElementName)
	{
		var targetElement = document.getElementById(targetElementName);
		var outputSummary=true;
		//First of all lefts clean out the target element so that we have a clean start
		EVENT.removeChildren(targetElement);
		var targetElement2 = document.getElementById('middle2');
		//EVENT.setStyle(targetElement2,"border:1px #dd1177 solid;");
		EVENT.removeChildren(targetElement2);
		try
		{
			// Check to see if there are any errors included no events on this date by checking xml for a message element
			var head = document.createElement('h2');
			head.appendChild(document.createTextNode(xml.getElementsByTagName("message")[0].firstChild.nodeValue));
			targetElement.appendChild(head);
		}
		catch(e)
		{
			//Okay so the error message element does not exist so we must have had at least one event returned
			// Set the title of the for the events returned to the date of the event
			var headtitletext = document.createElement('h1');
			EVENT.setStyle(headtitletext,"font-size:1.4em;color:gold;margin:0px;margin-left:30px;width:100%;text-align:left;");
			headtitletext.appendChild(document.createTextNode(xml.getElementsByTagName("description")[0].firstChild.nodeValue));
			var headtext = document.createElement('h1');
			EVENT.setStyle(headtext,"font-size:1.8em;margin:0px;margin-left:30px;width:100%;text-align:left;");
			headtext.appendChild(document.createTextNode(xml.getElementsByTagName("date")[0].firstChild.nodeValue));
			var dayNum =EVENT.calcDay(xml.getElementsByTagName("date")[0].firstChild.nodeValue);

			var head=document.createElement('div');
			EVENT.setStyle(head,"margin-bottom:20px;");

			head.appendChild(headtext);
			head.appendChild(headtitletext);

			targetElement.appendChild(head);

			// Okay lets get all of the events that have been returned
			var eventChildren=xml.getElementsByTagName('event');

			//Lets loop through all of the events and call our event builder function

			var mainevent=true;

			for (var i=0;i<eventChildren.length;i++)
			{
				var eventContainer = document.createElement('div');
				if(mainevent)
				{
					eventContainer.appendChild(EVENT.buildEventDiv(eventChildren[i],dayNum));
					eventContainer.appendChild(EVENT.buildGalleryDiv(eventChildren[i],"",4));

					mainevent=false;
				}
				else
				{
					var eventText = document.createElement('div');
					if(dayNum==3)
					{
						logoImage = new Image();
						logoImage.src = 'http://www.babewatchwycombe.com/images/whlogo.jpg';
						EVENT.setStyle(logoImage,'float:left;display:inline;margin-top:10px;width:200px;border:0px;height:178px');


						EVENT.setStyle(eventText,'float:left;width:20%;display:inline;clear:left;color:gold;padding:0px;font-style:italic;font-weight:bold;font-size:0.8em;padding-top:10px;padding-left:15px;');
						eventText.appendChild(document.createTextNode("Join us for an evening with top stunners at the White Horse."));
						eventText.appendChild(document.createTextNode(" Show starts at 8:00pm and finishes at midnight"));

					}
					else
					{
						logoImage = new Image();
						logoImage.src = 'http://www.babewatchwycombe.com/images/bar95logo.gif';
						EVENT.setStyle(logoImage,'float:left;display:inline;margin-top:10px;width:200px;border:0px;height:89px');
						EVENT.setStyle(eventText,'float:left;width:20%;display:inline;clear:left;color:gold;font-style:italic;font-weight:bold;font-size:0.8em;padding:0px;padding-top:10px;padding-left:15px;');
						eventText.appendChild(document.createTextNode("Join us for an evening with top stunners at Bar 95."));
						eventText.appendChild(document.createTextNode(" Show starts at 7:00pm and finishes at 2:00am"));
					}
						targetElement = document.getElementById('middle2');
						var headtext = document.createElement('h1');
						EVENT.setStyle(headtext,"float:left;font-size:1.6em;margin-left:20px;width:100%;display:inline;color:gold;margin-top:0px;text-align:center");
						headtext.appendChild(document.createTextNode("Tonight: "+eventChildren[i].getElementsByTagName("description")[0].firstChild.nodeValue));
						eventContainer.appendChild(headtext);
						eventContainer.appendChild(EVENT.buildGalleryDiv(eventChildren[i],null,null,mainevent));
						targetElement.appendChild(logoImage);
						targetElement.appendChild(eventText);
						targetElement.appendChild(eventContainer);


				}
				//targetElement2.parentNode.removeChild(targetElement2);
				/*if(eventChildren.length==1)
				{
					var mydate=new Date();
					if(mydate.getDate()<10) thisdate=mydate.getFullYear()+"-"+getFullMonth(mydate.getMonth())+"-0"+mydate.getDate();
					else thisdate=mydate.getFullYear()+"-"+getFullMonth(mydate.getMonth())+"-"+mydate.getDate();
					var actionstring='action=getsummary&date=2007-04-12';//+thisdate;
					AJAX.request_object('http://www.alastairwattsentertainment.co.uk/DancerWeb/apitest.php',actionstring,'middle2',EVENT.buildSummaryDiv);

				}*/
				targetElement.appendChild(eventContainer);
			}
		}
	},
	removeChildren:function(targetElement)
	{
		while(targetElement.childNodes.length>0)
		{
			targetElement.removeChild(targetElement.childNodes[0]);
		}
	},
	buildEveningEvent:function(xml)
	{
		//okay create a container div
		var eventElement = document.createElement('div');

		//Create the time Element
		var Time = document.createElement('h3');
		Time.appendChild(document.createTextNode(xml.getElementsByTagName("time")[0].firstChild.nodeValue+" on stage, with"));

		var Dancerslist = document.createElement('ul');

		var dancers = xml.getElementsByTagName('stagename');
		for(var i=0;i<dancers.length;i++)
		{
			listItem = document.createElement('li');
			listItem.appendChild(document.createTextNode(dancers[i].firstChild.nodeValue));
			Dancerslist.appendChild(listItem);
		}

	},
	buildEventDiv:function(xml,dayNum)
	{

		var endText;
		if(location.href.search(/bar95/i)!=-1)
		{
			endText = " finishes 2:00am";
		}
		else
		{
			if(xml.getElementsByTagName("date")[0].firstChild.nodeValue.search(/Saturday 8/i)!=-1)
			{
				endText = " finishes 5.00pm";

			}
			else
			{
				if(dayNum < 5) endText = " finishes 4.30/5.00pm approx, will continue longer if audience size justifies";
				else if(dayNum ==5) endText = " finishes 6.00pm approx";
				else if(dayNum >5) endText = " finishes 6.00pm approx, may continue longer if audience size justifies";
			}
		}

		//okay lets create a container div
		var eventElement = document.createElement('div');
		eventElement.className = 'event';

		//Create the Description Element
		var Description = document.createElement('h2');
		EVENT.setStyle(Description,"text-align:left;margin-left:30px;font-size:1.2em");
		Description.appendChild(document.createTextNode("appearing today:"));

		//Create the time Element
		var TimeText = xml.getElementsByTagName("time")[0].firstChild.nodeValue;
		TimeText = TimeText.toLowerCase();
		TimeText = "Show starts at "+TimeText+endText;
		var Time = document.createElement('h3');
		Time.appendChild(document.createTextNode(TimeText));
		EVENT.setStyle(Time,'padding-left:0px;text-align:left;width:80%;font-style:italic;color:gold;margin-left:30px');

		//Okay lets check to see if we have any dancers assigned
		try
		{
			var head = document.createElement('h2');
			head.appendChild(document.createTextNode(xml.getElementsByTagName("message")[0].firstChild.nodeValue));
			AJAX.$(event).appendChild(head);
		}
		catch(e)
		{

			//Okay so we have got dancers assigned to the event
			var Dancerslist = document.createElement('ul');
			EVENT.setStyle(Dancerslist,"font-size:1.1em;margin:0px;margin-left:30px;padding:0px;color:gold");
			var dancers = xml.getElementsByTagName('stagename');
			for(var i=0;i<dancers.length;i++)
			{
				listItem = document.createElement('li');
				listItem.appendChild(document.createTextNode(dancers[i].firstChild.nodeValue));
				Dancerslist.appendChild(listItem);
			}
		}
		//Okay so now lets build our event element;
		eventElement.appendChild(Description);
		eventElement.appendChild(Dancerslist);
		eventElement.appendChild(Time);
		//Return our event div
		return eventElement;
	},
	buildGalleryDiv:function(xml,targetElementName,maximages,main)
	{
		//Lets create our gallery container
		var imageContainer = document.createElement('div');
		imageContainer.className = "gallery";

		//Now lets get all of the image tags in the xml we were given
		images = xml.getElementsByTagName('dancer');
		if(maximages===null)maximages=images.length;
		if(images.length<maximages){maximages=images.length;}
		for(var i=0;i<maximages;i++)
		{
			//Loop throught all the images and pass them individually to the buildImageDiv method
			try
			{
				var dancerpic = images[i].getElementsByTagName('image')[0];
				imageContainer.appendChild(EVENT.buildImageDiv(dancerpic));
			}catch(e){

					if(main===false)
					{
						spacer = document.createElement('div');
						spacer.className = "image";
						spacer.appendChild(document.createTextNode(xml.getElementsByTagName('dancer')[i].firstChild.firstChild.nodeValue));
						imageContainer.appendChild(spacer);
					}

				}

		}
		try
		{
			targetElement = document.getElementById(targetElementName);
			targetElement.appendChild(imageContainer);
		}catch(e){}

		return imageContainer;
	},

	/*

	@** Input XMl format expected

	<image name="">
		<caption />
		<imageLink />
		<width />
		<height />
	</image>

	@** Return Format

	<div class="image">
		<span>Day Name</span>
		<img src="imageLink" width="width" height="height" />
		<span>stagename</span>
	</div>

	*/
	buildImageDiv:function(xml)
	{
		var imageContainer = document.createElement('div');
		EVENT.setStyle(imageContainer,"margin-left:0px;text-align:center;");
		imageContainer.className = "image";

		try
		{
			//var title = document.createElement('span');
			//title.appendChild(document.createTextNode(xml.getElementsByTagName('caption')[0].firstChild.nodeValue));
		}catch(e){}

		var image = document.createElement('img');

		image.src = EVENT.thumbsImageLink+xml.getElementsByTagName('imageLink')[0].firstChild.nodeValue;
		image.width = xml.getElementsByTagName('width')[0].firstChild.nodeValue;
		image.height = xml.getElementsByTagName('height')[0].firstChild.nodeValue;

		var stagename = document.createElement('span');
		EVENT.setStyle(stagename,"margin-top:5px;margin-left:0px");
		stagename.appendChild(document.createTextNode(xml.getAttribute('name')));

		//imageContainer.appendChild(title);
		imageContainer.appendChild(image);
		imageContainer.appendChild(stagename);
		return imageContainer;
	},
	/*

	@** Input XMl format expected
	<summary>
		<day name="">
			<stagename />
			<imageLink />
			<width />
			<height />
			<caption />
		</image>
	</summary>

	@** Return Format

	<div class="summary>
		<div class="image">
			<span>Day Name</span>
			<img src="imageLink" width="width" height="height" />
			<span>stagename</span>
		</div>
	</div>

	*/
	buildSummaryDiv:function(xml,targetElementName)
	{
			bar95 = new Image();
			bar95.src = 'http://www.babewatchwycombe.com/images/bar95logo.gif';
			//bar95.className = 'image';
			EVENT.setStyle(bar95,'float:left;display:inline;margin-top:10px;border:0px;');

		var targetElement = document.getElementById(targetElementName);

		var titleDiv = document.createElement('div');
		EVENT.setStyle(titleDiv,'color:gold;font-size:1.8em;padding-top:20px;');
		titleDiv.appendChild(document.createTextNode('Coming Soon'));

		var summaryElement = document.createElement('div');
		summaryElement.className="weeklysummary";
		dayElements = xml.getElementsByTagName('day');
		for(var i=0;i<dayElements.length;i++)
		{
			summaryElement.appendChild(EVENT.buildImageDiv(dayElements[i]));
		}
		targetElement.appendChild(titleDiv);
		targetElement.appendChild(bar95);
		targetElement.appendChild(summaryElement);
	}

}

