diff --git a/Neos.Workspace.Ui/Classes/Controller/WorkspaceController.php b/Neos.Workspace.Ui/Classes/Controller/WorkspaceController.php index c462b801a91..e4bb4833a21 100644 --- a/Neos.Workspace.Ui/Classes/Controller/WorkspaceController.php +++ b/Neos.Workspace.Ui/Classes/Controller/WorkspaceController.php @@ -288,14 +288,14 @@ public function editAction(WorkspaceName $workspaceName): void * @param WorkspaceName $workspaceName * @param WorkspaceTitle $title Human friendly title of the workspace, for example "Christmas Campaign" * @param WorkspaceDescription $description A description explaining the purpose of the new workspace - * @param string $workspaceOwner Id of the owner of the workspace + * @param string|null $workspaceOwner Id of the owner of the workspace * @return void */ public function updateAction( WorkspaceName $workspaceName, WorkspaceTitle $title, WorkspaceDescription $description, - ?string $workspaceOwner + ?string $workspaceOwner = null ): void { $contentRepositoryId = SiteDetectionResult::fromRequest($this->request->getHttpRequest()) ->contentRepositoryId; diff --git a/Neos.Workspace.Ui/Configuration/Views.yaml b/Neos.Workspace.Ui/Configuration/Views.yaml index 2371306a213..dccdf779490 100644 --- a/Neos.Workspace.Ui/Configuration/Views.yaml +++ b/Neos.Workspace.Ui/Configuration/Views.yaml @@ -5,7 +5,7 @@ - 'resource://Neos.Workspace.Ui/Private/Partials' - 'resource://Neos.Neos/Private/Partials' -- requestFilter: 'isPackage("Neos.Workspace.Ui") && isController("Workspace") && isFormat("html") && (isAction("index") || isAction("new"))' +- requestFilter: 'isPackage("Neos.Workspace.Ui") && isController("Workspace") && isFormat("html") && (isAction("index") || isAction("new") || isAction("edit"))' viewObjectName: 'Neos\Fusion\View\FusionView' options: fusionPathPatterns: diff --git a/Neos.Workspace.Ui/Resources/Private/Fusion/Components/WorkspaceTableRow.fusion b/Neos.Workspace.Ui/Resources/Private/Fusion/Components/WorkspaceTableRow.fusion index 9726e28edf8..ca221982d63 100644 --- a/Neos.Workspace.Ui/Resources/Private/Fusion/Components/WorkspaceTableRow.fusion +++ b/Neos.Workspace.Ui/Resources/Private/Fusion/Components/WorkspaceTableRow.fusion @@ -50,6 +50,12 @@ prototype(Neos.Workspace.Ui:Component.WorkspaceTableRow) < prototype(Neos.Fusion workspace = ${props.workspaceName} } } + editWorkspaceUri = Neos.Fusion:UriBuilder { + action = 'edit' + arguments { + workspaceName = ${props.workspaceName} + } + } } renderer = afx` @@ -81,15 +87,14 @@ prototype(Neos.Workspace.Ui:Component.WorkspaceTableRow) < prototype(Neos.Fusion {I18n.translate('table.column.action.show', 'Show', [], 'Main', 'Neos.Workspace.Ui')} - - + + + {props.i18n.id('workspaces.editWorkspace').arguments([props.workspace.workspaceTitle.value])} + + + + + + + + + + + + + + + + {workspaceTitle} + + + + + + + + + + {ownerTitle} + + + + + + + + + {props.i18n.id('workspaces.workspace.visibility')} + + + + + + {props.i18n.id('workspaces.workspace.visibility.private')} + + {props.i18n.id('workspaces.workspace.visibility.private.help')} + + + + + + + + {props.i18n.id('workspaces.workspace.visibility.internal')} + + {props.i18n.id('workspaces.workspace.visibility.internal.help')} + + + + + + + + {props.i18n.id('applyChanges')} + + + + + + + {props.i18n.id('cancel')} + + + + ` +} diff --git a/Neos.Workspace.Ui/Resources/Private/Fusion/Views/New.fusion b/Neos.Workspace.Ui/Resources/Private/Fusion/Views/New.fusion index 23009730452..6f46267059b 100644 --- a/Neos.Workspace.Ui/Resources/Private/Fusion/Views/New.fusion +++ b/Neos.Workspace.Ui/Resources/Private/Fusion/Views/New.fusion @@ -39,7 +39,9 @@ Neos.Workspace.Ui.WorkspaceController.new = Neos.Fusion:Component { label="workspaces.workspace.description" class="neos-control-group" > - + - - - {neos:backend.translate(id: 'workspaces.editWorkspace', source: 'Main', package: 'Neos.Workspace.Ui', arguments: {0: workspace.workspaceTitle.value})} - - - - - - - - {neos:backend.translate(id: 'workspaces.workspace.title', source: 'Main', package: 'Neos.Workspace.Ui')} - - - - - - - {neos:backend.translate(id: 'workspaces.workspace.description', source: 'Main', package: 'Neos.Workspace.Ui')} - - - - - - - {neos:backend.translate(id: 'workspaces.workspace.baseWorkspace', source: 'Main', package: 'Neos.Workspace.Ui')} - - - - - - - - {neos:backend.translate(id: 'workspaces.workspace.owner', source: 'Main', package: 'Neos.Workspace.Ui')} - - - - - - - - {neos:backend.translate(id: 'workspaces.workspace.visibility', source: 'Main', package: 'Neos.Workspace.Ui')} - - - - {neos:backend.translate(id: 'workspaces.workspace.visibility.private', source: 'Main', package: 'Neos.Workspace.Ui')} {neos:backend.translate(id: 'workspaces.workspace.visibility.private.help', source: 'Main', package: 'Neos.Workspace.Ui')} - - - - - - {neos:backend.translate(id: 'workspaces.workspace.visibility.internal', source: 'Main', package: 'Neos.Workspace.Ui')} {neos:backend.translate(id: 'workspaces.workspace.visibility.internal.help', source: 'Main', package: 'Neos.Workspace.Ui')} - - - - - - - - diff --git a/Neos.Workspace.Ui/Resources/Private/Translations/en/Main.xlf b/Neos.Workspace.Ui/Resources/Private/Translations/en/Main.xlf index 8786d9093b1..7f6832dd9b1 100644 --- a/Neos.Workspace.Ui/Resources/Private/Translations/en/Main.xlf +++ b/Neos.Workspace.Ui/Resources/Private/Translations/en/Main.xlf @@ -8,6 +8,9 @@ Cancel + + Apply changes + Path