Feature: Allow overlapping periods
- Dominant language
- PHP
- Stars
- 156
- Forks
- 72
- Avg merge
- 12h 43m
- Merged PRs (30d)
- 203
Description
So far we have decided, not to llow overlapping periods. Allowing this would make eCamp more complex in different places. Here is a (maybe not exhaustive) list of places where this assumption has influenced our implementation. All of these places need to be adjusted if we want to allow overlapping periods. Checked-off entries are no longer a problem as far as we know.
- [x] Original decision was in #494. Reason being that we wanted to display multiple periods on the same picasso screen. Then, drag&dropping a schedule entry into n overlapping day, it might have been unclear, which period the schedule entry should be placed in (?). The idea of displaying multiple periods at once was later dropped, but in case we circle back in the future, this would need to be thought through again.
- [ ] When creating nd editing schedule entries in the [popup dialog](https://github.com/ecamp/ecamp3/blob/devel/frontend/src/components/program/DialogActivityEdit.vue)), it is currently possible to choose a date in another period and move the schedule entry there this way. With overlapping periods, this would need adjustment, so we can uniquely identify the target period, or offer another way to move a schedule entry into another period.
- [x] Filtering schedule entries in the API by day works via start and end time of the day, since we don't have a database relation between day and schedule entry: `/schedule_entries?start[strictly_before]=2021-01-02T00:00:00+00:00&end[after]=2021-01-01T00:00:00+00:00`. These filters on their own couldn't distinguish schedule entries in different, overlapping periods. But in Day::scheduleEntries, we already additionally filter by period: `/schedule_entries?period=/periods/1a2b3c4d&start[strictly_before]=2021-01-02T00:00:00+00:00&end[after]=2021-01-01T00:00:00+00:00`
- [ ] The numbering of days in the overlapping periods would have to be fixed and implemented in `Period`: https://github.com/ecamp/ecamp3/pull/2411#discussion_r801977491
- [ ] The pretty-printed display of periods on the camp list needs to be re-implemented given this new possibility
Contributor guide
Assessment
This issue has not been assessed yet.