function validate_chkb_jour_dispo(form_name){
	var test = 0;
							
	if(	$(form_name+'_lundi').checked			== true) test=1;
	if(	$(form_name+'_mardi').checked			== true) test=1;
	if(	$(form_name+'_mercredi').checked		== true) test=1;
	if(	$(form_name+'_jeudi').checked			== true) test=1;
	if(	$(form_name+'_vendredi').checked		== true) test=1;
	if(	$(form_name+'_samedi').checked			== true) test=1;
	if(	$(form_name+'_dimanche').checked		== true) test=1;
	if(	$(form_name+'_tous_les_jours').checked 	== true) test=1;
	
	return test;
}
var DayCalendarHandler = Class.create();

DayCalendarHandler.prototype = {
	current_page : 0,
	selected_date : '',
	selected_cell : '',
	cldr_name : '',	
	
	initialize : function(name){
		this.cldr_name = name;
	},

	set_date : function(cell_id, date){
		var input_name = this.cldr_name.substr( 0, this.cldr_name.length-3); 
		var error = 0;		
		if( this.selected_cell == ''){
			$(cell_id).removeClassName('calendar_btn_cases');
			$(cell_id).addClassName('calendar_btn_cases_selected');
			this.selected_cell = cell_id;
			this.selected_date = date;
		}else{
			$(this.selected_cell).removeClassName('calendar_btn_cases_selected');
			$(this.selected_cell).addClassName('calendar_btn_cases');
			this.selected_cell = cell_id;
			this.selected_date = date;
			$(cell_id).removeClassName('calendar_btn_cases');
			$(cell_id).addClassName('calendar_btn_cases_selected');
		}
		$(this.cldr_name+'_bidon').value = this.selected_date.substr(6,2)+'/'+this.selected_date.substr(4,2)+'/'+this.selected_date.substr(0,4);
		$('form_date').value = this.selected_date;
		$(this.cldr_name+'_div_cal').hide();
		$(this.cldr_name+'_combo_h_deb').focus();
		return false;
	},
	
	show_page : function(page){
		switch(page){
			case 'next':
				$(this.cldr_name+'_page_'+this.current_page).hide();
				this.current_page++;
				$(this.cldr_name+'_page_'+this.current_page).show();
			break;
			case 'prev':
				$(this.cldr_name+'_page_'+this.current_page).hide();
				this.current_page--;
				$(this.cldr_name+'_page_'+this.current_page).show();
			break;
		}
		return false;
	}
}

var PeriodCalendarHandler = Class.create();

PeriodCalendarHandler.prototype = {
	current_page : 0,
	selected_date : '',
	selected_cell : '',
	cldr_name : '',	
	
	initialize : function(name){
		this.cldr_name = name;
	},

	set_date : function(cell_id, date){
		var error = 0;
		var src = this.cldr_name;
		src = src.substr(src.length-3,3);
		
		var form_name = this.cldr_name;
		form_name = form_name.substr(0,form_name.length-4);		
		//alert(form_name);
		if(src == 'deb'){
			if(	$(form_name+'_fin_bidon').value != 'JJ/MM/AAAA'){
				var date_fin = $(form_name+'_fin_bidon').value;
				date_fin = date_fin.substr(6,4)+date_fin.substr(3,2)+date_fin.substr(0,2);
				var date_deb = date;
				if(date_deb >= date_fin){
					error = 1;
					dsp_popin('msg_erreur','date_deb_ant_fin');
				}
			}
		}else{
			if(	$(form_name+'_deb_bidon').value != 'JJ/MM/AAAA'){
				var date_deb = $(form_name+'_deb_bidon').value;
				date_deb = date_deb.substr(6,4)+date_deb.substr(3,2)+date_deb.substr(0,2);
				var date_fin = date;
				if(date_fin <= date_deb){
					error = 1;
					dsp_popin('msg_erreur','date_deb_post_fin');
				}
			}
		}		
		if(error == 0){
			if( this.selected_cell == ''){
				$(cell_id).removeClassName('calendar_btn_cases');
				$(cell_id).addClassName('calendar_btn_cases_selected');
				this.selected_cell = cell_id;
				this.selected_date = date;
			}else{
				$(this.selected_cell).removeClassName('calendar_btn_cases_selected');
				$(this.selected_cell).addClassName('calendar_btn_cases');
				this.selected_cell = cell_id;
				this.selected_date = date;
				$(cell_id).removeClassName('calendar_btn_cases');
				$(cell_id).addClassName('calendar_btn_cases_selected');
			}
			$(this.cldr_name+'_bidon').value = this.selected_date.substr(6,2)+'/'+this.selected_date.substr(4,2)+'/'+this.selected_date.substr(0,4);
			$(this.cldr_name+'_dondon').value = this.selected_date;
			$(this.cldr_name+'_div_cal').hide();
		}
		return false;
	},
	
	show_page : function(page){
		switch(page){
			case 'next':
				$(this.cldr_name+'_page_'+this.current_page).hide();
				this.current_page++;
				$(this.cldr_name+'_page_'+this.current_page).show();
			break;
			case 'prev':
				$(this.cldr_name+'_page_'+this.current_page).hide();
				this.current_page--;
				$(this.cldr_name+'_page_'+this.current_page).show();
			break;
		}
		return false;
	}
}

var genericFormHandler = Class.create();

genericFormHandler.prototype = {
	cldr_handler : [], 
		
	initialize : function(tpl_name){
		switch(tpl_name){
			case 'ass_mat':
				this.cldr_handler['ass_mat_date_deb'] = new PeriodCalendarHandler('ass_mat_date_deb');
				this.cldr_handler['ass_mat_date_fin'] = new PeriodCalendarHandler('ass_mat_date_fin');
			break;
			case 'vac_sco':
	
			break;
			case 'cou_par':
				this.cldr_handler['cou_par_date_deb'] = new PeriodCalendarHandler('cou_par_date_deb');
				this.cldr_handler['cou_par_date_fin'] = new PeriodCalendarHandler('cou_par_date_fin');
			break;
			case 'acc_eco':
				this.cldr_handler['acc_eco_matin_date_deb'] = new PeriodCalendarHandler('acc_eco_matin_date_deb');
				this.cldr_handler['acc_eco_matin_date_fin'] = new PeriodCalendarHandler('acc_eco_matin_date_fin');
				this.cldr_handler['acc_eco_sortie_date_deb'] = new PeriodCalendarHandler('acc_eco_sortie_date_deb');
				this.cldr_handler['acc_eco_sortie_date_fin'] = new PeriodCalendarHandler('acc_eco_sortie_date_fin');
			break;
			case 'bab_occ':
				this.cldr_handler['bab_occ_date'] = new DayCalendarHandler('bab_occ_date');
			break;		
		}
	},	

	delete_bab_occ_date : function(id){
		//	APPEL AJAX
		var ajax_param = 'action=del_dispo_occ&dispo_id='+id;
		new Ajax.Request('./_ajax/babysitter.php', {
			method: 'post',
			parameters: ajax_param,
			evalJS : true,
			asynchronous : false,
			onComplete: function(transport){
				var reponse = transport.responseText;
	/*			if(reponse == 'Aucun enregistrement.'){
					$('dates_bab_occ').value = 0;
				}else{
					$('dates_bab_occ').value = 1;
				}*/
				$('dispo_loop').update(transport.responseText);
			}
		});
	}	
}

function dsp_popin(action,argument){
	$('popin_loader').show();
	var ajax_param = '';
	switch(action){
		case 'msg_erreur':
			ajax_param = 'action=dsp_err_msg&msg='+argument;
		break;
	}
	new Ajax.Request('./_ajax/babysitter.php', {
		method: 'post',
		parameters: ajax_param,
		asynchronous : false,
		onComplete: function(transport){
			$('popin_content').update(transport.responseText);
			$('popin_loader').hide();
			$('popin').show();
		}
	});
	return false;
}
