aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--public/js/calendar_admin.js17
-rw-r--r--public/js/main.js16
2 files changed, 21 insertions, 12 deletions
diff --git a/public/js/calendar_admin.js b/public/js/calendar_admin.js
index 0600954..7f14d76 100644
--- a/public/js/calendar_admin.js
+++ b/public/js/calendar_admin.js
@@ -152,6 +152,9 @@ document.addEventListener('DOMContentLoaded', function(){
152 return date; 152 return date;
153 } 153 }
154 154
155 if(!info.event.start || !info.event.end){
156 throw new Error("info.event.start ou info.event.end est null");
157 }
155 const formated_start = formatDate(info.event.start); 158 const formated_start = formatDate(info.event.start);
156 const formated_end = formatDate(info.event.allDay ? minusOneDay(info.event.end) : info.event.end); 159 const formated_end = formatDate(info.event.allDay ? minusOneDay(info.event.end) : info.event.end);
157 160
@@ -223,8 +226,8 @@ document.addEventListener('DOMContentLoaded', function(){
223 const event_title = event_title_input.value; 226 const event_title = event_title_input.value;
224 const event_description = event_description_input.value; 227 const event_description = event_description_input.value;
225 const event_all_day = event_all_day_input.checked; 228 const event_all_day = event_all_day_input.checked;
226 let event_start = event_start_input.value; 229 let event_start = new Date(event_start_input.value);
227 let event_end = event_end_input.value; 230 let event_end = new Date(event_end_input.value);
228 const event_color = event_color_input.value; // #3788d8 par défaut 231 const event_color = event_color_input.value; // #3788d8 par défaut
229 232
230 let event_id = ''; 233 let event_id = '';
@@ -235,18 +238,16 @@ document.addEventListener('DOMContentLoaded', function(){
235 } 238 }
236 239
237 // contrôle de saisie 240 // contrôle de saisie
238 if(event_title.length !== 0 && event_start.length !== 0 && event_end.length !== 0 && event_color.length !== 0 241 if(event_title.length !== 0 && event_start_input.value.length !== 0 && event_end_input.value.length !== 0 && event_color.length !== 0
239 && (new_event || event_id.length !== 0)) 242 && (new_event || event_id.length !== 0))
240 { 243 {
241 if(event_all_day){ 244 if(event_all_day){
242 // on remet le jour de fin exclu 245 // on remet le jour de fin exclu
243 const tmp_object = new Date(event_end); 246 event_end.setDate(event_end.getDate() + 1);
244 tmp_object.setDate(tmp_object.getDate() + 1);
245 event_end = tmp_object.toISOString().split('T')[0];
246 } 247 }
247 else{ 248 else{
248 event_start = new Date(event_start).toISOString(); 249 event_start = new Date(event_start);
249 event_end = new Date(event_end).toISOString(); 250 event_end = new Date(event_end);
250 } 251 }
251 252
252 // contrôle date/heure de fin après le début 253 // contrôle date/heure de fin après le début
diff --git a/public/js/main.js b/public/js/main.js
index 1666b5c..6daf0be 100644
--- a/public/js/main.js
+++ b/public/js/main.js
@@ -78,7 +78,11 @@ function toggleTouchMenu(){
78 78
79function makeDropLeftMenuEntries(){ 79function makeDropLeftMenuEntries(){
80 // détection d'éléments de 1er niveau possédant un menu déroulant possédant un menu déroulant 80 // détection d'éléments de 1er niveau possédant un menu déroulant possédant un menu déroulant
81 document.getElementById('nav_zone').querySelector('.nav_main').querySelectorAll('.drop-down:has(.drop-right)').forEach(drop_down => { 81 const nav_zone = document.getElementById('nav_zone');
82 if(!nav_zone){
83 return;
84 }
85 nav_zone.querySelector('.nav_main').querySelectorAll('.drop-down:has(.drop-right)').forEach(drop_down => {
82 const rect = drop_down.getBoundingClientRect(); // coordonnées spatiales 86 const rect = drop_down.getBoundingClientRect(); // coordonnées spatiales
83 87
84 // il se situe dans la moitié droite 88 // il se situe dans la moitié droite
@@ -124,13 +128,19 @@ document.addEventListener('DOMContentLoaded', () => {
124 }); 128 });
125 }); 129 });
126 130
131 // menu principal
127 navHeight(); // hauteur de <nav> en fonction de celle du menu en position fixe 132 navHeight(); // hauteur de <nav> en fonction de celle du menu en position fixe
128 makeDropLeftMenuEntries(); // changer en drop-left les drop-right des éléments du menu dans la moitié droite de la fenêtre 133 makeDropLeftMenuEntries(); // changer en drop-left les drop-right des éléments du menu dans la moitié droite de la fenêtre
134
135 // dates des articles "news"
129 insertLocalDates(); 136 insertLocalDates();
130}); 137});
131 138
132function navHeight(){ 139function navHeight(){
133 const nav = document.querySelector('nav'); // détection 140 const nav = document.querySelector('nav'); // détection
141 if(!nav){
142 return;
143 }
134 const nav_zone = document.getElementById('nav_zone'); 144 const nav_zone = document.getElementById('nav_zone');
135 const resize_observer = new ResizeObserver(entries => { // param de type tableau 145 const resize_observer = new ResizeObserver(entries => { // param de type tableau
136 let nav_button_height = window.innerWidth <= 768 ? 26 : 0; // 26 = taille du bouton 146 let nav_button_height = window.innerWidth <= 768 ? 26 : 0; // 26 = taille du bouton
@@ -139,9 +149,7 @@ function navHeight(){
139 nav_zone.style.height = (entry.contentRect.height + nav_button_height) + 'px'; 149 nav_zone.style.height = (entry.contentRect.height + nav_button_height) + 'px';
140 } 150 }
141 }); 151 });
142 if(nav){ 152 resize_observer.observe(nav);
143 resize_observer.observe(nav);
144 }
145} 153}
146 154
147function fetchArticles(bloc_id){ 155function fetchArticles(bloc_id){