コード例 #1
0
ファイル: urlmanager.php プロジェクト: mrdeadmouse/u136006
 /**
  * Gets path to list where file or folder.
  * @param BaseObject $object Target file or folder.
  * @return string
  */
 public function getPathInListing(BaseObject $object)
 {
     if ($object->getStorage()->getRootObjectId() == $object->getId()) {
         return $object->getStorage()->getProxyType()->getBaseUrlFolderList();
     }
     $crumbs = implode('/', CrumbStorage::getInstance()->getByObject($object));
     if ($crumbs) {
         $crumbs .= '/';
     }
     return $object->getStorage()->getProxyType()->getBaseUrlFolderList() . $crumbs;
 }
コード例 #2
0
ファイル: indexmanager.php プロジェクト: DarneoStudio/bitrix
 /**
  * Changes index after rename.
  * @param BaseObject $object Target file or folder.
  * @throws \Bitrix\Main\LoaderException
  * @return void
  */
 public function changeName(BaseObject $object)
 {
     if (!Loader::includeModule('search')) {
         return;
     }
     //here we place configuration by Module (Options). Example, we can deactivate index for big files in Disk.
     if (!Configuration::allowIndexFiles()) {
         return;
     }
     $storage = $object->getStorage();
     if (!$storage) {
         return;
     }
     if (!$storage->getProxyType()->canIndexBySearch()) {
         return;
     }
     if ($object instanceof Folder) {
         $this->indexFolder($object);
     } elseif ($object instanceof File) {
         $this->indexFile($object);
     }
 }
コード例 #3
0
ファイル: crumbstorage.php プロジェクト: DarneoStudio/bitrix
 protected function calculateCrumb(BaseObject $object)
 {
     $parentId = $object->getParentId();
     if (!$parentId) {
         $this->crumbsByObjectId[$object->getId()] = array($object->getName());
         return $this->crumbsByObjectId[$object->getId()];
     }
     if (isset($this->crumbsByObjectId[$parentId])) {
         $this->crumbsByObjectId[$object->getId()] = $this->crumbsByObjectId[$parentId];
         $this->crumbsByObjectId[$object->getId()][] = $object->getName();
         return $this->crumbsByObjectId[$object->getId()];
     }
     $storage = $object->getStorage();
     $fake = Driver::getInstance()->getFakeSecurityContext();
     $this->crumbsByObjectId[$object->getId()] = array();
     foreach ($object->getParents($fake, array('select' => array('ID', 'NAME', 'TYPE')), SORT_DESC) as $parent) {
         if ($parent->getId() == $storage->getRootObjectId()) {
             continue;
         }
         $this->crumbsByObjectId[$object->getId()][] = $parent->getName();
     }
     unset($parent);
     $this->crumbsByObjectId[$parentId] = $this->crumbsByObjectId[$object->getId()];
     $this->crumbsByObjectId[$object->getId()][] = $object->getName();
     return $this->crumbsByObjectId[$object->getId()];
 }