getRealFullPath() 공개 메소드

Returns the full real path of the document.
public getRealFullPath ( ) : string
리턴 string
예제 #1
0
 /**
  * @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
0
 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
0
 /**
  * @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
0
파일: Href.php 프로젝트: pimcore/pimcore
 /**
  * @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
파일: Service.php 프로젝트: pimcore/pimcore
 /**
  * @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()];
     }
 }