Feat/add calendar delegation features#8085
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
da7ae86 to
654e770
Compare
kra-mo
left a comment
There was a problem hiding this comment.
From the design side:
"Select a user" and "Search for a user…" are redundant, it's fine to just have the second if it's baked into the component anyway, so without the title. The input field should also be full-width, and Add should be a primary button.
I wonder why delegation should be its own item in the sidebar instead of just a section in Settings? I'd rather have it just there. And at that point, have + Add delegate be full-width as well.
0dd4839 to
f50f37d
Compare
kra-mo
left a comment
There was a problem hiding this comment.
Looks good from the design side :)
|
Tested. Found error when delegator has a shared calendar |
|
I think it's related to nextcloud/server#59232 @hamza221
|
Signed-off-by: Grigory Vodyanov <scratchx@gmx.com>
Signed-off-by: Grigory Vodyanov <scratchx@gmx.com>
Signed-off-by: Grigory Vodyanov <scratchx@gmx.com>
e8b2495 to
d8f14d7
Compare
The counter avatar and "Delegated to you by" action text now use the delegator's principal rather than the calendar's owner, so a calendar that the delegator received via a regular share is correctly attributed to the delegator who actually granted proxy access. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
In the event editor's CalendarPickerHeader and the shared
CalendarPicker, delegated calendars now display
"{name} (delegated by {delegator})" and show the delegator's avatar
(instead of the calendar owner's). The label is built as a single
string because NcActionButton only renders the first text node of its
default slot.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Thanks a lot for fixing the broken stuff @hamza221! Please don't merge this for now though because you accidentally removed the information on whether people are read/write delegates in settings, I'll re-introduce that.
EDIT: NOT TRUE
|
Revoking access also stopped working EDIT: NOT TRUE |
|
@hamza221 My bad, ignore my comments |
|
Btw sorry for the co-authored commits, I told it to commit as Assisted but apparently it ignored my, will be fixed on squash. |
| const baseUrl = currentUser.url.replace(/\/?$/, '') | ||
| const proxyWriteGroupUrl = baseUrl + '/calendar-proxy-write' | ||
| const proxyReadGroupUrl = baseUrl + '/calendar-proxy-read' |
There was a problem hiding this comment.
The CDav library should be responsible for creating the specific urls the Calendar app should not need to know how to format a dav url
|
One last comment, this feature needs a version gate for 34 unless we are back porting all the server changes |
Signed-off-by: Grigory Vodyanov <scratchx@gmx.com>
Signed-off-by: Grigory Vodyanov <scratchx@gmx.com>
Signed-off-by: Grigory Vodyanov <scratchx@gmx.com>
0c53326 to
74badc4
Compare
|
Looks good, I just fixed the linting errors. This will need to wait until the cdav pr is merged, then the library version will need to be bumped in this pr |
Signed-off-by: Grigory Vodyanov <scratchx@gmx.com>
74badc4 to
146302e
Compare
Signed-off-by: Grigory Vodyanov <scratchx@gmx.com>
Feature gate added |
|
Thanks a lot for the help Sebastian! |
No new features were adeed to server, all fixes, all to be backported to 32, no gating actually needed. |
Signed-off-by: Grigory Vodyanov <scratchx@gmx.com>















For #2706
COMPREHENSIVE GUIDE FOR TESTING THIS