From cc0a400e91a3014039cf6cb79088f915c87423ab Mon Sep 17 00:00:00 2001
From: Moritz Strohm <strohm@data-quest.de>
Date: Thu, 6 Jul 2023 16:54:01 +0200
Subject: [PATCH 1/3] set minimum date for datepicker and fullcalendar
 instances to 1970-01-01

---
 resources/assets/javascripts/bootstrap/resources.js | 6 ++++--
 resources/assets/javascripts/lib/fullcalendar.js    | 3 +++
 resources/assets/javascripts/mvv.js                 | 2 +-
 resources/assets/javascripts/studip-ui.js           | 8 ++++++--
 4 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/resources/assets/javascripts/bootstrap/resources.js b/resources/assets/javascripts/bootstrap/resources.js
index 1238cec7e0c..d1cbd369654 100644
--- a/resources/assets/javascripts/bootstrap/resources.js
+++ b/resources/assets/javascripts/bootstrap/resources.js
@@ -658,12 +658,14 @@ STUDIP.ready(function () {
     jQuery('#booking-plan-jmpdate').datepicker(
         {
             dateFormat: 'dd.mm.yy',
-            onClose: submitDatePicker
+            onClose: submitDatePicker,
+            minDate: new Date(1970, 0)
         }
     );
     jQuery('.resource-booking-time-fields input[type="date"]').datepicker(
         {
-            dateFormat: 'yy-mm-dd'
+            dateFormat: 'yy-mm-dd',
+            minDate: new Date(1970, 0)
         }
     );
 
diff --git a/resources/assets/javascripts/lib/fullcalendar.js b/resources/assets/javascripts/lib/fullcalendar.js
index b3eb9d1a7d7..aebcfaee4d2 100644
--- a/resources/assets/javascripts/lib/fullcalendar.js
+++ b/resources/assets/javascripts/lib/fullcalendar.js
@@ -355,6 +355,9 @@ class Fullcalendar
             },
             minTime: '08:00:00',
             maxTime: '20:00:00',
+            validRange: {
+                start: '1970-01-01'
+            },
             height: 'auto',
             contentHeight: 'auto',
             firstDay: 1,
diff --git a/resources/assets/javascripts/mvv.js b/resources/assets/javascripts/mvv.js
index 12d26532665..c62da1ac923 100644
--- a/resources/assets/javascripts/mvv.js
+++ b/resources/assets/javascripts/mvv.js
@@ -39,7 +39,7 @@ jQuery(function ($) {
         return false;
     });
 
-    $('.with-datepicker').datepicker();
+    $('.with-datepicker').datepicker({minDate: new Date(1970, 0)});
 
     $(document).on('change', '.mvv-inst-chooser select', function() {
         STUDIP.MVV.LanguageChooser.showButtons($(this));
diff --git a/resources/assets/javascripts/studip-ui.js b/resources/assets/javascripts/studip-ui.js
index 2ef3a6e21a8..f50739f84af 100644
--- a/resources/assets/javascripts/studip-ui.js
+++ b/resources/assets/javascripts/studip-ui.js
@@ -143,7 +143,9 @@ import eventBus from "./lib/event-bus.ts";
             }).each(function () {
                 const dataOptions = $(this).data().datePicker;
 
-                const options = {};
+                const options = {
+                    minDate: new Date(1970, 0)
+                };
                 if (dataOptions?.disable_holidays === true) {
                     options.beforeShowDay = disableHolidaysBeforeShow;
                 }
@@ -281,7 +283,9 @@ import eventBus from "./lib/event-bus.ts";
             }).each(function () {
                 const dataOptions = $(this).data().datePicker;
 
-                const options = {};
+                const options = {
+                    minDate: new Date(1970, 0)
+                };
                 if (dataOptions?.disable_holidays === true) {
                     options.beforeShowDay = disableHolidaysBeforeShow;
                 }
-- 
GitLab


From 5d8634c671aa94470c3e4b1a931191a54958f75f Mon Sep 17 00:00:00 2001
From: Moritz Strohm <strohm@data-quest.de>
Date: Fri, 7 Jul 2023 14:27:08 +0200
Subject: [PATCH 2/3] Revert "set minimum date for datepicker and fullcalendar
 instances to 1970-01-01"

This reverts commit a098c49df8f0277a966eb2439400f4d1100d655d.
---
 resources/assets/javascripts/bootstrap/resources.js | 6 ++----
 resources/assets/javascripts/lib/fullcalendar.js    | 3 ---
 resources/assets/javascripts/mvv.js                 | 2 +-
 resources/assets/javascripts/studip-ui.js           | 8 ++------
 4 files changed, 5 insertions(+), 14 deletions(-)

diff --git a/resources/assets/javascripts/bootstrap/resources.js b/resources/assets/javascripts/bootstrap/resources.js
index d1cbd369654..1238cec7e0c 100644
--- a/resources/assets/javascripts/bootstrap/resources.js
+++ b/resources/assets/javascripts/bootstrap/resources.js
@@ -658,14 +658,12 @@ STUDIP.ready(function () {
     jQuery('#booking-plan-jmpdate').datepicker(
         {
             dateFormat: 'dd.mm.yy',
-            onClose: submitDatePicker,
-            minDate: new Date(1970, 0)
+            onClose: submitDatePicker
         }
     );
     jQuery('.resource-booking-time-fields input[type="date"]').datepicker(
         {
-            dateFormat: 'yy-mm-dd',
-            minDate: new Date(1970, 0)
+            dateFormat: 'yy-mm-dd'
         }
     );
 
diff --git a/resources/assets/javascripts/lib/fullcalendar.js b/resources/assets/javascripts/lib/fullcalendar.js
index aebcfaee4d2..b3eb9d1a7d7 100644
--- a/resources/assets/javascripts/lib/fullcalendar.js
+++ b/resources/assets/javascripts/lib/fullcalendar.js
@@ -355,9 +355,6 @@ class Fullcalendar
             },
             minTime: '08:00:00',
             maxTime: '20:00:00',
-            validRange: {
-                start: '1970-01-01'
-            },
             height: 'auto',
             contentHeight: 'auto',
             firstDay: 1,
diff --git a/resources/assets/javascripts/mvv.js b/resources/assets/javascripts/mvv.js
index c62da1ac923..12d26532665 100644
--- a/resources/assets/javascripts/mvv.js
+++ b/resources/assets/javascripts/mvv.js
@@ -39,7 +39,7 @@ jQuery(function ($) {
         return false;
     });
 
-    $('.with-datepicker').datepicker({minDate: new Date(1970, 0)});
+    $('.with-datepicker').datepicker();
 
     $(document).on('change', '.mvv-inst-chooser select', function() {
         STUDIP.MVV.LanguageChooser.showButtons($(this));
diff --git a/resources/assets/javascripts/studip-ui.js b/resources/assets/javascripts/studip-ui.js
index f50739f84af..2ef3a6e21a8 100644
--- a/resources/assets/javascripts/studip-ui.js
+++ b/resources/assets/javascripts/studip-ui.js
@@ -143,9 +143,7 @@ import eventBus from "./lib/event-bus.ts";
             }).each(function () {
                 const dataOptions = $(this).data().datePicker;
 
-                const options = {
-                    minDate: new Date(1970, 0)
-                };
+                const options = {};
                 if (dataOptions?.disable_holidays === true) {
                     options.beforeShowDay = disableHolidaysBeforeShow;
                 }
@@ -283,9 +281,7 @@ import eventBus from "./lib/event-bus.ts";
             }).each(function () {
                 const dataOptions = $(this).data().datePicker;
 
-                const options = {
-                    minDate: new Date(1970, 0)
-                };
+                const options = {};
                 if (dataOptions?.disable_holidays === true) {
                     options.beforeShowDay = disableHolidaysBeforeShow;
                 }
-- 
GitLab


From a53eae3b85766ec0f4b55f5d246383e836f9040b Mon Sep 17 00:00:00 2001
From: Moritz Strohm <strohm@data-quest.de>
Date: Fri, 7 Jul 2023 14:30:44 +0200
Subject: [PATCH 3/3] set minDate for all datepickers and fullcalendar
 instances to 1970-01-01

---
 resources/assets/javascripts/lib/fullcalendar.js | 3 +++
 resources/assets/javascripts/studip-ui.js        | 3 ++-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/resources/assets/javascripts/lib/fullcalendar.js b/resources/assets/javascripts/lib/fullcalendar.js
index b3eb9d1a7d7..aebcfaee4d2 100644
--- a/resources/assets/javascripts/lib/fullcalendar.js
+++ b/resources/assets/javascripts/lib/fullcalendar.js
@@ -355,6 +355,9 @@ class Fullcalendar
             },
             minTime: '08:00:00',
             maxTime: '20:00:00',
+            validRange: {
+                start: '1970-01-01'
+            },
             height: 'auto',
             contentHeight: 'auto',
             firstDay: 1,
diff --git a/resources/assets/javascripts/studip-ui.js b/resources/assets/javascripts/studip-ui.js
index 2ef3a6e21a8..967f2d2f016 100644
--- a/resources/assets/javascripts/studip-ui.js
+++ b/resources/assets/javascripts/studip-ui.js
@@ -578,7 +578,8 @@ import eventBus from "./lib/event-bus.ts";
             if (value !== instance.lastVal) {
                 $(this).change();
             }
-        }
+        },
+        minDate: new Date(1970, 0)
     };
 
     $.datepicker.setDefaults({
-- 
GitLab