DatepickerConfig.js 3.45 KB
// https://api.jqueryui.com/datepicker/

//jQuery(document).ready(function($){
$(document).ready(function(){
	//$( "#datepicker" ).datepicker({
	$(".datepicker").datepicker({

		// on doit pouvoir changer le mois
    	changeMonth: true,
        
		// on doit pouvoir changer aussi l'année
    	changeYear: true,
    	
    	// afficher le numéro de semaine
        showWeek: true,
    });
	

	/* Moved to script.js
	// (EP 20200416) check de la saisie manuelle de TOUS les champs date type datepicker (class)
	// Dès la perte du focus
	//$("#datepicker").bind("change", function (event) 	{ check_date_deb_inf_date_fin(); } ); 
	//$("#datepicker").bind("change", function (event) 	{
	//$(".datepicker").bind("change", function (event) 	{
	//$(".datepicker").blur(function(){
	$(".datepicker").on("change", function(event) {
		// (EP) check format [J]J/[M]M/AAAA
		//console.log("coucou");
		// format général
	    //if(this.value.match(/\d{1,2}[^\d]\d{1,2}[^\d]\d{4,4}/gi) == null) {
		// (EP) check format [J]J/[M]M/[AA]AA
	    //if ( this.value.match(/^(\d{1,2})\/(\d{1,2})\/(\d{2}|\d{4})$/) == null ) {
		if (this.value == '') return true;
		$error_msg = '';
	    if ( this.value.match(/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/) == null )
	    	$error_msg = "Format de date invalide (doit être JJ/MM/AAAA)";
	    // Check value : doit être une date valide
	    else {
	        //var t = this.value.split(/[^\d]/);
	        var t = this.value.split(/\//);
	        var dd = parseInt(t[0], 10);
	        var m0 = parseInt(t[1], 10) - 1; // Month in JavaScript Date object is 0-based
	        var yyyy = parseInt(t[2], 10);
	        // Si year sur 2 chiffres (AA), on passe à 4 (AAAA)
	        //if (yyyy < 100) yyyy = 2000 + yyyy
	        var d = new Date(yyyy, m0, dd); // new Date(2017, 13, 32) is still valid
	        //console.log(d.getFullYear());
	        if(d.getDate() != dd || d.getMonth() != m0 || d.getFullYear() != yyyy)
				$error_msg = "Date invalide";
	    }
	    // Si erreur
	    if ($error_msg != '') {
	    	this.value = "";
		    alert($error_msg);
		    // On supprime la saisie invalide pour éviter qu'elle puisse être soumise (submit) 
	        this.classList.add('error');
	        // stopper un "submit" éventuel
	        //event.preventDefault();
	        this.focus();
	    }
	    else if (this.classList.contains('error')) this.classList.remove('error');
	});
	*/

	
}); // $(document).ready



//$(".datepicker").regional['fr'] = {
$.datepicker.regional['fr'] = {
	closeText: 'Fermer',
	prevText: 'Précédent',
	nextText: 'Suivant',
	currentText: 'Aujourd\'hui',
	monthNames: ['Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre'],
	monthNamesShort: ['Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre'],
	dayNames: ['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi'],
	dayNamesShort: ['Dim.','Lun.','Mar.','Mer.','Jeu.','Ven.','Sam.'],
	dayNamesMin: ['D','L','M','M','J','V','S'],
	weekHeader: 'Sem.',
	// (20200410 EP change)
	//dateFormat: 'dd-mm-yy',
	dateFormat: 'dd/mm/yy',
	// INVALIDE :
	//dateFormat: 'dd/mm/yyyy',
	firstDay: 1,
	isRTL: false,
	showMonthAfterYear: false,
	yearSuffix: ''
};

$.datepicker.setDefaults($.datepicker.regional['fr']);





/*
$("#datepicker").blur(function(){
    val = $(this).val();
    val1 = Date.parse(val);
    if (isNaN(val1)==true && val!==''){
        alert("error")
    }
    else{
        console.log(val1);
    }
});
*/