本文整理汇总了PHP中eZ\Publish\API\Repository\LocationService::updateLocation方法的典型用法代码示例。如果您正苦于以下问题:PHP LocationService::updateLocation方法的具体用法?PHP LocationService::updateLocation怎么用?PHP LocationService::updateLocation使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类eZ\Publish\API\Repository\LocationService
的用法示例。
在下文中一共展示了LocationService::updateLocation方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: updateLocation
/**
* Updates a location.
*
* @param string $locationPath
*
* @return \eZ\Publish\Core\REST\Server\Values\RestLocation
*/
public function updateLocation($locationPath, Request $request)
{
$locationUpdate = $this->inputDispatcher->parse(new Message(array('Content-Type' => $request->headers->get('Content-Type')), $request->getContent()));
$location = $this->locationService->loadLocation($this->extractLocationIdFromPath($locationPath));
// First handle hiding/unhiding so that updating location afterwards
// will return updated location with hidden/visible status correctly updated
// Exact check for true/false is needed as null signals that no hiding/unhiding
// is to be performed
if ($locationUpdate->hidden === true) {
$this->locationService->hideLocation($location);
} elseif ($locationUpdate->hidden === false) {
$this->locationService->unhideLocation($location);
}
return new Values\RestLocation($location = $this->locationService->updateLocation($location, $locationUpdate->locationUpdateStruct), $this->locationService->getLocationChildCount($location));
}
示例2: updateLocation
/**
* Updates $location in the content repository
*
* @throws \eZ\Publish\API\Repository\Exceptions\UnauthorizedException If the current user user is not allowed to update this location
* @throws \eZ\Publish\API\Repository\Exceptions\InvalidArgumentException if if set the remoteId exists already
*
* @param \eZ\Publish\API\Repository\Values\Content\Location $location
* @param \eZ\Publish\API\Repository\Values\Content\LocationUpdateStruct $locationUpdateStruct
*
* @return \eZ\Publish\API\Repository\Values\Content\Location the updated Location
*/
public function updateLocation(Location $location, LocationUpdateStruct $locationUpdateStruct)
{
$returnValue = $this->service->updateLocation($location, $locationUpdateStruct);
$this->signalDispatcher->emit(new UpdateLocationSignal(array('contentId' => $location->contentId, 'locationId' => $location->id)));
return $returnValue;
}