summaryrefslogtreecommitdiff
path: root/public/js/calendar.js
diff options
context:
space:
mode:
authorpolo <ordipolo@gmx.fr>2025-07-20 16:38:52 +0200
committerpolo <ordipolo@gmx.fr>2025-07-20 16:38:52 +0200
commit245f1c1f4f60f6841b557312ff49b2ee6bac9bf3 (patch)
treef7103b73670fcf7019ccc1a9e18b7f5e55cad039 /public/js/calendar.js
parent976eaa544322be18c9feb1a165b9645533af4538 (diff)
downloadcms-245f1c1f4f60f6841b557312ff49b2ee6bac9bf3.zip
sélections correctes calendrier écran tactile
Diffstat (limited to 'public/js/calendar.js')
-rw-r--r--public/js/calendar.js22
1 files changed, 12 insertions, 10 deletions
diff --git a/public/js/calendar.js b/public/js/calendar.js
index 2275c10..844d411 100644
--- a/public/js/calendar.js
+++ b/public/js/calendar.js
@@ -28,9 +28,8 @@ document.addEventListener('DOMContentLoaded', function(){
28 // pour recalculer la taille au redimensionnement du parent, exécuter: calendar.updateSize() 28 // pour recalculer la taille au redimensionnement du parent, exécuter: calendar.updateSize()
29 stickyHeaderDates: true, // garder les en-tête de colonnes lors du scroll 29 stickyHeaderDates: true, // garder les en-tête de colonnes lors du scroll
30 fixedWeekCount: false, // avec false, affiche 4, 5 ou 6 semaines selon le mois 30 fixedWeekCount: false, // avec false, affiche 4, 5 ou 6 semaines selon le mois
31 selectable: true, // sélection de jours multiples 31 selectable: true, // sélection de jours en cliquant dessus
32 longPressDelay: 0, /* par défaut sur mobile, select est déclenché avec un appui d'une seconde, 32 longPressDelay: 300, // 1000ms par défaut
33 chatgpt déconseille 0 par risque de conflit entre selection et scrolling, mettre plutôt 200 ou 300ms */
34 navLinks: true, // numéros de jour et de semaines clicables 33 navLinks: true, // numéros de jour et de semaines clicables
35 34
36 // vue semaine 35 // vue semaine
@@ -45,14 +44,17 @@ document.addEventListener('DOMContentLoaded', function(){
45 selected_start_string = info.startStr; // variable "globale" 44 selected_start_string = info.startStr; // variable "globale"
46 hideModal(); 45 hideModal();
47 }, 46 },
48 // méthode alternative à longPressDelay: 0 pour obtenir une sélection d'un simple "tap" sur écran tactile (mettre le if inverse dans select) 47 // sélection d'une date simple sur mobile, évite des problèmes de conflit avec eventClick
49 /*dateClick: function(info) { 48 dateClick: function(info){
50 if (window.matchMedia('(pointer: coarse)').matches) { 49 if(window.matchMedia('(pointer: coarse)').matches){
51 // utile sur mobile/tablette : déclenche sur un tap 50 const end = new Date(info.date.getTime());
52 console.log('dateClick', info.dateStr); 51 calendar.view.type == 'dayGridMonth' ? end.setDate(end.getDate() + 1) : end.setMinutes(end.getMinutes() + 30);
53 calendar.select(info.date, info.date); // hack permettant de sélectionner une journée seule uniquement 52 // vue date: la fin est une date exclue
53 // vue semaine: durée de 30min par défaut
54
55 calendar.select(info.date, end); // appeler select() avec un seul paramètre ne marche pas avec la vue "mois"
54 } 56 }
55 },*/ 57 },
56 //unselect: function(event, view){}, 58 //unselect: function(event, view){},
57 59
58 eventClick: function(info){ 60 eventClick: function(info){