本文整理汇总了PHP中Pimcore\Model\Asset::getRealFullPath方法的典型用法代码示例。如果您正苦于以下问题:PHP Asset::getRealFullPath方法的具体用法?PHP Asset::getRealFullPath怎么用?PHP Asset::getRealFullPath使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Pimcore\Model\Asset
的用法示例。
在下文中一共展示了Asset::getRealFullPath方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getChild
/**
* @param string $name
* @return DAV\INode|void
* @throws DAV\Exception\NotFound
*/
public function getChild($name)
{
$nameParts = explode("/", $name);
$name = File::getValidFilename($nameParts[count($nameParts) - 1]);
//$name = implode("/",$nameParts);
if (is_string($name)) {
$parentPath = $this->asset->getRealFullPath();
if ($parentPath == "/") {
$parentPath = "";
}
if (!($asset = Asset::getByPath($parentPath . "/" . $name))) {
throw new DAV\Exception\NotFound('File not found: ' . $name);
}
} elseif ($name instanceof Asset) {
$asset = $name;
}
if ($asset instanceof Asset) {
if ($asset->getType() == "folder") {
return new Asset\WebDAV\Folder($asset);
} else {
return new Asset\WebDAV\File($asset);
}
}
throw new DAV\Exception\NotFound('File not found: ' . $name);
}
示例2: delete
/**
* @throws DAV\Exception\Forbidden
* @throws \Exception
*/
public function delete()
{
if ($this->asset->isAllowed("delete")) {
Asset\Service::loadAllFields($this->asset);
$this->asset->delete();
// add the asset to the delete history, this is used so come over problems with programs like photoshop (delete, create instead of replace => move)
// for details see Asset\WebDAV\Tree::move()
$log = Asset\WebDAV\Service::getDeleteLog();
$this->asset->_fulldump = true;
$log[$this->asset->getRealFullPath()] = ["id" => $this->asset->getId(), "timestamp" => time(), "data" => \Pimcore\Tool\Serialize::serialize($this->asset)];
unset($this->asset->_fulldump);
Asset\WebDAV\Service::saveDeleteLog($log);
} else {
throw new DAV\Exception\Forbidden();
}
}
示例3: getSubAssetIds
private function getSubAssetIds(\Pimcore\Model\Asset $asset)
{
$childsList = new Pimcore\Model\Asset\Listing();
$condition = "path LIKE ?";
if (!$this->getUser()->isAdmin()) {
$userIds = $this->getUser()->getRoles();
$userIds[] = $this->getUser()->getId();
$condition .= " AND (\n (SELECT `view` FROM users_workspaces_asset WHERE userId IN (\" . implode(',', {$userIds}) . \") and LOCATE(CONCAT(path,filename),cpath)=1 ORDER BY LENGTH(cpath) DESC LIMIT 1)=1\n OR\n (SELECT `view` FROM users_workspaces_asset WHERE userId IN (\" . implode(',', {$userIds}) . \") and LOCATE(cpath,CONCAT(path,filename))=1 ORDER BY LENGTH(cpath) DESC LIMIT 1)=1\n )";
}
$childsList->setCondition($condition, $asset->getRealFullPath() . '/%');
return $childsList->loadIdList();
}
示例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()];
}
}