function	sendDataToCal(data, cbfunc)
{
	var	http	=	getXHR();	
	function	handleIt()
	{
		if (http.readyState != 4)
			return ;
		if (/^noop$/.test(http.responseText))
			return ;
		cbfunc(http.responseText);
	}
	http.open('POST', 'apps/cal_resa/cal_engine.php', true);
	http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	http.onreadystatechange = handleIt;
	http.send(data);
}

function	showCal(rid, lang)
{
	var data	=	'rid='+encodeURI(rid)+'&lang='+encodeURI(lang)+'&show=1';
	var cbfunc	=	function (resp)
	{
		document.getElementById('cal_resa').style.visibility	=	'visible';
		document.getElementById('cal_resa').innerHTML = resp;
	}
	sendDataToCal(data, cbfunc);
}

function	changeMonth(nm, ny, rid, lang)
{
	var data	=	'rid='+encodeURI(rid)+'&lang='+encodeURI(lang)+'&nm='+encodeURI(nm)+'&ny='+encodeURI(ny)+'&change=1';
	var cbfunc	=	function (resp)
	{
		document.getElementById('cal_resa').innerHTML = resp;
	}
	sendDataToCal(data, cbfunc);
}

function	changeHourSelect(vals)
{
	var sel	=	document.getElementById('heure_resa');
	sel.options.length = 0;
	for (var i = 0; i < vals.length; i++)
		sel.options[i] = new Option(vals[i], vals[i]);
	sel.options.length = i;
}

function	changeResaFields(json)
{
	changeHourSelect(json.hresa);
	document.getElementById('date_div').innerHTML = json.dresa;
    document.getElementById('dresa').value = json.dresa;
	document.getElementById('date_resa').value = json.date_resa;
	document.getElementById('type_resa').value = json.type_resa;
}

function	choseDate(date, ms, h, lang)
{
	var data	=	'date='+encodeURI(date)+'&lang='+encodeURI(lang)+'&ms='+encodeURI(ms)+'&h='+encodeURI(h)+'&chose=1&rid=1';
	var cbfunc	=	function (resp)
	{
		document.getElementById('cal_resa').style.visibility	=	'hidden';
		if (!/^{"resa":{/.test(resp))
			return ;
		json = eval('(' + resp + ')');
		changeResaFields(json.resa);
	}
	sendDataToCal(data, cbfunc);
}