示例#1
0
 /**
  * Updates a content type group
  *
  * @param $contentTypeGroupId
  *
  * @throws \eZ\Publish\Core\REST\Server\Exceptions\ForbiddenException
  * @return \eZ\Publish\API\Repository\Values\ContentType\ContentTypeGroup
  */
 public function updateContentTypeGroup($contentTypeGroupId, Request $request)
 {
     $createStruct = $this->inputDispatcher->parse(new Message(array('Content-Type' => $request->headers->get('Content-Type')), $request->getContent()));
     try {
         $this->contentTypeService->updateContentTypeGroup($this->contentTypeService->loadContentTypeGroup($contentTypeGroupId), $this->mapToGroupUpdateStruct($createStruct));
         return $this->contentTypeService->loadContentTypeGroup($contentTypeGroupId);
     } catch (InvalidArgumentException $e) {
         throw new ForbiddenException($e->getMessage());
     }
 }
 public function processUpdate(FormActionEvent $event)
 {
     /** @var \EzSystems\RepositoryForms\Data\ContentTypeGroup\ContentTypeGroupUpdateData|\EzSystems\RepositoryForms\Data\ContentTypeGroup\ContentTypeGroupCreateData $data */
     $data = $event->getData();
     if ($data->isNew()) {
         $contentTypeGroup = $this->contentTypeService->createContentTypeGroup($data);
     } else {
         $this->contentTypeService->updateContentTypeGroup($data->contentTypeGroup, $data);
         $contentTypeGroup = $this->contentTypeService->loadContentTypeGroup($data->getId());
     }
     $data->setContentTypeGroup($contentTypeGroup);
 }
 /**
  * Update a Content Type Group object
  *
  * @throws \eZ\Publish\API\Repository\Exceptions\UnauthorizedException if the user is not allowed to create a content type group
  * @throws \eZ\Publish\API\Repository\Exceptions\InvalidArgumentException If the given identifier (if set) already exists
  *
  * @param \eZ\Publish\API\Repository\Values\ContentType\ContentTypeGroup $contentTypeGroup the content type group to be updated
  * @param \eZ\Publish\API\Repository\Values\ContentType\ContentTypeGroupUpdateStruct $contentTypeGroupUpdateStruct
  */
 public function updateContentTypeGroup(ContentTypeGroup $contentTypeGroup, ContentTypeGroupUpdateStruct $contentTypeGroupUpdateStruct)
 {
     $returnValue = $this->service->updateContentTypeGroup($contentTypeGroup, $contentTypeGroupUpdateStruct);
     $this->signalDispatcher->emit(new UpdateContentTypeGroupSignal(array('contentTypeGroupId' => $contentTypeGroup->id)));
     return $returnValue;
 }