// JavaScript Document
// This javascript agenda module should NOT be confused with the PHP agenda module.
// This piece of javascript simply displays an agenda and allows you to select a valid date from it.
// The PHP agenda module is much more detailed and allows for more options, but isn't interactive on the 'client-side-only'

var BG_Green		= '66BB33';
var BG_Yellow		= 'FFCC00';
var BG_Red		= 'CC4400';
var BG_Blue		= '2086ce';
var BG_Base		= 'FFFFFF';
var Periods		= new Array();
var PreColors		= new Array();
var AgendaFront		= '0';

function SwitchPeriod(Period_ID)
	{
	for(p=0; p < Periods.length;p++) 
		{
		var objPeriodHide 			= document.getElementById('Agenda-' + Periods[p]);
		objPeriodHide.style.display = 'none';
		}
	
	var objPeriod		= document.getElementById('Agenda-' + Period_ID);
	objPeriod.style.display = 'block';
	}

function SelectDate(Period_ID,Date_ID,Date_NL)
	{
	var objDateCurrent 				= document.getElementById('DateCurrent');
	var objDate_ID_New 				= document.getElementById('date_id_new');
	var Date_ID_Old					= objDate_ID_New.value;
	
	if (Date_ID_Old)
		{
		var objDateOld					= document.getElementById('Date-' + Date_ID_Old);
		if (!PreColors['Date-' + Date_ID_Old])
			{ objDateOld.style.background 	= '#' + BG_Green; }
		else
			{ objDateOld.style.background 	= PreColors['Date-' + Date_ID_Old]; }
		}
	
	var objDateNew	 				= document.getElementById('Date-' + Date_ID);
	PreColors['Date-' + Date_ID]	= objDateNew.style.background;	
	objDateNew.style.background 	= '#' + BG_Yellow;

	objDate_ID_New.value			= Date_ID;
	objDateCurrent.innerHTML		= Date_NL;
	}

function DateDeselect(Element_ID)
	{
	// The Element_ID is automatically also the date
	var objDateClick 				= document.getElementById('Date-' + Element_ID);
	var objCellClick 				= document.getElementById('TD-' + Element_ID);
	objDateClick.value				= 0;
	objCellClick.style.background	= '#' + BG_Base;	
	}

function FetchTimeEnd(ElementHour_ID,ElementMin_ID,ElementReturn_ID,LessonLength)
	{
	var objHour 	= document.getElementById(ElementHour_ID);
	var objMin 		= document.getElementById(ElementMin_ID);
	var objReturn	= document.getElementById(ElementReturn_ID);
	
	if (LessonLength < 1) LessonLength = 100;
	
	var TimestampStart 	= objHour.value * 3600 + objMin.value * 60;
	var TimestampEnd 	= TimestampStart + (LessonLength * 60);
	
	var Hour	= Math.floor(TimestampEnd / 3600);
	var Minute	= Math.floor((TimestampEnd - (Hour * 3600)) / 60);
	
	if (Hour < 10) 		Hour 	= '0' + Hour;
	if (Minute < 10) 	Minute 	= '0' + Minute;
	
	objReturn.innerHTML = Hour + ':' + Minute;
	}

function FetchFileAsTxt(RelativePath)
	{ 
	var oxmlhttp = null;
	try
		{ 
		oxmlhttp = new XMLHttpRequest();
		oxmlhttp.overrideMimeType("text/xml");
		}
	catch(e)
		{ 
		try
			{ 
			oxmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
			}
		catch(e)
			{ 
			return null;
			}
		}
		
	if(!oxmlhttp) return null;
	try
		{ 
		oxmlhttp.open("GET",RelativePath,false);
		oxmlhttp.send(null);
		}
	catch(e)
		{ 
		return null;
		}
	
	return oxmlhttp.responseText;
	}

function BuildSchoolList()
	{
	var objSchoolCity 			= document.getElementById('school_city');
	var objSchoolSelect			= document.getElementById('SchoolSelect');
	var objSchoolInfo			= document.getElementById('SchoolInfo');
	var objSchoolNew			= document.getElementById('SchoolNew');
	
	if (AgendaFront == 1)
		{
		var objSchoolSelectDiv		= document.getElementById('DivSchoolSelect');
		var objSchoolInfoDiv		= document.getElementById('DivSchoolInfo');
		}
	
	if (objSchoolCity.value == '99999')
		{
		if (AgendaFront == 1)
			{
			objSchoolSelectDiv.style.display	= 'none';
			}
		
		objSchoolNew.style.display			= 'block';
		objSchoolInfo.style.display			= 'none';
		}
	else
		{
		if (AgendaFront == 1)
			{
			objSchoolSelectDiv.style.display	= 'block';
			}
		
		objSchoolSelect.innerHTML			= FetchFileAsTxt('/includes/jsSchoolSource.php?city=' + objSchoolCity.value + '&AddStart=1');
		objSchoolInfo.innerHTML				= '-';
		objSchoolNew.style.display			= 'none';
		objSchoolInfo.style.display			= 'block';
		}
	}

function BuildSchoolDetail()
	{
	var objSchoolID				= document.getElementById('school_id');
	var objSchoolInfo			= document.getElementById('SchoolInfo');
	var objSchoolNew			= document.getElementById('SchoolNew');
	
	if (AgendaFront == 1)
		{
		var objSchoolInfoDiv		= document.getElementById('DivSchoolInfo');
		}
	
	if (objSchoolID.value == '99999')
		{
		if (AgendaFront == 1)
			{
			objSchoolInfoDiv.style.display	= 'none';
			}
		
		objSchoolNew.style.display		= 'block';
		objSchoolInfo.style.display		= 'none';
		}
	else if (objSchoolID.value >= '1')
		{
		if (AgendaFront == 1)
			{
			objSchoolInfoDiv.style.display	= 'block';
			}
		
		objSchoolNew.style.display		= 'none';
		objSchoolInfo.style.display		= 'block';
		objSchoolInfo.innerHTML			= FetchFileAsTxt('/includes/jsSchoolSource.php?school_id=' + objSchoolID.value);
		}
	else
		{
		if (AgendaFront == 1)
			{
			objSchoolInfoDiv.style.display	= 'none';
			}
		
		objSchoolNew.style.display		= 'none';
		objSchoolInfo.style.display		= 'block';
		objSchoolInfo.innerHTML 		= '-';
		}
	}

function HideElement(Element_ID)
	{
	var objElement			= document.getElementById(Element_ID);
	objElement.style.display	= 'none';
	}
	
function DisplayElement(Element_ID)
	{
	var objElement			= document.getElementById(Element_ID);
	objElement.style.display	= 'block';
	}

