function fix_eolas()
{
	var objects = document.getElementsByTagName("object");

	for (var i=0; i<objects.length; i++)
			objects[i].outerHTML = objects[i].outerHTML;
}

/** fix number of days according to given month and year
*
* @param	string type type of date (from|to)
*/
function fix_days(type)
{
	if(type == 'from' || type == 'to')
	{
		var date = new Date();
		var day = 32;
		var month = Number(document.getElementById('month'+type).value) - 1;
		var year = document.getElementById('year'+type).value;
		var element = document.getElementById('day'+type);

		date.setFullYear(year, month, day);

		// find first correct day of the month
		do
		{
			day--;
			date.setFullYear(year, month, day);
		}
		while(date.getMonth() > month);

		// find selected day
		var selected = null;
		for(i = 0; i < element.length; i++)
			if(element.options[i].selected)
			{
				selected = element.value;
				break;
			}

		// rebuild option list of days
		for(i = element.length - 1; i >= 0; i--)
			element.remove(i);

		for(i = 0; i < day; i++)
		{
			var option = document.createElement('OPTION');
			option.text = i + 1;
			option.value = i + 1;
			element.options.add(option);
		}

		// correct selected day
		if(selected != null && day < selected)
			selected = day;

		if(selected != null)
			element.options[selected - 1].selected = true;
	}
}

