Content
View differences
Updated by Oliver Günther 19 days ago
**As an** administrator creating a sub-type
**I want to** be guided through creation step by step, the way the project initiation wizard works
**so that** I can set up a sub-type and its reuse choices without hunting across admin tabs, and accept sensible defaults to create one quickly.
## Acceptance criteria
* Creating a sub-type runs as a multi-step wizard modeled on the project creation wizard, not a single form.
* The wizard guides me through: choose the parent type (and, where applicable, ownership), set the variant label, choose the reuse mode per aspect (workflow, form configuration, PDF and subject) before confirming.
* Each step validates before I advance, and I can go back to change an earlier step without losing later input
* Defaults are pre-filled, with every aspect Linked to the parent, so I can accept defaults and create in a few clicks
* The wizard is launched from the grouped Types index "Add sub-type" action and, for project-owned sub-types, from project settings
* The wizard is _not_ used for editing existing types, it will remain as tabs
## Technical considerations
* The new type is saved immediately after the first step, so we do not have to forward each form input between steps
* We need to find some way to render pages in both the tabbed and wizard style
## Permissions and visibility considerations
* **To whom is this feature visible?** Instance administrators (global sub-types); project members with `:manage_subtypes` (project-owned sub-types).
* **When is it not visible?**
* Feature flag turned off
* users without the relevant management rights.
## Translation considerations
<figure class="table op-uc-figure_align-center op-uc-figure"><table class="op-uc-table"><thead class="op-uc-table--head"><tr class="op-uc-table--row"><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">English</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">German</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">French (verify)</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">Spanish (verify)</p></th></tr></thead><tbody><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Create sub-type</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Untertyp erstellen</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Step {{number}} of {{total}}</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Schritt {{number}} von {{total}}</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Choose parent type</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Übergeordneten Typ wählen</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Variant label</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Variantenbezeichnung</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Reuse settings</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Wiederverwendung</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Finish</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Abschließen</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Back</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Zurück</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Continue</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Weiter</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr></tbody></table></figure>
## Out of scope
* Editing an existing sub-type through the wizard; editing stays in the tabbed administration. The wizard is for creation only
**I want to** be guided through creation step by step, the way the project initiation wizard works
**so that** I can set up a sub-type and its reuse choices without hunting across admin tabs, and accept sensible defaults to create one quickly.
## Acceptance criteria
* Creating a sub-type runs as a multi-step wizard modeled on the project creation wizard, not a single form.
* The wizard guides me through: choose the parent type (and, where applicable, ownership), set the variant label, choose the reuse mode per aspect (workflow, form configuration, PDF and subject) before confirming.
* Each step validates before I advance, and I can go back to change an earlier step without losing later input
* Defaults are pre-filled, with every aspect Linked to the parent, so I can accept defaults and create in a few clicks
* The wizard is launched from the grouped Types index "Add sub-type" action and, for project-owned sub-types, from project settings
* The wizard is _not_ used for editing existing types, it will remain as tabs
## Technical considerations
* The new type is saved immediately after the first step, so we do not have to forward each form input between steps
* We need to find some way to render pages in both the tabbed and wizard style
## Permissions and visibility considerations
* **To whom is this feature visible?** Instance administrators (global sub-types); project members with `:manage_subtypes` (project-owned sub-types).
* **When is it not visible?**
* Feature flag turned off
* users without the relevant management rights.
## Translation considerations
<figure class="table op-uc-figure_align-center op-uc-figure"><table class="op-uc-table"><thead class="op-uc-table--head"><tr class="op-uc-table--row"><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">English</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">German</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">French (verify)</p></th><th class="op-uc-table--cell op-uc-table--cell_head"><p class="op-uc-p">Spanish (verify)</p></th></tr></thead><tbody><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Create sub-type</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Untertyp erstellen</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Step {{number}} of {{total}}</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Schritt {{number}} von {{total}}</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Choose parent type</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Übergeordneten Typ wählen</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Variant label</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Variantenbezeichnung</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Reuse settings</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Wiederverwendung</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Finish</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Abschließen</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Back</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Zurück</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr><tr class="op-uc-table--row"><td class="op-uc-table--cell"><p class="op-uc-p">Continue</p></td><td class="op-uc-table--cell"><p class="op-uc-p">Weiter</p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td><td class="op-uc-table--cell"><p class="op-uc-p"><br data-cke-filler="true"></p></td></tr></tbody></table></figure>
## Out of scope
* Editing an existing sub-type through the wizard; editing stays in the tabbed administration. The wizard is for creation only