Content
View differences
Updated by Eric Schubert 5 days ago
### Technical stuff
* introduce module `wikis` in code base
* new model `WikiProvider` `WikiIntegration`
* 2 sub models: `XWikiWikiProvider`, `InternalWikiProvider` `XWikiWikiIntegration`, `InternalWikiIntegration`
* XWiki
* insert URL to wiki (in XWiki an instance can host multiple wikis)
* alternative: URL to wiki instance and then selecting and creating wikis from that wiki instance (new admin interaction)
* generate a UUID for identification from the other side (XWiki)
* maybe instead of having an identifier per wiki integration have an instance ID
* consume an identifier from XWiki to identify them
* Authentication strategy
* OIDC
* bidirectional OAuth2
* new existent model `WikiPageLink` `Wiki`
* can reworked to be `inline` or `relation` the object referencing `WikiIntegration`
* XWiki: page links for xwiki wikis can only be `relation` as those kind of links are stored on xwiki side replacing `Project` reference with `ProjectWiki` reference
* `inline` probably has no author and no create|update timestamps (or at least no meaningful values for those) dropping status ❓
* wikis can be fetched user scoped by each wiki provider new model `ProjectWiki`
* for internal wikis: `Wiki.visible`
* for xwiki wikis: `Adapters::XWiki::Queries::WikiQuery` created when configuring a project to have access to a wiki
* wiki page links should be linkable `WikiPage` can only point to different entities
a `Wiki`, that has a `InternalWikiIntegration`
* we start with work packages, but easy `Wiki` needs to imagine projects, meetings, etc.
refer to its integration type when calling any queries or commands
**Class diagram**
<img class="image_resized op-uc-image op-uc-image_inline" style="width:649px;" src="/api/v3/attachments/919898/content"> style="width:457px;" src="/api/v3/attachments/919765/content">
### Hints
* model `Wiki` should renaming an xwiki wiki **could** work
* we would need to update all inline page links
* better: do not be changed a lot (yet) use URLs in description text, but use inline page link blocks &nbsp;- e.g. `[[wiki:page-id]]`
* introduce module `wikis` in code base
* new model `WikiProvider`
* 2 sub models: `XWikiWikiProvider`, `InternalWikiProvider`
* XWiki
* insert URL to wiki (in XWiki an instance can host multiple wikis)
*
* maybe instead of having an identifier per wiki integration have an instance ID
* consume an identifier from XWiki to identify them
* Authentication strategy
* OIDC
* bidirectional OAuth2
* new
* can
* XWiki: page links for xwiki wikis can only be `relation` as those kind of links are stored on xwiki side
* `inline` probably has no author and no create|update timestamps (or at least no meaningful values for those)
* wikis can be fetched user scoped by each wiki provider
* for internal wikis: `Wiki.visible`
* for xwiki wikis: `Adapters::XWiki::Queries::WikiQuery`
* wiki page links should be linkable
<img class="image_resized op-uc-image op-uc-image_inline" style="width:649px;" src="/api/v3/attachments/919898/content">
### Hints
* model `Wiki` should
* we would need to update all inline page links
* better: do