Content
View differences
Updated by Judith Roth 6 months ago
**As** a User
**I want to** link to workpackages in my text with a rich representation
**so that** I can get high level workpackage information at a glance from my document
**Acceptance criteria**
* Invoke via Slash command
* User can type a combination of the three levels to drill down to the command
* Namespace OpenProject (required when used in 3rd party apps like XWiki)
* `openproject`
* `op`
* Namespace Object type work package
* `work package`
* `workpackage`
* `wp`
* Function name
* `link`
* Examples of valid inputs
* `op link`
* `wp link`
* `openproject link`
* `workpackage link`
* `work package link`
* ...
* ~~It's possible to add work package block by pasting a URL that links to a work package~~ (not part of 17.0) => <mention class="mention" data-id="68818" data-type="work_package" data-text="#68818">#68818</mention>
* the Block and search are styled according to designs => <mention class="mention" data-id="67473" data-type="work_package" data-text="#67473">#67473</mention>, <mention class="mention" data-id="68978" data-type="work_package" data-text="#68978">#68978</mention>
* workpackages are restricted by the users permission. Without permission, a ghost embed is shown instead. => #69192
**Technical notes**
* In the BlockNote document structure the block should hold the following (meta) data
* ~~href: URL (as pasted by the user. Might contain project context, or board, or what not)~~
* ~~canonical\_url: conanical URL (what is that? ask Jens)~~
* ~~type: work\_package\_link~~
* ~~size: small-block~~
* work\_package\_id: the ID
(It can be that a user is only allowed to see the document but not the details about a work package. So we do not want to leak information about the work package in the yDoc for security reasons. Therefore, for now, we decided to only save the ID).
\---
Also see <mention class="mention" data-id="67571" data-type="work_package" data-text="###67571">###67571</mention> for resulting block
**I want to** link to workpackages in my text with a rich representation
**so that** I can get high level workpackage information at a glance from my document
**Acceptance criteria**
* Invoke via Slash command
* User can type a combination of the three levels to drill down to the command
* Namespace OpenProject (required when used in 3rd party apps like XWiki)
* `openproject`
* `op`
* Namespace Object type work package
* `work package`
* `workpackage`
* `wp`
* Function name
* `link`
* Examples of valid inputs
* `op link`
* `wp link`
* `openproject link`
* `workpackage link`
* `work package link`
* ...
* ~~It's possible to add work package block by pasting a URL that links to a work package~~ (not part of 17.0) => <mention class="mention" data-id="68818" data-type="work_package" data-text="#68818">#68818</mention>
* the Block and search are styled according to designs => <mention class="mention" data-id="67473" data-type="work_package" data-text="#67473">#67473</mention>, <mention class="mention" data-id="68978" data-type="work_package" data-text="#68978">#68978</mention>
* workpackages are restricted by the users permission. Without permission, a ghost embed is shown instead. => #69192
**Technical notes**
* In the BlockNote document structure the block should hold the following (meta) data
* ~~href: URL (as pasted by the user. Might contain project context, or board, or what not)~~
* ~~canonical\_url: conanical URL (what is that? ask Jens)~~
* ~~type: work\_package\_link~~
* ~~size: small-block~~
* work\_package\_id: the ID
(It can be that a user is only allowed to see the document but not the details about a work package. So we do not want to leak information about the work package in the yDoc for security reasons. Therefore, for now, we decided to only save the ID).
\---
Also see <mention class="mention" data-id="67571" data-type="work_package" data-text="###67571">###67571</mention> for resulting block