function displaySelect()
{
	if((arguments.length == 1) && testTypeOfObject(arguments[0],NamedList))
	{
		var dataL = arguments[0].getObject('return-data');
		var objL = arguments[0].getObject('select-object');

		if(isInitialized(dataL) && isInitialized(objL))
		{
			var lCol = dataL.getElementsByTagName('list-entry');

			var srcId = objL.id;

			if(isInitialized(srcId))
			{
				var targetId = null;

				switch(srcId)
				{
					case 'selection-periode' :
						targetId = 'selection-theme';
						break;
					case 'selection-theme' :
						targetId = 'selection-support';
						break;
				}

				if(isInitialized(targetId))
				{
					var targetObj = document.getElementById(targetId);

					if(isInitialized(targetObj))
					{
						removeNodes(targetObj,1);

						var listCount = lCol.length;
						for(var i=0; i<listCount; i++)
						{
							var opt = document.createElement('option');
							opt.setAttribute('value',lCol[i].getAttribute('value'));
							opt.appendChild(document.createTextNode(lCol[i].firstChild.nodeValue));

							targetObj.appendChild(opt);
						}
					}
				}
			}
		}
	}
}

function updateSelect()
{
	var currentElem = getObjectFromEvent(arguments[0]);

	if(isInitialized(currentElem))
	{
		var xhrParam = new NamedList();
		var canExecute = false;

		switch(currentElem.id)
		{
			case 'selection-periode' :
				xhrParam.addObject('action','theme');
				canExecute = true;
				break;
			case 'selection-theme' :
				xhrParam.addObject('action','support');
				xhrParam.addObject('idSemestre',document.getElementById('selection-periode').options[document.getElementById('selection-periode').selectedIndex].value);
				canExecute = true;
				break;
		}

		xhrParam.addObject('data-id',currentElem.options[currentElem.selectedIndex].value);

		if(canExecute && xhrParam.hasEntries())
		{
			xhr = new AjaxComponent('xml.calendrier.php');
			xhr.setDataHandler(displaySelect);

			xhr.addHandlerParam('select-object',currentElem);

			var xC = xhrParam.getCollection();
			for(var i=0; i<xC.length; i++)
			{
				xhr.addRequestParam(xC[i].getKey(),xC[i].getStoredObject());
			}

			xhr.getAjaxContent();
		}
	}
}

function initSelect()
{
	if(dhtmlLoad && document.getElementById)
	{
		var fObj = document.getElementById('selection-calendrier');

		if(isInitialized(fObj))
		{
			var sel = fObj.getElementsByTagName('select');
			var selCount = sel.length;

			for(var i=0; i<selCount; i++)
			{
				addEvent(sel[i],'change',updateSelect);
			}
		}
	}
}

if(window.addOnloadFunction)
{
	addOnloadFunction(initSelect);
}
/*
if(window.Prototype)
{
	Element.observe(document,'dom:loaded',initSelect);
}
*/