1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
|
// JavaScript Document
$(document).ready(function() {
currentTime = new Date();
currentHour = currentTime.getHours();
currentMin = currentTime.getMinutes();
currentDay = currentTime.getDate()
var defaultHour = 0;
var defaultMin = 0;
var minDate = 0;
if(currentHour == 23 && currentMin >= 21){minDate++}
$('#datepicker').datepicker({
inline: true, numberOfMonths: 2,minDate: minDate,
showOtherMonths: true, selectOtherMonths: true, altField: "#frm_date", altFormat: "DD, d MM yy",
firstDay: 1, showWeek: true,
monthNames: [ "Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre" ],
monthNamesShort: [ "Jan", "Fev", "Mar", "Avr", "Mai", "Jun", "Jul", "Aou", "Sep", "Oct", "Nov", "Déc" ],
dayNames:[ "Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi" ] ,
dayNamesMin:[ "Di", "Lu", "Ma", "Me", "Je", "Ve", "Sa" ],
dayNamesShort:[ "Dim", "Lun", "Mar", "Mer", "Jeu", "Ven", "Sam" ],
onSelect: function(){}/*<<<<------------------ je parviens pas à fair l'appel de OnHourShowCallback pour actualiser les heures du timepicker*/
});
defaultHour = currentHour;
if (currentMin >= 21){
defaultHour ++;
defaultMin = (currentMin + 30)-60;
defaultMin = 10*Math.floor(defaultMin/10);
} else {
defaultMin = 10*Math.floor(currentMin/10);
}
if(defaultHour == 24){defaultHour = 0}
$('#timepicker').timepicker({timeSeparator: ':', defaultTime: defaultHour+':'+defaultMin, altField: "#frm_hour", rows: 2, showPeriodLabels: true, minutes: {
starts: 0, // First displayed minute
ends: 50, // Last displayed minute
interval: 10 }, // Interval of displayed minutes
hourText: 'Heure', // Define the locale text for "Hours"
minuteText: 'Minute', // Define the locale text for "Minute"
amPmText: ['AM', 'PM'],
onHourShow: OnHourShowCallback,
onMinuteShow: OnMinuteShowCallback
});
$('#frm_hour').val($('#timepicker').timepicker('getTime'))
});
function OnHourShowCallback(hour) {
var selectedDay = $('#datepicker').datepicker('getDate').getDate();
if (currentDay < selectedDay){currentHour = -1;}
if (currentHour == 23 && currentMin >=21){currentHour = -1}
if (hour < currentHour) {
return false;
} else if((hour == currentHour) && (currentMin >= 21)){return false;}
return true;
}
function OnMinuteShowCallback(hour, minute) {
var excessMin;
if( (currentMin + 30) > 60){excessMin = (currentMin + 30)-60}else{excessMin = 0};
if ((hour == currentHour) && (minute < (currentMin + 30))) { return false; }
if ((hour == currentHour+1) && (minute < excessMin)){return false;} // not valid
return true; // valid
} |
Partager