aboutsummaryrefslogtreecommitdiffstats
path: root/apps/dav
diff options
context:
space:
mode:
authorChristoph Wurst <ChristophWurst@users.noreply.github.com>2023-11-29 15:52:28 +0100
committerGitHub <noreply@github.com>2023-11-29 15:52:28 +0100
commitf8125cbdfc517f73730d19f2f9b59c48a7b00a89 (patch)
treee9d53f5a0cc0cf3d1bf8f5db70d777617a2ef7d9 /apps/dav
parent8f7a138c5cfcdfee650ba2ac7e469b85dc19c556 (diff)
parent84cfbe6b1966943e7df04afc3d29ba8a3597cf4c (diff)
downloadnextcloud-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.php2
-rw-r--r--apps/dav/src/components/AbsenceForm.vue8
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: {