diff options
author | Christoph Wurst <ChristophWurst@users.noreply.github.com> | 2023-11-29 15:52:28 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-29 15:52:28 +0100 |
commit | f8125cbdfc517f73730d19f2f9b59c48a7b00a89 (patch) | |
tree | e9d53f5a0cc0cf3d1bf8f5db70d777617a2ef7d9 /apps/dav | |
parent | 8f7a138c5cfcdfee650ba2ac7e469b85dc19c556 (diff) | |
parent | 84cfbe6b1966943e7df04afc3d29ba8a3597cf4c (diff) | |
download | nextcloud-server-f8125cbdfc517f73730d19f2f9b59c48a7b00a89.tar.gz nextcloud-server-f8125cbdfc517f73730d19f2f9b59c48a7b00a89.zip |
Merge pull request #41816 from nextcloud/fix/dav/single-day-ooo
fix(dav): Allow single-day out of office
Diffstat (limited to 'apps/dav')
-rw-r--r-- | apps/dav/lib/Controller/AvailabilitySettingsController.php | 2 | ||||
-rw-r--r-- | apps/dav/src/components/AbsenceForm.vue | 8 |
2 files changed, 8 insertions, 2 deletions
diff --git a/apps/dav/lib/Controller/AvailabilitySettingsController.php b/apps/dav/lib/Controller/AvailabilitySettingsController.php index daa39df470e..73e322896d8 100644 --- a/apps/dav/lib/Controller/AvailabilitySettingsController.php +++ b/apps/dav/lib/Controller/AvailabilitySettingsController.php @@ -66,7 +66,7 @@ class AvailabilitySettingsController extends Controller { $parsedFirstDay = new DateTimeImmutable($firstDay); $parsedLastDay = new DateTimeImmutable($lastDay); - if ($parsedFirstDay->getTimestamp() >= $parsedLastDay->getTimestamp()) { + if ($parsedFirstDay->getTimestamp() > $parsedLastDay->getTimestamp()) { throw new \Exception('First day is on or after last day'); } diff --git a/apps/dav/src/components/AbsenceForm.vue b/apps/dav/src/components/AbsenceForm.vue index 500004b755a..6fb1c4ce1fd 100644 --- a/apps/dav/src/components/AbsenceForm.vue +++ b/apps/dav/src/components/AbsenceForm.vue @@ -89,11 +89,17 @@ export default { * @return {boolean} */ valid() { + // Translate the two date objects to midnight for an accurate comparison + const firstDay = new Date(this.firstDay?.getTime()) + const lastDay = new Date(this.lastDay?.getTime()) + firstDay?.setHours(0, 0, 0, 0) + lastDay?.setHours(0, 0, 0, 0) + return !!this.firstDay && !!this.lastDay && !!this.status && !!this.message - && this.lastDay > this.firstDay + && lastDay >= firstDay }, }, methods: { |