getRealFullPath() публичный Метод

public getRealFullPath ( ) : string
Результат string
Пример #1
0
 /**
  * @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
0
 /**
  * @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
0
 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
0
 /**
  * @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
0
 /**
  * @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()];
     }
 }