-
Notifications
You must be signed in to change notification settings - Fork 61
Shared camps #8004
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: devel
Are you sure you want to change the base?
Shared camps #8004
Conversation
b70271c
to
4030b09
Compare
19845e2
to
5f0de3a
Compare
✅ Feature branch deployment ready!
|
5f0de3a
to
e93b56d
Compare
e93b56d
to
cc3806d
Compare
"self": { | ||
"href": "escaped_value" | ||
}, | ||
"sharedBy": "escaped_value" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Anyone knows why this isn't wrapped in a { "href": ... }
?
private static function getContentNodeEndpointQueryCountRanges(): array { | ||
return [ | ||
'/content_nodes' => [10, 12], | ||
'/content_nodes' => [11, 13], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know why this went up...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/activity_responsibles: 6 | ||
/activity_responsibles/item: 8 | ||
/camps: 15 | ||
/camps: 18 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What are the numbers in this snapshot? Query count? Why did this go up?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
e2f1de3
to
48d92bb
Compare
{{ $tc(`components.campAdmin.campSharingSettings.copyCampLink`) }} | ||
</v-tooltip> | ||
</v-list-item-action> | ||
<v-list-item-action v-if="isManager" class="align-self-start"> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As with all camp settings, the frontend only allows managers to change this, but in the API it is also possible for members. #3440
7ab2a38
to
fa8f622
Compare
ee508e6
to
3972403
Compare
3972403
to
690bed3
Compare
690bed3
to
0da05df
Compare
0da05df
to
79c8368
Compare
https://github.com/coderabbitai review this pr |
@coderabbitai review this pr |
@BacLuc I'll review the PR for you, focusing on the shared camps functionality implementation including the API permission changes, UI modifications for sharing visitors, and overall code quality. ✅ Actions performedReview triggered.
|
'detail' => 'Access Denied.', | ||
]); | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add tests for setting and un-setting the flag, and check that the sharedSince and sharedBy fields are set correctly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
already very cool, thank you
|
||
/** | ||
* Whether the programme of this camp is publicly available to anyone (except for | ||
* personal data such as camp collaborations, personal material lists, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment might not yet be correct
/** | ||
* Date and time when the camp was last set to be shared publicly. | ||
*/ | ||
#[ApiProperty(example: '2025-10-01T00:00:00+00:00', required: true, openapiContext: ['format' => 'date-time'])] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why required?
} | ||
|
||
public function onBeforeSharingStatusChange(Camp $data): Camp { | ||
if ($data->isShared) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The idea is to keep the timestamp when the camp was last shared and by whom, even if its not shared anymore.
]); | ||
} | ||
|
||
public function testCreateActivityInSharedCampIsDeniedForUnrelatedUser() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
testCreateActivityInSharedCampIsAllowedForCollaborator?
]); | ||
} | ||
|
||
public function testDeleteActivityFromCampSharedIsDeniedForInvitedUser() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
testDeleteActivityFromCampSharedIsAllowedForCollaborator
"self": { | ||
"href": "escaped_value" | ||
}, | ||
"sharedBy": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here too... is this correct
<template> | ||
<div class="e-sortable-checklist-item" @dragstart="gugus"> | ||
<ChecklistItemEdit :checklist="checklist" :checklist-item="item"> | ||
<div class="e-sortable-checklist-item" @dragstart="startDragging"> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe put into a separate component later
"navigation": { | ||
"desktop": { | ||
"navTopbar": { | ||
"admin": "Admin", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
were these left over translations?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, exactly. They were referenced nowhere.
@coderabbitai review this pr again |
@BacLuc I'll conduct a comprehensive re-review of the entire PR, examining all the changes in the shared camps functionality implementation including the API permissions, UI modifications for sharing visitors, and code quality across all modified files. ✅ Actions performedFull review triggered. |
Fixes #7481
Fixes #7324
Fixes #7445
Fixes #6281
To be discussed / decided / done: