From e427140716bee59c907b421f7191540461596457 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 29 Sep 2025 10:22:12 +0000 Subject: [PATCH 1/6] Initial plan From ade4ad0a07a904ed0bd0b0ccf30d53fca88ca720 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 29 Sep 2025 10:29:52 +0000 Subject: [PATCH 2/6] Add collaboration policies template based on PolicyProvider.php structure Co-authored-by: KamilSznajdrowicz <93484579+KamilSznajdrowicz@users.noreply.github.com> --- .../collaboration_policies_template.md | 78 +++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 docs/permissions/collaboration_policies_template.md diff --git a/docs/permissions/collaboration_policies_template.md b/docs/permissions/collaboration_policies_template.md new file mode 100644 index 0000000000..0f08d4e9c2 --- /dev/null +++ b/docs/permissions/collaboration_policies_template.md @@ -0,0 +1,78 @@ +--- +description: Collaboration policies template based on PolicyProvider.php from ibexa/share +page_type: reference +--- + +# Collaboration Policies Template + +This template documents the collaboration policies as defined in the PolicyProvider.php from ibexa/share repository. + +The Collaboration bundle allows multiple people to work together on the same content. Teams can invite colleagues and external partners to join collaboration sessions where they can edit content in real-time or preview it before publication. + +## Available policies + +### Collaboration + +The collaboration policies control various aspects of collaborative content editing, session management, invitations, and sharing. + +| Module | Function | Effect | Possible limitations | +|--------|----------|--------|---------------------| +| `collaboration` | `create_session` | Create session - Create new collaboration sessions for content items | [Content type](limitation_reference.md#content-type-limitation)
[Section](limitation_reference.md#section-limitation)
[Owner](limitation_reference.md#owner-limitation)
[Location](limitation_reference.md#location-limitation)
[Subtree](limitation_reference.md#subtree-limitation) | +| | `view_session` | View session - View collaboration sessions and their details | [Content type](limitation_reference.md#content-type-limitation)
[Section](limitation_reference.md#section-limitation)
[Owner](limitation_reference.md#owner-limitation) | +| | `edit_session` | Edit session - Modify collaboration session settings and permissions | [Owner](limitation_reference.md#owner-limitation) | +| | `delete_session` | Delete session - Delete collaboration sessions | [Owner](limitation_reference.md#owner-limitation) | +| | `join_session` | Join session - Join existing collaboration sessions | [Content type](limitation_reference.md#content-type-limitation)
[Section](limitation_reference.md#section-limitation) | +| | `leave_session` | Leave session - Leave collaboration sessions | None | +| | `invite_user` | Invite user - Create and send invitations to users for collaboration sessions | [Content type](limitation_reference.md#content-type-limitation)
[Owner](limitation_reference.md#owner-limitation) | +| | `view_invitation` | View invitation - View sent and received invitations | [Owner](limitation_reference.md#owner-limitation) | +| | `update_invitation` | Update invitation - Modify invitation permissions (edit/preview access) | [Owner](limitation_reference.md#owner-limitation) | +| | `revoke_invitation` | Revoke invitation - Revoke or delete invitations | [Owner](limitation_reference.md#owner-limitation) | +| | `accept_invitation` | Accept invitation - Accept invitations to join collaboration sessions | None | +| | `decline_invitation` | Decline invitation - Decline invitations to join collaboration sessions | None | +| | `preview_content` | Preview content - Preview content in collaboration sessions | [Content type](limitation_reference.md#content-type-limitation)
[Section](limitation_reference.md#section-limitation)
[Location](limitation_reference.md#location-limitation)
[Subtree](limitation_reference.md#subtree-limitation) | +| | `edit_content` | Edit content - Edit content collaboratively in real-time | [Content type](limitation_reference.md#content-type-limitation)
[Section](limitation_reference.md#section-limitation)
[Owner](limitation_reference.md#owner-limitation)
[Location](limitation_reference.md#location-limitation)
[Subtree](limitation_reference.md#subtree-limitation)
[Field Group](limitation_reference.md#field-group-limitation) | +| | `comment` | Comment - Add comments and feedback in collaboration sessions | [Content type](limitation_reference.md#content-type-limitation)
[Section](limitation_reference.md#section-limitation) | +| | `create_link` | Create link - Create shareable links for collaboration sessions | [Content type](limitation_reference.md#content-type-limitation)
[Owner](limitation_reference.md#owner-limitation) | +| | `view_link` | View link - View and copy shareable links | [Owner](limitation_reference.md#owner-limitation) | +| | `manage_link` | Manage link - Configure link settings (expiration, permissions) | [Owner](limitation_reference.md#owner-limitation) | +| | `revoke_link` | Revoke link - Revoke or disable shareable links | [Owner](limitation_reference.md#owner-limitation) | + +## Policy Details + +### Session Management Policies + +- **collaboration/create_session**: Allows creating new collaboration sessions for content items +- **collaboration/view_session**: Allows viewing collaboration sessions and their details +- **collaboration/edit_session**: Allows modifying collaboration session settings and permissions +- **collaboration/delete_session**: Allows deleting collaboration sessions +- **collaboration/join_session**: Allows joining existing collaboration sessions +- **collaboration/leave_session**: Allows leaving collaboration sessions + +### Invitation Management Policies + +- **collaboration/invite_user**: Allows creating and sending invitations to users for collaboration sessions +- **collaboration/view_invitation**: Allows viewing sent and received invitations +- **collaboration/update_invitation**: Allows modifying invitation permissions (edit/preview access) +- **collaboration/revoke_invitation**: Allows revoking or deleting invitations +- **collaboration/accept_invitation**: Allows accepting invitations to join collaboration sessions +- **collaboration/decline_invitation**: Allows declining invitations to join collaboration sessions + +### Content Collaboration Policies + +- **collaboration/preview_content**: Allows previewing content in collaboration sessions +- **collaboration/edit_content**: Allows editing content collaboratively in real-time +- **collaboration/comment**: Allows adding comments and feedback in collaboration sessions + +### Sharing and Link Policies + +- **collaboration/create_link**: Allows creating shareable links for collaboration sessions +- **collaboration/view_link**: Allows viewing and copying shareable links +- **collaboration/manage_link**: Allows configuring link settings (expiration, permissions) +- **collaboration/revoke_link**: Allows revoking or disabling shareable links + +## Related Documentation + +- [Policies](policies.md) - Main policies reference +- [Custom policies](custom_policies.md) - How to create custom policies +- [Limitation reference](limitation_reference.md) - Available limitations +- [Permissions](permissions.md) - Overview of the permissions system \ No newline at end of file From 5ba2a164e91cd11873ed1cc24ab170049ab48289 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 29 Sep 2025 10:36:23 +0000 Subject: [PATCH 3/6] Complete collaboration policies template with documentation Co-authored-by: KamilSznajdrowicz <93484579+KamilSznajdrowicz@users.noreply.github.com> --- .../collaborative_editing_guide.md | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 docs/content_management/collaborative_editing/collaborative_editing_guide.md diff --git a/docs/content_management/collaborative_editing/collaborative_editing_guide.md b/docs/content_management/collaborative_editing/collaborative_editing_guide.md new file mode 100644 index 0000000000..edb9932458 --- /dev/null +++ b/docs/content_management/collaborative_editing/collaborative_editing_guide.md @@ -0,0 +1,11 @@ +--- +description: Overview of collaboration features in Ibexa DXP +--- + +# Collaborative Editing Guide + +This is a placeholder for the collaborative editing product guide that demonstrates collaboration features. + +## Related Documentation + +- [Collaboration Policies](../../permissions/collaboration_policies.md) - Permission policies for collaboration features From 0db068ca5afc93cef20e6740e9a72187aa7bef88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Noco=C5=84?= Date: Mon, 29 Sep 2025 13:37:31 +0200 Subject: [PATCH 4/6] Added packages --- composer.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/composer.json b/composer.json index 87c15757e0..188d86863a 100644 --- a/composer.json +++ b/composer.json @@ -23,6 +23,7 @@ "ibexa/doctrine-schema": "5.0.x-dev", "ibexa/search": "5.0.x-dev", "ibexa/content-forms": "5.0.x-dev", + "ibexa/messenger": "5.0.x-dev", "ibexa/design-engine": "5.0.x-dev", "ibexa/user": "5.0.x-dev", "ibexa/notifications": "5.0.x-dev", @@ -34,6 +35,7 @@ "ibexa/core-persistence": "5.0.x-dev", "ibexa/connector-ai": "5.0.x-dev", "ibexa/share": "5.0.x-dev", + "ibexa/collaboration": "~5.0.x-dev", "ibexa/connector-openai": "5.0.x-dev", "ibexa/migrations": "5.0.x-dev", "ibexa/cart": "5.0.x-dev", From 18692d82e6c0ad2d54bf264a0d68240e922273e4 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 29 Sep 2025 11:59:06 +0000 Subject: [PATCH 5/6] Update policies template based on actual PolicyProvider.php from ibexa/share Co-authored-by: KamilSznajdrowicz <93484579+KamilSznajdrowicz@users.noreply.github.com> --- .../collaboration_policies_template.md | 78 ------------------- docs/permissions/share_policies_template.md | 57 ++++++++++++++ 2 files changed, 57 insertions(+), 78 deletions(-) delete mode 100644 docs/permissions/collaboration_policies_template.md create mode 100644 docs/permissions/share_policies_template.md diff --git a/docs/permissions/collaboration_policies_template.md b/docs/permissions/collaboration_policies_template.md deleted file mode 100644 index 0f08d4e9c2..0000000000 --- a/docs/permissions/collaboration_policies_template.md +++ /dev/null @@ -1,78 +0,0 @@ ---- -description: Collaboration policies template based on PolicyProvider.php from ibexa/share -page_type: reference ---- - -# Collaboration Policies Template - -This template documents the collaboration policies as defined in the PolicyProvider.php from ibexa/share repository. - -The Collaboration bundle allows multiple people to work together on the same content. Teams can invite colleagues and external partners to join collaboration sessions where they can edit content in real-time or preview it before publication. - -## Available policies - -### Collaboration - -The collaboration policies control various aspects of collaborative content editing, session management, invitations, and sharing. - -| Module | Function | Effect | Possible limitations | -|--------|----------|--------|---------------------| -| `collaboration` | `create_session` | Create session - Create new collaboration sessions for content items | [Content type](limitation_reference.md#content-type-limitation)
[Section](limitation_reference.md#section-limitation)
[Owner](limitation_reference.md#owner-limitation)
[Location](limitation_reference.md#location-limitation)
[Subtree](limitation_reference.md#subtree-limitation) | -| | `view_session` | View session - View collaboration sessions and their details | [Content type](limitation_reference.md#content-type-limitation)
[Section](limitation_reference.md#section-limitation)
[Owner](limitation_reference.md#owner-limitation) | -| | `edit_session` | Edit session - Modify collaboration session settings and permissions | [Owner](limitation_reference.md#owner-limitation) | -| | `delete_session` | Delete session - Delete collaboration sessions | [Owner](limitation_reference.md#owner-limitation) | -| | `join_session` | Join session - Join existing collaboration sessions | [Content type](limitation_reference.md#content-type-limitation)
[Section](limitation_reference.md#section-limitation) | -| | `leave_session` | Leave session - Leave collaboration sessions | None | -| | `invite_user` | Invite user - Create and send invitations to users for collaboration sessions | [Content type](limitation_reference.md#content-type-limitation)
[Owner](limitation_reference.md#owner-limitation) | -| | `view_invitation` | View invitation - View sent and received invitations | [Owner](limitation_reference.md#owner-limitation) | -| | `update_invitation` | Update invitation - Modify invitation permissions (edit/preview access) | [Owner](limitation_reference.md#owner-limitation) | -| | `revoke_invitation` | Revoke invitation - Revoke or delete invitations | [Owner](limitation_reference.md#owner-limitation) | -| | `accept_invitation` | Accept invitation - Accept invitations to join collaboration sessions | None | -| | `decline_invitation` | Decline invitation - Decline invitations to join collaboration sessions | None | -| | `preview_content` | Preview content - Preview content in collaboration sessions | [Content type](limitation_reference.md#content-type-limitation)
[Section](limitation_reference.md#section-limitation)
[Location](limitation_reference.md#location-limitation)
[Subtree](limitation_reference.md#subtree-limitation) | -| | `edit_content` | Edit content - Edit content collaboratively in real-time | [Content type](limitation_reference.md#content-type-limitation)
[Section](limitation_reference.md#section-limitation)
[Owner](limitation_reference.md#owner-limitation)
[Location](limitation_reference.md#location-limitation)
[Subtree](limitation_reference.md#subtree-limitation)
[Field Group](limitation_reference.md#field-group-limitation) | -| | `comment` | Comment - Add comments and feedback in collaboration sessions | [Content type](limitation_reference.md#content-type-limitation)
[Section](limitation_reference.md#section-limitation) | -| | `create_link` | Create link - Create shareable links for collaboration sessions | [Content type](limitation_reference.md#content-type-limitation)
[Owner](limitation_reference.md#owner-limitation) | -| | `view_link` | View link - View and copy shareable links | [Owner](limitation_reference.md#owner-limitation) | -| | `manage_link` | Manage link - Configure link settings (expiration, permissions) | [Owner](limitation_reference.md#owner-limitation) | -| | `revoke_link` | Revoke link - Revoke or disable shareable links | [Owner](limitation_reference.md#owner-limitation) | - -## Policy Details - -### Session Management Policies - -- **collaboration/create_session**: Allows creating new collaboration sessions for content items -- **collaboration/view_session**: Allows viewing collaboration sessions and their details -- **collaboration/edit_session**: Allows modifying collaboration session settings and permissions -- **collaboration/delete_session**: Allows deleting collaboration sessions -- **collaboration/join_session**: Allows joining existing collaboration sessions -- **collaboration/leave_session**: Allows leaving collaboration sessions - -### Invitation Management Policies - -- **collaboration/invite_user**: Allows creating and sending invitations to users for collaboration sessions -- **collaboration/view_invitation**: Allows viewing sent and received invitations -- **collaboration/update_invitation**: Allows modifying invitation permissions (edit/preview access) -- **collaboration/revoke_invitation**: Allows revoking or deleting invitations -- **collaboration/accept_invitation**: Allows accepting invitations to join collaboration sessions -- **collaboration/decline_invitation**: Allows declining invitations to join collaboration sessions - -### Content Collaboration Policies - -- **collaboration/preview_content**: Allows previewing content in collaboration sessions -- **collaboration/edit_content**: Allows editing content collaboratively in real-time -- **collaboration/comment**: Allows adding comments and feedback in collaboration sessions - -### Sharing and Link Policies - -- **collaboration/create_link**: Allows creating shareable links for collaboration sessions -- **collaboration/view_link**: Allows viewing and copying shareable links -- **collaboration/manage_link**: Allows configuring link settings (expiration, permissions) -- **collaboration/revoke_link**: Allows revoking or disabling shareable links - -## Related Documentation - -- [Policies](policies.md) - Main policies reference -- [Custom policies](custom_policies.md) - How to create custom policies -- [Limitation reference](limitation_reference.md) - Available limitations -- [Permissions](permissions.md) - Overview of the permissions system \ No newline at end of file diff --git a/docs/permissions/share_policies_template.md b/docs/permissions/share_policies_template.md new file mode 100644 index 0000000000..3df185048a --- /dev/null +++ b/docs/permissions/share_policies_template.md @@ -0,0 +1,57 @@ +--- +description: Share policies template based on PolicyProvider.php from ibexa/share +page_type: reference +--- + +# Share Policies Template + +This template documents the share policies as defined in the PolicyProvider.php from ibexa/share repository. + +The Share bundle provides functionality for sharing content and products with other users through various mechanisms including public links. + +## Available policies + +### Share Module + +The share module policies control management of public sharing links. + +| Module | Function | Effect | Possible limitations | +|--------|----------|--------|---------------------| +| `share` | `manage_public_link` | Manage public link - Create, update, and delete public sharing links | None | + +### Content Sharing + +Content sharing policies control the ability to share content items. + +| Module | Function | Effect | Possible limitations | +|--------|----------|--------|---------------------| +| `content` | `share` | Share - Share content items with other users or via public links | None | + +### Product Sharing + +Product sharing policies control the ability to share product information. + +| Module | Function | Effect | Possible limitations | +|--------|----------|--------|---------------------| +| `product` | `share` | Share - Share product information with other users or via public links | None | + +## Policy Details + +### Share Module Policies + +- **share/manage_public_link**: Allows managing public sharing links including creation, modification, and deletion + +### Content Sharing Policies + +- **content/share**: Allows sharing content items with other users or through public links + +### Product Sharing Policies + +- **product/share**: Allows sharing product information with other users or through public links + +## Related Documentation + +- [Policies](policies.md) - Main policies reference +- [Custom policies](custom_policies.md) - How to create custom policies +- [Limitation reference](limitation_reference.md) - Available limitations +- [Permissions](permissions.md) - Overview of the permissions system \ No newline at end of file From 4074b11cd944c00c6972092d46bd4a264fd7c873 Mon Sep 17 00:00:00 2001 From: Kamil Sznajdrowicz <93484579+KamilSznajdrowicz@users.noreply.github.com> Date: Mon, 29 Sep 2025 14:48:18 +0200 Subject: [PATCH 6/6] Delete docs/content_management/collaborative_editing/collaborative_editing_guide.md --- .../collaborative_editing_guide.md | 11 ----------- 1 file changed, 11 deletions(-) delete mode 100644 docs/content_management/collaborative_editing/collaborative_editing_guide.md diff --git a/docs/content_management/collaborative_editing/collaborative_editing_guide.md b/docs/content_management/collaborative_editing/collaborative_editing_guide.md deleted file mode 100644 index edb9932458..0000000000 --- a/docs/content_management/collaborative_editing/collaborative_editing_guide.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -description: Overview of collaboration features in Ibexa DXP ---- - -# Collaborative Editing Guide - -This is a placeholder for the collaborative editing product guide that demonstrates collaboration features. - -## Related Documentation - -- [Collaboration Policies](../../permissions/collaboration_policies.md) - Permission policies for collaboration features