PHP 클래스 Neos\Neos\Controller\Module\Management\WorkspacesController

상속: extends Neos\Neos\Controller\Module\AbstractModuleController
파일 보기 프로젝트 열기: neos/neos-development-collection

보호된 프로퍼티들

프로퍼티 타입 설명
$contentDimensionPresetSource Neos\Neos\Domain\Service\ContentDimensionPresetSourceInterface
$contextFactory Neos\Neos\Domain\Service\ContentContextFactory
$propertyMapper Neos\Flow\Property\PropertyMapper
$propertyMappingConfigurationBuilder Neos\Flow\Property\PropertyMappingConfigurationBuilder
$publishingService Neos\Neos\Service\PublishingService
$securityContext Neos\Flow\Security\Context
$siteRepository Neos\Neos\Domain\Repository\SiteRepository
$translator Neos\Flow\I18n\Translator
$userService Neos\Neos\Domain\Service\UserService
$workspaceRepository Neos\ContentRepository\Domain\Repository\WorkspaceRepository

공개 메소드들

메소드 설명
createAction ( string $title, Workspace $baseWorkspace, string $visibility, string $description = '' ) : void Create a workspace
deleteAction ( Workspace $workspace ) : void Delete a workspace
discardNodeAction ( Neos\ContentRepository\Domain\Model\NodeInterface $node, Workspace $selectedWorkspace ) Discard a a single node
discardWorkspaceAction ( Workspace $workspace ) : void Discards content of the whole workspace
editAction ( Workspace $workspace ) : void Edit a workspace
indexAction ( ) : void Display a list of unpublished content
newAction ( ) : void
publishNodeAction ( Neos\ContentRepository\Domain\Model\NodeInterface $node, Workspace $selectedWorkspace ) Publish a single node
publishOrDiscardNodesAction ( array $nodes, string $action, Workspace $selectedWorkspace = null ) Publishes or discards the given nodes
publishWorkspaceAction ( Workspace $workspace ) : void Publishes the whole workspace
rebaseAndRedirectAction ( Neos\ContentRepository\Domain\Model\NodeInterface $targetNode, Workspace $targetWorkspace ) : void Rebase the current users personal workspace onto the given $targetWorkspace and then redirects to the $targetNode in the content module.
showAction ( Workspace $workspace ) : void
updateAction ( Workspace $workspace ) : void Update a workspace

보호된 메소드들

메소드 설명
computeChangesCount ( Workspace $selectedWorkspace ) : array Computes the number of added, changed and removed nodes for the given workspace
computeSiteChanges ( Workspace $selectedWorkspace ) : array Builds an array of changes for sites in the given workspace
getOriginalNode ( Neos\ContentRepository\Domain\Model\NodeInterface $modifiedNode ) : Neos\ContentRepository\Domain\Model\NodeInterface Retrieves the given node's corresponding node in the base workspace (that is, which would be overwritten if the given node would be published)
getPropertyLabel ( string $propertyName, Neos\ContentRepository\Domain\Model\NodeInterface $changedNode ) : string Tries to determine a label for the specified property
initializeAction ( ) : void
initializeUpdateAction ( ) : void
postProcessDiffArray ( array &$diffArray ) : void A workaround for some missing functionality in the Diff Renderer:
prepareBaseWorkspaceOptions ( Workspace $excludedWorkspace = null ) : array Creates an array of workspace names and their respective titles which are possible base workspaces for other workspaces.
prepareOwnerOptions ( ) : array Creates an array of user names and their respective labels which are possible owners for a workspace.
renderContentChanges ( Neos\ContentRepository\Domain\Model\NodeInterface $changedNode ) : array Renders the difference between the original and the changed content of the given node and returns it, along with meta information, in an array.
renderSlimmedDownContent ( mixed $propertyValue ) : string Renders a slimmed down representation of a property of the given node. The output will be HTML, but does not contain any markup from the original content.

메소드 상세

computeChangesCount() 보호된 메소드

Computes the number of added, changed and removed nodes for the given workspace
protected computeChangesCount ( Workspace $selectedWorkspace ) : array
$selectedWorkspace Neos\ContentRepository\Domain\Model\Workspace
리턴 array

computeSiteChanges() 보호된 메소드

Builds an array of changes for sites in the given workspace
protected computeSiteChanges ( Workspace $selectedWorkspace ) : array
$selectedWorkspace Neos\ContentRepository\Domain\Model\Workspace
리턴 array

createAction() 공개 메소드

Create a workspace
public createAction ( string $title, Workspace $baseWorkspace, string $visibility, string $description = '' ) : void
$title string Human friendly title of the workspace, for example "Christmas Campaign"
$baseWorkspace Neos\ContentRepository\Domain\Model\Workspace Workspace the new workspace should be based on
$visibility string Visibility of the new workspace, must be either "internal" or "shared"
$description string A description explaining the purpose of the new workspace
리턴 void

deleteAction() 공개 메소드

Delete a workspace
public deleteAction ( Workspace $workspace ) : void
$workspace Neos\ContentRepository\Domain\Model\Workspace A workspace to delete
리턴 void

discardNodeAction() 공개 메소드

Discard a a single node
public discardNodeAction ( Neos\ContentRepository\Domain\Model\NodeInterface $node, Workspace $selectedWorkspace )
$node Neos\ContentRepository\Domain\Model\NodeInterface
$selectedWorkspace Neos\ContentRepository\Domain\Model\Workspace

discardWorkspaceAction() 공개 메소드

Discards content of the whole workspace
public discardWorkspaceAction ( Workspace $workspace ) : void
$workspace Neos\ContentRepository\Domain\Model\Workspace
리턴 void

editAction() 공개 메소드

Edit a workspace
public editAction ( Workspace $workspace ) : void
$workspace Neos\ContentRepository\Domain\Model\Workspace
리턴 void

getOriginalNode() 보호된 메소드

Retrieves the given node's corresponding node in the base workspace (that is, which would be overwritten if the given node would be published)
protected getOriginalNode ( Neos\ContentRepository\Domain\Model\NodeInterface $modifiedNode ) : Neos\ContentRepository\Domain\Model\NodeInterface
$modifiedNode Neos\ContentRepository\Domain\Model\NodeInterface
리턴 Neos\ContentRepository\Domain\Model\NodeInterface

getPropertyLabel() 보호된 메소드

Tries to determine a label for the specified property
protected getPropertyLabel ( string $propertyName, Neos\ContentRepository\Domain\Model\NodeInterface $changedNode ) : string
$propertyName string
$changedNode Neos\ContentRepository\Domain\Model\NodeInterface
리턴 string

indexAction() 공개 메소드

Display a list of unpublished content
public indexAction ( ) : void
리턴 void

initializeAction() 보호된 메소드

protected initializeAction ( ) : void
리턴 void

initializeUpdateAction() 보호된 메소드

protected initializeUpdateAction ( ) : void
리턴 void

newAction() 공개 메소드

public newAction ( ) : void
리턴 void

postProcessDiffArray() 보호된 메소드

This method will check if content in the given diff array is either completely new or has been completely removed and wraps the respective part in or tags, because the Diff Renderer currently does not do that in these cases.
protected postProcessDiffArray ( array &$diffArray ) : void
$diffArray array
리턴 void

prepareBaseWorkspaceOptions() 보호된 메소드

Creates an array of workspace names and their respective titles which are possible base workspaces for other workspaces.
protected prepareBaseWorkspaceOptions ( Workspace $excludedWorkspace = null ) : array
$excludedWorkspace Neos\ContentRepository\Domain\Model\Workspace If set, this workspace will be excluded from the list of returned workspaces
리턴 array

prepareOwnerOptions() 보호된 메소드

Creates an array of user names and their respective labels which are possible owners for a workspace.
protected prepareOwnerOptions ( ) : array
리턴 array

publishNodeAction() 공개 메소드

Publish a single node
public publishNodeAction ( Neos\ContentRepository\Domain\Model\NodeInterface $node, Workspace $selectedWorkspace )
$node Neos\ContentRepository\Domain\Model\NodeInterface
$selectedWorkspace Neos\ContentRepository\Domain\Model\Workspace

publishOrDiscardNodesAction() 공개 메소드

Publishes or discards the given nodes
public publishOrDiscardNodesAction ( array $nodes, string $action, Workspace $selectedWorkspace = null )
$nodes array <\Neos\ContentRepository\Domain\Model\NodeInterface> $nodes
$action string
$selectedWorkspace Neos\ContentRepository\Domain\Model\Workspace

publishWorkspaceAction() 공개 메소드

Publishes the whole workspace
public publishWorkspaceAction ( Workspace $workspace ) : void
$workspace Neos\ContentRepository\Domain\Model\Workspace
리턴 void

rebaseAndRedirectAction() 공개 메소드

Rebase the current users personal workspace onto the given $targetWorkspace and then redirects to the $targetNode in the content module.
public rebaseAndRedirectAction ( Neos\ContentRepository\Domain\Model\NodeInterface $targetNode, Workspace $targetWorkspace ) : void
$targetNode Neos\ContentRepository\Domain\Model\NodeInterface
$targetWorkspace Neos\ContentRepository\Domain\Model\Workspace
리턴 void

renderContentChanges() 보호된 메소드

Renders the difference between the original and the changed content of the given node and returns it, along with meta information, in an array.
protected renderContentChanges ( Neos\ContentRepository\Domain\Model\NodeInterface $changedNode ) : array
$changedNode Neos\ContentRepository\Domain\Model\NodeInterface
리턴 array

renderSlimmedDownContent() 보호된 메소드

Note: It's clear that this method needs to be extracted and moved to a more universal service at some point. However, since we only implemented diff-view support for this particular controller at the moment, it stays here for the time being. Once we start displaying diffs elsewhere, we should refactor the diff rendering part.
protected renderSlimmedDownContent ( mixed $propertyValue ) : string
$propertyValue mixed
리턴 string

showAction() 공개 메소드

public showAction ( Workspace $workspace ) : void
$workspace Neos\ContentRepository\Domain\Model\Workspace
리턴 void

updateAction() 공개 메소드

Update a workspace
public updateAction ( Workspace $workspace ) : void
$workspace Neos\ContentRepository\Domain\Model\Workspace A workspace to update
리턴 void

프로퍼티 상세

$contentDimensionPresetSource 보호되어 있는 프로퍼티

protected ContentDimensionPresetSourceInterface,Neos\Neos\Domain\Service $contentDimensionPresetSource
리턴 Neos\Neos\Domain\Service\ContentDimensionPresetSourceInterface

$contextFactory 보호되어 있는 프로퍼티

protected ContentContextFactory,Neos\Neos\Domain\Service $contextFactory
리턴 Neos\Neos\Domain\Service\ContentContextFactory

$propertyMapper 보호되어 있는 프로퍼티

protected PropertyMapper,Neos\Flow\Property $propertyMapper
리턴 Neos\Flow\Property\PropertyMapper

$propertyMappingConfigurationBuilder 보호되어 있는 프로퍼티

protected PropertyMappingConfigurationBuilder,Neos\Flow\Property $propertyMappingConfigurationBuilder
리턴 Neos\Flow\Property\PropertyMappingConfigurationBuilder

$publishingService 보호되어 있는 프로퍼티

protected PublishingService,Neos\Neos\Service $publishingService
리턴 Neos\Neos\Service\PublishingService

$securityContext 보호되어 있는 프로퍼티

protected Context,Neos\Flow\Security $securityContext
리턴 Neos\Flow\Security\Context

$siteRepository 보호되어 있는 프로퍼티

protected SiteRepository,Neos\Neos\Domain\Repository $siteRepository
리턴 Neos\Neos\Domain\Repository\SiteRepository

$translator 보호되어 있는 프로퍼티

protected Translator,Neos\Flow\I18n $translator
리턴 Neos\Flow\I18n\Translator

$userService 보호되어 있는 프로퍼티

protected UserService,Neos\Neos\Domain\Service $userService
리턴 Neos\Neos\Domain\Service\UserService

$workspaceRepository 보호되어 있는 프로퍼티

protected WorkspaceRepository,Neos\ContentRepository\Domain\Repository $workspaceRepository
리턴 Neos\ContentRepository\Domain\Repository\WorkspaceRepository