本文整理汇总了PHP中Pimcore\Model\Document::getRealFullPath方法的典型用法代码示例。如果您正苦于以下问题:PHP Document::getRealFullPath方法的具体用法?PHP Document::getRealFullPath怎么用?PHP Document::getRealFullPath使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Pimcore\Model\Document
的用法示例。
在下文中一共展示了Document::getRealFullPath方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: addPropertiesToDocument
/**
* @param Model\Document $document
* @throws \Zend_Json_Exception
*/
protected function addPropertiesToDocument(Model\Document $document)
{
// properties
if ($this->getParam("properties")) {
$properties = [];
// assign inherited properties
foreach ($document->getProperties() as $p) {
if ($p->isInherited()) {
$properties[$p->getName()] = $p;
}
}
$propertiesData = \Zend_Json::decode($this->getParam("properties"));
if (is_array($propertiesData)) {
foreach ($propertiesData as $propertyName => $propertyData) {
$value = $propertyData["data"];
try {
$property = new Property();
$property->setType($propertyData["type"]);
$property->setName($propertyName);
$property->setCtype("document");
$property->setDataFromEditmode($value);
$property->setInheritable($propertyData["inheritable"]);
$properties[$propertyName] = $property;
} catch (\Exception $e) {
\Logger::warning("Can't add " . $propertyName . " to document " . $document->getRealFullPath());
}
}
}
if ($document->isAllowed("properties")) {
$document->setProperties($properties);
}
}
// force loading of properties
$document->getProperties();
}
示例2: getSubDocumentIds
private function getSubDocumentIds(\Pimcore\Model\Document $document)
{
$childsList = new Pimcore\Model\Document\Listing();
$condition = "path LIKE ?";
if (!$this->getUser()->isAdmin()) {
$userIds = $this->getUser()->getRoles();
$userIds[] = $this->getUser()->getId();
$condition .= " AND (\n (SELECT `view` FROM users_workspaces_document WHERE userId IN (\" . implode(',', {$userIds}) . \") and LOCATE(CONCAT(path,`key`),cpath)=1 ORDER BY LENGTH(cpath) DESC LIMIT 1)=1\n OR\n (SELECT `view` FROM users_workspaces_document WHERE userId IN (\" . implode(',', {$userIds}) . \") and LOCATE(cpath,CONCAT(path,`key`))=1 ORDER BY LENGTH(cpath) DESC LIMIT 1)=1\n )";
}
$childsList->setCondition($condition, $document->getRealFullPath() . '/%');
return $childsList->loadIdList();
}
示例3: getSiteForDocument
/**
* @param Document $document
*/
public static function getSiteForDocument($document)
{
$cacheKey = "sites_full_list";
if (\Zend_Registry::isRegistered($cacheKey)) {
$sites = \Zend_Registry::get($cacheKey);
} else {
$sites = new Site\Listing();
$sites = $sites->load();
\Zend_Registry::set($cacheKey, $sites);
}
foreach ($sites as $site) {
if (preg_match("@^" . $site->getRootPath() . "/@", $document->getRealFullPath()) || $site->getRootDocument()->getId() == $document->getId()) {
return $site;
}
}
return;
}
示例4: getDataForEditmode
/**
* @see Object\ClassDefinition\Data::getDataForEditmode
* @param Asset|Document|Object\AbstractObject $data
* @param null|Model\Object\AbstractObject $object
* @param mixed $params
* @return array
*/
public function getDataForEditmode($data, $object = null, $params = [])
{
if ($data instanceof Element\ElementInterface) {
$r = ["id" => $data->getId(), "path" => $data->getRealFullPath(), "subtype" => $data->getType(), "type" => Element\Service::getElementType($data)];
return $r;
}
return;
}
示例5: getDependencyForFrontend
/**
* @param Document|Asset|Object\AbstractObject $element
* @return array
*/
public static function getDependencyForFrontend($element)
{
if ($element instanceof ElementInterface) {
return ["id" => $element->getId(), "path" => $element->getRealFullPath(), "type" => self::getElementType($element), "subtype" => $element->getType()];
}
}