* feat: add range of dates for availability over-ride
* chore: changed range select to multiple select
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
## What does this PR do?
Fixes all date shifts that are due browser time, by ensuring everything is UTC so it's not transformed to different times.
The times weren't actually shifting, dates were, but after casting these to UTC properly the times were also shifting; so that was a bug after a bugfix, time wise it was only a problem to determine all day events (which didn't completely work)
### Yes, but how do I test this?
Before:
Create a all day date override in +05:30
Shift your local system time to -04:00
Note that the day is different
After - do the same:
The day is the same!
Fixes#8365Fixes#6978Fixes#6482
* Removed some of the UTC logic which shouldn't be there
* Upgrade rhf, remove SSR on [schedule] page
* Fix potential bug with date
* Amend schedule trpc call & don't show edit availability if id is undefined
* type fix
* Order date overrides in list by date
* Changed logic to check for unavailable
* Fix bug report spotted by @CarinaWolli
I can save date overrides for march 1st and 2nd (my date/time when saving was march 1st at 11PM GMT-5). It is saved successfully in the database however the date overrides don't show up in the list.
That's why:
- new Date() is utc so it is already march 2nd
- override.date has always timestamp 00:00 so it is also smaller than the utc time which was in my case 2023-03-02T04:00
* Actual fix, gotta remember it's the schedule tz
* Fixes to dialog for date override & dialog overflow fix
* Fixed datepicker border on mobile
* removed max-height from dialog, needs testing
Co-authored-by: Peer Richelsen <peer@cal.com>
* Initial incomplete (but mostly functional) push of date override functions
* Fixed date shifting on load
* Bring back minDate (automatically disable all dates before current date)
* Fix type error
* Supply working hours to render available dates
* Converted to SSR
* moving defaultValues to the backend
* Improv. as filter can be achieved within the reduce
Co-authored-by: Omar López <zomars@me.com>
* Double inversion -> single, as it is an early return
* uniq() exit - not needed anymore
* Typefixes
* It's overriding dates :D
* Fixed duplication DateOverrides in list
* Implemented changing the month
* Make dateOverrides an optional param
* Fixed test (which requires dateOverrides due to auto-typing)
* Prevent a full update on set as default from list view
* Added some extra keys to keep ts happy
* Only allow a single date override per date
* Disallow editing excludedDates to the same date
* Bring back duplicate key ?.?
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>