本文整理汇总了PHP中Pimcore\Model\Object\Service::rewriteIds方法的典型用法代码示例。如果您正苦于以下问题:PHP Service::rewriteIds方法的具体用法?PHP Service::rewriteIds怎么用?PHP Service::rewriteIds使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Pimcore\Model\Object\Service
的用法示例。
在下文中一共展示了Service::rewriteIds方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: copyRewriteIdsAction
public function copyRewriteIdsAction()
{
$transactionId = $this->getParam("transactionId");
$idStore = Tool\Session::useSession(function ($session) use($transactionId) {
return $session->{$transactionId};
}, "pimcore_copy");
if (!array_key_exists("rewrite-stack", $idStore)) {
$idStore["rewrite-stack"] = array_values($idStore["idMapping"]);
}
$id = array_shift($idStore["rewrite-stack"]);
$object = Object::getById($id);
// create rewriteIds() config parameter
$rewriteConfig = array("object" => $idStore["idMapping"]);
$object = Object\Service::rewriteIds($object, $rewriteConfig);
$object->setUserModification($this->getUser()->getId());
$object->save();
// write the store back to the session
Tool\Session::useSession(function ($session) use($transactionId, $idStore) {
$session->{$transactionId} = $idStore;
}, "pimcore_copy");
$this->_helper->json(array("success" => true, "id" => $id));
}
示例2: replaceAssignmentsAction
public function replaceAssignmentsAction()
{
$success = false;
$message = "";
$element = Element\Service::getElementById($this->getParam("type"), $this->getParam("id"));
$sourceEl = Element\Service::getElementById($this->getParam("sourceType"), $this->getParam("sourceId"));
$targetEl = Element\Service::getElementById($this->getParam("targetType"), $this->getParam("targetId"));
if ($element && $sourceEl && $targetEl && $this->getParam("sourceType") == $this->getParam("targetType") && $sourceEl->getType() == $targetEl->getType()) {
$rewriteConfig = [$this->getParam("sourceType") => [$sourceEl->getId() => $targetEl->getId()]];
if ($element instanceof Document) {
$element = Document\Service::rewriteIds($element, $rewriteConfig);
} elseif ($element instanceof Object\AbstractObject) {
$element = Object\Service::rewriteIds($element, $rewriteConfig);
} elseif ($element instanceof Asset) {
$element = Asset\Service::rewriteIds($element, $rewriteConfig);
}
$element->setUserModification($this->getUser()->getId());
$element->save();
$success = true;
} else {
$message = "source-type and target-type do not match";
}
$this->_helper->json(["success" => $success, "message" => $message]);
}