var target_sizes = new Array();
var min_sizes = new Array();
var max_sizes = new Array();
var step_size = 50;

//set les tailles mini pour les éléments à replier et la taille maxi pour l'element à déplier fourni en argument 
function deplier_replier(element_id, min_size, max_size)
{
	min_sizes[element_id] = min_size;
	max_sizes[element_id] = max_size;
		
	if (target_sizes[element_id] == max_size)
	{
		target_sizes[element_id] = min_sizes[element_id];
	}
	else
	{
		for (var elem in  target_sizes)
		{
			target_sizes[elem] = min_sizes[elem];
		}
		target_sizes[element_id] = max_sizes[element_id];
	}
}

//fonction executee par le timer qui change la taille des éléemnts vers leurs tailles demandés en pas de step_size pixels
function deplier_replier_timer()
{
	for (var elem in target_sizes)
	{
		if (elem.substring(0,8) == 'content_')
		{
			el = document.getElementById(elem);
			el_size  = parseInt(el.style.height);
			tg_size = target_sizes[elem];
			
			if (el_size != tg_size)
			{
				//On deplie
				if (el_size < tg_size)
				{
					if ((el_size + step_size) < tg_size)
					{
						 el.style.height = (el_size + step_size) + 'px';
					}
					else
					{
						el.style.height = tg_size + 'px';
					}
				}
				//On replie
				else 
				{
					if ((el_size - step_size) > tg_size)
					{
						el.style.height = (el_size - step_size) + 'px';
					}
					else
					{
						el.style.height = tg_size + 'px';
					}
				}
			}
		}
	}
}

window.setInterval("deplier_replier_timer()", 50);