	function Program(title,desc)
	{
		this.title = title;
		this.desc = desc;
	}
	
	function CreateTimeSlot(time)
	{
		var objTimeSlot = new Object();
		objTimeSlot.time = time;
		objTimeSlot.progs = new Array();
		
		function addProg(prog)
		{
			this.progs[this.progs.length] = prog;
		}
		
		objTimeSlot.addProg = addProg;
		return objTimeSlot;
	}
	
	function CreateWeekDay(id)
	{
		var objWeekDay = new Object();
		objWeekDay.id = id
		objWeekDay.sch = null;
		objWeekDay.day = null;
		objWeekDay.timeslots = new Array();
		
		function addTimeSlot(ts)
		{
			this.timeslots[this.timeslots.length] = ts;
		}
		
		objWeekDay.addTimeSlot = addTimeSlot;
		return objWeekDay;
	}
	
	var xmlDoc = null;
	
	function LoadSchXML(fileName)
	{
	  if (window.ActiveXObject)
	  {
		xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
		xmlDoc.async = false;
		xmlDoc.load(fileName);
		InitSchedules();
	  }
	  else if (document.implementation && document.implementation.createDocument)
	  {
		xmlDoc = document.implementation.createDocument("", "", null);
		xmlDoc.load(fileName);
		xmlDoc.onload = InitSchedules;
	  }
	}
	
	var wkDays = new Array();
	
	function InitSchedules()
	{
	  if (xmlDoc == null)
	  {
		return;
	  }

	  var wkday = xmlDoc.getElementsByTagName("WeekDay");
	  
	  for (var i = 0; i < wkday.length; i++)
	  {
		wkDays[i] = CreateWeekDay(i);
		var m_wkDay = wkday[i];

		for (var j = 0; j < m_wkDay.childNodes.length; j++)
		{
		  if (m_wkDay.childNodes[j].nodeType == 1 && m_wkDay.childNodes[j].hasChildNodes())
		  {
			var name = m_wkDay.childNodes[j].nodeName;
			var value = m_wkDay.childNodes[j].firstChild.nodeValue;
			switch (name.toLowerCase())
			{
				case "schedule":
					wkDays[i].sch = value;
					break;
				case "day":
					wkDays[i].day = value;
					break;
				case "slots":
				{
					//departments[i].phones = new Array();
					var slots = m_wkDay.childNodes[j];
					
					for (var k = 0; k < slots.childNodes.length; k++)
					{
						if (slots.childNodes[k].nodeType == 1 && slots.childNodes[k].hasChildNodes())
						{
							var timename = slots.childNodes[k].nodeName;
							var timevalue = slots.childNodes[k].firstChild.nodeValue;

							switch (timename.toLowerCase())
							{
								case "time":
									var ts = CreateTimeSlot(timevalue);
									break;
								case "programs":
								{
									var programs = slots.childNodes[k];
									var title,desc;
									for(var l = 0; l < programs.childNodes.length; l++)
									{
										if (programs.childNodes[l].nodeType == 1 && programs.childNodes[l].hasChildNodes())
										{
											var prog = programs.childNodes[l];
											
											for(m = 0; m < prog.childNodes.length; m++)
											{
												if (prog.childNodes[m].nodeType == 1 && prog.childNodes[m].hasChildNodes())
												{
													var _name = prog.childNodes[m].nodeName;
													var _value = prog.childNodes[m].firstChild.nodeValue;
													switch (_name.toLowerCase())
													{
														case "title":
														   title = _value;
														   break;
														case "description":
															desc = _value;
															break;
													}
												
												}
											}
											var newProg = new Program(title, desc);
											ts.addProg(newProg);
										}
									}
								 }
								 break;
							 }
						  }
					}
					wkDays[i].addTimeSlot(ts);
				}
				break;
			}
		  }
		}
	}
	var _now = new Date();
	var _day = _now.getDay();
	if (_day == 0 || _day == 6) 
		_day = 5
	else
		_day = _day - 1
	var _hour = _now.getHours();
	if (_hour < 12) _hour = 0;
	if (_hour >= 12 && _hour < 15) _hour = 1;
	if (_hour >= 15 && _hour < 18) _hour = 2;
	if (_hour >= 18) _hour = 3;
	ShowData(_day,_hour);
}
	
function ShowData(_day,_hour)
{
  var html = ' ';

  for (var i = 0; i < wkDays.length; i++)
  {
	   if (i  < wkDays.length && i == _day) {

			html += '<strong>' + wkDays[i].sch + '</strong>'
			html += '<hr>';
   			html += '<strong><i>' + wkDays[i].day + '</i></strong>'
			for (var l = 0;l < wkDays[i].timeslots.length; l++)
			{
				if (l < wkDays[i].timeslots.length && l == _hour)
				{
				
					html += ' - ' + wkDays[i].timeslots[l].time + '<br>';
					
					for(var k = 0; k < wkDays[i].timeslots[l].progs.length; k++)
					{
						html += '<dl>';
						html += '<dt><strong>' + wkDays[i].timeslots[l].progs[k].title + '</strong></dt>';
						html += '<dd>' + wkDays[i].timeslots[l].progs[k].desc + '</dd>';
						html += '</dl>';
					}
				}
			}
		}
  }
  document.getElementById("ListSchedule").innerHTML = html;
} 