本文整理汇总了PHP中eZ\Publish\API\Repository\ContentTypeService::publishContentTypeDraft方法的典型用法代码示例。如果您正苦于以下问题:PHP ContentTypeService::publishContentTypeDraft方法的具体用法?PHP ContentTypeService::publishContentTypeDraft怎么用?PHP ContentTypeService::publishContentTypeDraft使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类eZ\Publish\API\Repository\ContentTypeService
的用法示例。
在下文中一共展示了ContentTypeService::publishContentTypeDraft方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: updateFieldDefinition
public function updateFieldDefinition($identifier, FieldDefinitionUpdateStruct $fieldDefinitionUpdateStruct)
{
$contentTypeDraft = $this->contentTypeService->createContentTypeDraft($this->currentContentType);
$this->contentTypeService->updateFieldDefinition($contentTypeDraft, $this->currentContentType->getFieldDefinition($identifier), $fieldDefinitionUpdateStruct);
$this->contentTypeService->publishContentTypeDraft($contentTypeDraft);
$this->currentContentType = $this->contentTypeService->loadContentTypeByIdentifier($this->currentContentType->identifier);
}
示例2: processPublishContentType
public function processPublishContentType(FormActionEvent $event)
{
$contentTypeDraft = $event->getData()->contentTypeDraft;
$this->contentTypeService->publishContentTypeDraft($contentTypeDraft);
if (isset($this->options['redirectRouteAfterPublish'])) {
$event->setResponse(new RedirectResponse($this->router->generate($this->options['redirectRouteAfterPublish'])));
}
}
示例3: visit
/**
* @inheritdoc
*/
public function visit(TreeNodeInterface $node, &$data)
{
$contentTypeIdentifier = $data['identifier'];
if ($this->isExistingContentType($contentTypeIdentifier)) {
$draft = $this->getUpdatedDraft($data);
} else {
$draft = $this->getNewDraft($data);
}
$this->contentTypeService->publishContentTypeDraft($draft);
}
示例4: publishContentTypeDraft
/**
* Publishes a content type draft
*
* @param $contentTypeId
*
* @throws \eZ\Publish\Core\REST\Server\Exceptions\ForbiddenException
* @return \eZ\Publish\Core\REST\Server\Values\RestContentType
*/
public function publishContentTypeDraft($contentTypeId)
{
$contentTypeDraft = $this->contentTypeService->loadContentTypeDraft($contentTypeId);
$fieldDefinitions = $contentTypeDraft->getFieldDefinitions();
if (empty($fieldDefinitions)) {
throw new ForbiddenException('Empty content type draft cannot be published');
}
$this->contentTypeService->publishContentTypeDraft($contentTypeDraft);
$publishedContentType = $this->contentTypeService->loadContentType($contentTypeDraft->id);
return new Values\RestContentType($publishedContentType, $publishedContentType->getFieldDefinitions());
}
示例5: publishContentTypeDraft
/**
* Publish the content type and update content objects.
*
* This method updates content objects, depending on the changed field definitions.
*
* @throws \eZ\Publish\API\Repository\Exceptions\BadStateException If the content type has no draft
* @throws \eZ\Publish\API\Repository\Exceptions\InvalidArgumentException If the content type has no field definitions
* @throws \eZ\Publish\API\Repository\Exceptions\UnauthorizedException if the user is not allowed to publish a content type
*
* @param \eZ\Publish\API\Repository\Values\ContentType\ContentTypeDraft $contentTypeDraft
*/
public function publishContentTypeDraft(ContentTypeDraft $contentTypeDraft)
{
$returnValue = $this->service->publishContentTypeDraft($contentTypeDraft);
$this->signalDispatcher->emit(new PublishContentTypeDraftSignal(array('contentTypeDraftId' => $contentTypeDraft->id)));
return $returnValue;
}