Resolve "Add frontend for Free/Busy model" #2975
No reviewers
Labels
No labels
Security
TeX
auto-update
board
done
board
ready
board
todo
check
delete-eslint-rc-js
check
update-builddeps-package-json
check
update-eslint-rc-js
check
update-gitignore
check
update-merge-request-template
check
update-prettier-ignore
check
update-pyproject-toml
check
update-renovate-json
check
update-tox-ini
part
backend
part
ci
part
docs
part
frontend
part
i18n
part
non-technical
part
packaging
prio
1
prio
2
prio
3
release-mr-5.x
size
large
size
medium
size
small
source
customer
source
customer::fsmw
source
customer::fss
source
customer::teckids
source
downstream
type
breaking
type
bug
type
feature
type
refactoring
workflow
blocked
workflow
confirmed
workflow
current-todo
workflow
discussing
workflow
new-app
workflow
wontfix
No milestone
No project
No assignees
4 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
aleksis/AlekSIS-Core!2975
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "928-add-frontend-for-free-busy-model"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #928
added 4 commits
61022d9b- Add FreeBusyEvent model and simple inline list for managing own FreeBusyEvents8fb5b3a0- Move routes under persons parent route06a4c20c- Add translation stringsCompare with previous version
added 1 commit
718a14e6- Beautify free/busy status in inline listCompare with previous version
added 4 commits
81ce75f5- Re-introduce auto setting of end date103e0d25- Add free/busy event overview pageCompare with previous version
added 1 commit
Compare with previous version
marked this merge request as ready
assigned to @yuha
assigned to @hansegucker and unassigned @yuha
requested review from @nik
I think the event color should be set depending on free/busy status (like green for free, red for busy, configurable).
Please use rules.
Please use rules.
Please use a permission to enforce that this mutation can be only used by users with a person.
What the hell? That's no valid permission in any case, also please use rules.
That's not valid. Use very simple rule instead, please.
Please undo and extend rule ...
Please also add screenshots.
changed this line in version 5 of the diff
changed this line in version 5 of the diff
changed this line in version 5 of the diff
changed this line in version 5 of the diff
changed this line in version 5 of the diff
added 15 commits
master6b1df51b- Let myFreeBusyEvents query actually only return own events709f9b6f- Reformat79823234- Fix permissions99448da1- Merge branch 'master' into 928-add-frontend-for-free-busy-modelbcee2813- Adapt people menu ruleCompare with previous version
changed this line in version 6 of the diff
resolved all threads
added 2 commits
b46b9ff5- Reformat4df216ee- Set free/busy event color depending on statusCompare with previous version
marked this merge request as draft
FIXME: There are issues with the calendar fetching behaviour when changing weeks.
resolved all threads
added 1 commit
2f071c22- Keep all events on calendar refresh that are not fully contained in renge to be fetchedCompare with previous version
marked this merge request as ready
@nik Please review the frontend according to the needs of ~"source::customer::teckids"
Please update the changelog.
marked this merge request as draft
TODO: Add recurrence field
TODO: Change overview page to calendar-based page with multiple select (persons, groups)
TODO: Allow creation of own free/busy events in calendar overview
added 51 commits
master271dbc2f- Add code comments for the template in the custom event detail componente3a7cd08- Reformatbf718298- Do not set seconds when managing custom eventsda326bb7- Fix automatic setting of owner4d87cfb0- Merge branch 'master' into 904-allow-for-creation-of-simple-eventsac8bb31a- Rename additional/custom event to personal event935940a5- Add changelog lineb4ed62cc- Merge branch '904-allow-for-creation-of-simple-events' into 928-add-frontend-for-free-busy-model8a47188e- Fix migrationscb05e69a- Add recurrences to free/busy eventsCompare with previous version
added 1 commit
47cb6d94- Use calendar view for free/busy event overviewCompare with previous version
added 1 commit
2ee0b1c8- ReformatCompare with previous version
added 1 commit
Compare with previous version
added 1 commit
Compare with previous version
added 1 commit
c9a03325- Fix fetching of free/busy events in overviewCompare with previous version
added 1 commit
Compare with previous version
added 2 commits
743aa2f3- Use DateTime instead of Date for free/busy eventsbed2c618- Add dialog for creating free/busy events on calendar overview pageCompare with previous version
added 3 commits
a327e352- Change free/busy overview sidenav iconccf18866- Add permission checking4ba65098- ReformatCompare with previous version
added 1 commit
60fe3d9e- Update translationsCompare with previous version
added 1 commit
3a8d0b42- Show informationc card when no person/group is selected on free/busy overview pageCompare with previous version
added 1 commit
d93946e7- Add mobile-compatible select chip on free/busy overviewCompare with previous version
resolved all threads
marked this merge request as ready
Unite creation dialogs of personal event and free/busy event (one dialog with button group to select event type)
Rename to "availability event"
marked this merge request as draft
Generalize timetable component and the free/busy event overview component into one that allows for selection of certain groups of events inside a feed
mentioned in merge request AlekSIS-App-Chronos!1946
added 1 commit
da2aaf90- Generalize free/busy event overview pageCompare with previous version
added 102 commits
masterCompare with previous version
added 1 commit
Compare with previous version
added 1 commit
Compare with previous version
added 2 commits
Compare with previous version
Should be none
Use sets, is iterable
Not useful here
What do you mean exactly? Honestly, I can't really remember...
We wanted to move permission checks to the FreeBusy aggregator because should be either able to see all free/busy slots of a person (or resource) or none.
ah alright, thanks
changed this line in version 26 of the diff
changed this line in version 26 of the diff
changed this line in version 26 of the diff
added 1 commit
Compare with previous version
TODO: Add title to FreeBusyEvent
added 3 commits
5d585590- Merge branch 'master' into 928-add-frontend-for-free-busy-model61961523- Adapt to removal of sites framework316bad0b- WIP: Aggregate events to free/busy feedCompare with previous version
added 1 commit
e8f49eff- Add title field for free/busy eventCompare with previous version
added 1 commit
d61dca50- ReformatCompare with previous version
added 56 commits
mastercbf48695- Make event creation dialog more densed9bca565- Hide recurrence field if event is not recurringeec008db- Fix editing of personal eventseb48ad1d- Translate new fields in PersonalEventDialog271e16e8- Merge branch 'master' into 928-add-frontend-for-free-busy-modelCompare with previous version
added 4 commits
Compare with previous version
added 1 commit
Compare with previous version
added 7 commits
2118025a- Merge branch '943-allow-for-creation-of-full-day-events' into 928-add-frontend-for-free-busy-modeldd06a30e- Hide FreeBusy feed in calendar overview2ec690d9- Reformat0de408e8- Unify creation dialogues for free/busy and personal events16b0991e- Reformat9060416d- Add some color to calendar type chip group401b1142- Make required fields for calendar creation actually requiredCompare with previous version
added 7 commits
73d33b8f- Merge branch '943-allow-for-creation-of-full-day-events' into 928-add-frontend-for-free-busy-model11509ad7- Hide FreeBusy feed in calendar overview06c97376- Reformatb6ab6a50- Unify creation dialogues for free/busy and personal events64c93f17- Reformat3f49930d- Add some color to calendar type chip group4b866e20- Make required fields for calendar creation actually requiredCompare with previous version
mentioned in issue AlekSIS-App-Chronos#230
mentioned in merge request AlekSIS-App-Chronos!1974
added 464 commits
masterCompare with previous version
TODO: this needs some adapting to the changes happened in the meantime regarding CRUD stuff (batch mutations etc)
added 1 commit
5cc98c4c- Merge branch '953-prepare-for-django-5-0' into 'master'Compare with previous version
added 48 commits
masterbf183adb- Merge branch '1036-emit-raw-items-from-querymixin-as-received-from-the-backend' into 'master'Compare with previous version
added 1 commit
47c8f2c6- Fix migrationsCompare with previous version
changed this line in version 40 of the diff
added 1 commit
0d40ec1e- Adapt to batch mutations & fix mutationsCompare with previous version
There is a title in the model itself, but its not getting set (there is no input field for it)
added 1 commit
7517a4a8- Fix event creation dialogueCompare with previous version
added 2 commits
3f87bf6a- Add some transitionscb3de888- Fix error with full-day event timezone handlingCompare with previous version
added 1 commit
705babd7- Some fixes to calendar event dialog & use it in all placesCompare with previous version
...which will be resolved when the new
CalendarEventDialogis used in all places. For now, this doesn't work – for some reason – with the FreeBusy event CRUD listadded 31 commits
faf33353- Add selection slotda60a764- Merge branch '1022-extend-foreignkeyfield' into...cf6948f8- Merge branch '1022-extend-foreignkeyfield' into...e769c709- Merge branch...163ea307- Merge branch 'master' into 1005-add-generic-date-sorted-infinite-scrolling-crud-iterator-componente86e18b9- Merge branch 'master' into 1005-add-generic-date-sorted-infinite-scrolling-crud-iterator-component9597ed41- Merge branch 'master' into 1005-add-generic-date-sorted-infinite-scrolling-crud-iterator-component910bb8af- Add some more default slot content9f8b6c92- Merge branch...5dcab907- Allow getting calendar events wieh precise DateTimesCompare with previous version
added 1 commit
11daea03- Fix permission checkingCompare with previous version
added 1 commit
4dfd6290- Add person list to aggregated free/busy meta dataCompare with previous version
added 3 commits
5d75ecbf- Remove duplicated slotsb4a0a402- Add load more mechanism when no data is presentf6e4b94f- Merge branch...Compare with previous version
added 283 commits
mastere82401bb- Merge branch 'master' into 928-add-frontend-for-free-busy-model705fe39d- Fix manager of FreeBusyEventCompare with previous version
its a chip group now
added 1 commit
Compare with previous version
added 1 commit
Compare with previous version
added 2 commits
7b9b0a5c- Rename Free/Busy feeds845e29bb- Fix get_objects methodsCompare with previous version
added 2 commits
d085d2e7- Fix manager6c5f9511- Add timezone field to additional event related graphene type/mutationsCompare with previous version
created #1105 to continue this discussion
resolved all threads
mentioned in issue #1105
marked this merge request as ready
added 1 commit
36248f20- ReformatCompare with previous version
Screenshot is missing
Merge conflicts
Add typing
?
added 1 commit
2676704c- Fix calendar event dialog and use it in availability event CRUD listCompare with previous version
added 1 commit
58de2694- Fix full day switchingCompare with previous version
changed this line in version 57 of the diff
added 1 commit
b28179ad- Apply 1 suggestion(s) to 1 file(s)Compare with previous version
added 1 commit
e144c249- ReformatCompare with previous version
added 21 commits
masterc10af291- Merge branch 'master' into 928-add-frontend-for-free-busy-modelCompare with previous version
added 1 commit
b1a0bbee- Fix models and migrationsCompare with previous version
added 18 commits
master6b72da73- Merge branch 'master' into 928-add-frontend-for-free-busy-modelCompare with previous version
added 1 commit
4a0f21ed- Fix edit item handlingCompare with previous version
added 2 commits
f201b938- Fix handling of creationfb7a320b- Pass affected queryCompare with previous version
added 1 commit
bd6ee834- Add typingCompare with previous version
changed this line in version 65 of the diff
added 1 commit
ee48c436- Fix meta information about persons/groupsCompare with previous version
added 1 commit
6fac31b5- Add proper detail component for aggregated free/busy eventsCompare with previous version
resolved all threads
added 1 commit
b39de266- ReformatCompare with previous version
@hansegucker please have a look again
@nik Please also have a look.
I think this is the wrong menu tab for end users. Data management shouldn't be shown with normal users.
This doesn't like a consistent structure one class method for busy stuff and two object methods for availability stuff.
Wrong typing
Looks superfluous.
Looks superfluous.
same as groups (see below)
Would be probably better to init with empty defaults, not every feed has to be useful for availability. Also fix typing. Also same with busy.
What is this? Please comment or use better matching var name.
Don't forget to run super
This should now be solved in another way.
What is this change for?
@ZugBahnHof Please review frontend.
this looks dangerous (and bad)
what about one computed property that will simply return "personal_events" or "availability" and then you can build all these keys yourself? also, this doesn't look very future proof right now, what would we do if we added another event type?
mentioned in issue AlekSIS/onboarding/AlekSIS-App-Cursus#32
added 712 commits
masterCompare with previous version
added 1 commit
1450bfb3- Merge origin/master into 928-add-frontend-for-free-busy-modelCompare with previous version
changed this line in version 70 of the diff
changed this line in version 70 of the diff
added 4 commits
265b9fb6- Add missing timezone-field to availabilityEventFieldscd3f45e6- Fix timezone-field declaration in availability-event-backend6fdfac45- Add hideTime prop to DateTimeFieldcd5a134c- Rework the CalendarEventDialogCompare with previous version
marked this merge request as draft
added 4 commits
567878dd- Add missing event related german translations1d6afdb3- Fix CalendarEventDialog translation handling64a66ca2- Finish and fix fullDay handling6396dc2e- Filter recurring fieldCompare with previous version
added 107 commits
master1695b603- Merge origin/master769ab467- Add expand-arg to get_objects of AvailabilityEvent77d5f033- Rename AvailabilityEvent verbose_name7d72dae1- Port get_objects of AvailabilityEvent to use super().get_objectsCompare with previous version
added 100 commits
master4734b96a- Merge origin/masterCompare with previous version
changed this line in version 74 of the diff
added 11 commits
151514b9- 1 earlier commit7c192787- Reorder CalendarEventDialog8884c0c1- Filter timezone & recurrences in case of non-recurring event305c04f8- Fix DateTimeField layout047e7edb- Set timezone in item filter2464f0e4- Update personal&availability-event-schema and introduce base-classes545bad5a- Switch calendar-event-base-classes to mixins5e7cd4cb- Add missing permissions to PersonalEventBatchCreateMutation's Meta81668f07- Fix unpythonic method-call4bd2aea9- Introduce per-event filter to allow toggling free/busy728b59a5- Default fields to empty objectCompare with previous version
mentioned in issue AlekSIS-App-Chronos#237
added 36 commits
master961b5a22- Merge origin/master into 928-add-frontend-for-free-busy-model58d3d30d- Remove done TODO067a394d- Remove leftover slide-transitionCompare with previous version
added 11 commits
4732f18e- 1 earlier commit5dabf9be- Allow setting selectableEvents via prop in CalendarEventDialogfa448767- Move personalEvent to first position7a224970- Properly set initialSelectedEvent1e507109- Remove title-comment2c334d8f- Integrate new CalendarEventDialog into its edit-contexts4041718f- Add icon to CalendarEventDialog's title811a5981- Move CalendarEventDialog related buttons into their slot3594597b- Replace calendar-event's create-fab with a speed-dialf85ac791- Layout calendar-event's create-speed-dialCompare with previous version
added 4 commits
d808aaca- Update selectedEvent by watching initialSelectedEventecc0366f- Remove redundant emit of save8cca771c- Remove unused value prop from calendar-event-dialog01e27754- Simplify calendar-event-dialog's watch-sectionCompare with previous version
I have no clue.
added 1 commit
fc211027- Move free/busy routeCompare with previous version
added 1 commit
5fa414ef- Rename migrations in order to resolve conflict by mergeCompare with previous version
changed this line in version 80 of the diff
added 1 commit
9cfe9981- Revert unnecessary change of default editItem valueCompare with previous version
changed this line in version 81 of the diff
added 1 commit
c5b5086f- Add explaining commentCompare with previous version
changed this line in version 82 of the diff
changed this line in version 82 of the diff
changed this line in version 82 of the diff
changed this line in version 82 of the diff
changed this line in version 82 of the diff
changed this line in version 82 of the diff
changed this line in version 82 of the diff
changed this line in version 82 of the diff
added 1 commit
e8799a2a- Remove code related to aggregated free/busy feedCompare with previous version
mentioned in merge request !3442
resolved all threads
resolved all threads
changed this line in version 83 of the diff
changed this line in version 83 of the diff
added 1 commit
f876e7f0- Apply 2 suggestion(s) to 1 file(s)Compare with previous version
changed this line in version 84 of the diff
added 1 commit
09589e62- Move availability event overview routeCompare with previous version
added 2 commits
9384fe77- Remove unused console log1e0d98ca- Fix edit mode in availability event listCompare with previous version
added 1 commit
Compare with previous version
added 1 commit
Compare with previous version
added 1 commit
d4f82cfd- Remove unused slotsCompare with previous version
added 1 commit
Compare with previous version
added 1 commit
cfe928be- Fix handling of full day eventsCompare with previous version
added 1 commit
10cb76f8- Fix initial selected event type handlingCompare with previous version
@permcu When editing (not when creating) recurrences of availability events (but not personal events; and that's why I'm fairly confused right now), I get the following error:
{"errors":[{"message":"Variable '$input' got invalid value 'Europe/Berlin' at 'input[0].timezone'; Value 'Europe/Berlin' does not exist in 'CalendarEventTimezone' enum. Did you mean the enum value 'EUROPE_BERLIN', 'EUROPE_DUBLIN', 'EUROPE_JERSEY', 'EUROPE_PARIS', or 'EUROPE_TALLINN'?","locations":[{"line":1,"column":35}]}]}added 1 commit
c514533f- Make title field of availability event not requiredCompare with previous version
added 1 commit
60b9982b- Add changelogCompare with previous version
Screenshots:
added 1 commit
30d3fd34- Fix handling of recurring availability eventsCompare with previous version
added 1 commit
b775a8d4- Re-add deleted FreeBusy classCompare with previous version
added 1 commit
4694c765- Add timezone-field-type to AvailabilityEventBatchPatchMutationCompare with previous version
added 1 commit
51dd49b0- Reorder AvailabilityEventBatchCreateMutationCompare with previous version
resolved all threads
marked this merge request as ready
TODO
That looks like a problematic OR (as in DB-wise). See Chronos how to handle this correctly.
This shouldn't check on instance, but whether it's an iterable.
same as above
You sure that this is correct?
I thought that this has been moved to a new MR?
I thought that this has been moved to a new MR?
I thought that this has been moved to a new MR?
I thought that this has been moved to a new MR?
Missing docstrings
This should be a
BadRequest, shouldn't use&(what is wrong aboutand).@ZugBahnHof Please review frontend.
Please also fix lint.
Two things:
added 4 commits
13cdd068- Remove unused argf1402a5b- Remove leftover handleCreate and associated ref5befa37a- Pass props and attrs from CalendarEventDialog to DialogObjectForm61364490- Make sure CalendarEventDialog uses minimal-patchCompare with previous version
mentioned in merge request !3443
added 1 commit
55bd52aa- Let DialogObjectForm do the implicit isCreate handlingCompare with previous version
added 1 commit
c1997c36- Do not show until if not available in AvailabilityEventListCompare with previous version
After commit: Let DialogObjectForm do the implicit isCreate handling
this now needs: https://edugit.org/AlekSIS/official/AlekSIS-Core/-/merge_requests/1798
This was necessary because otherwise the CaledarEventDialog would not work for editing in normal CRUD-context.
Where is this component used? I can not find it.
Where is this used?
@yuha resolves threads ;-)
changed this line in version 101 of the diff
changed this line in version 101 of the diff
added 1 commit
3679e52f- Apply 2 suggestion(s) to 1 file(s)Compare with previous version
oh thanks for the reminder, that's a leftover component that is used for the f/b aggregation feature but that i forgot to remove. will do!
oh thanks for the reminder, that's a leftover component that is used for the f/b aggregation feature but that i forgot to remove. will do!
changed this line in version 102 of the diff
changed this line in version 102 of the diff
changed this line in version 102 of the diff
changed this line in version 102 of the diff
changed this file in version 102 of the diff
changed this file in version 102 of the diff
added 1 commit
fec22a68- Remove leftovers from changes related to f/b overview/aggregationCompare with previous version
regarding first point: https://edugit.org/AlekSIS/official/AlekSIS-Core/-/merge_requests/1800
added 1 commit
39061bcd- "–" for title column if emptyCompare with previous version
changed this line in version 104 of the diff
changed this line in version 104 of the diff
changed this line in version 104 of the diff
changed this line in version 104 of the diff
added 1 commit
9c03eee2- Simplify availability events get_objects logicCompare with previous version
changed this line in version 105 of the diff
added 1 commit
b9d4957d- Change type checkingCompare with previous version
do you mean this part? and could you explain to me what makes this approach unproblematic (and the one now used in core problematic)?
https://edugit.org/AlekSIS/official/AlekSIS-App-Chronos/-/blob/master/aleksis/apps/chronos/managers.py?ref_type=heads#L187
added 1 commit
890079ac- Refactor filtersCompare with previous version
added 1 commit
ee6d8bdd- Fix typoCompare with previous version
Why shouldn't it be?
added 1 commit
78966589- Add docstringsCompare with previous version
I don't know what the str representation is, so I just asked.
changed this line in version 109 of the diff
added 1 commit
9aa94da0- Use BadRequestCompare with previous version
Yes, exactly this part. Doing ORs over multiple joined tables (like
person__member_oforperson__owner_of) is slow in PostgreSQL (remember our nightly sprint). But doing them as separate queries is very fast and unioning those is even cheaper (union is just adding things to a list).added 1 commit
35a974b5- ReformatCompare with previous version
mentioned in merge request !3450
added 1 commit
5ccb5d9a- Use more efficient filter mechanismCompare with previous version
resolved all threads
approved this merge request