/**
  * @inheritDoc BaseAssetSourceType::getNameReplacementInFolder()
  *
  * @param AssetFolderModel $folder
  * @param string           $fileName
  *
  * @return mixed
  */
 protected function getNameReplacementInFolder(AssetFolderModel $folder, $fileName)
 {
     $prefix = $this->_getPathPrefix() . $folder->path;
     $this->_prepareForRequests();
     $fileList = $this->_s3->getBucket($this->getSettings()->bucket, $prefix);
     foreach ($fileList as &$file) {
         $file = preg_replace('/^' . preg_quote($prefix, '/') . '/', '', $file['name']);
     }
     // Drop all the paths that have subfolders.
     $fileList = array_filter($fileList, function ($file) {
         return !(strpos($file, '/') !== false || empty($file));
     });
     return AssetsHelper::getFilenameReplacement($fileList, $fileName);
 }
Esempio n. 2
0
 /**
  * @inheritDoc BaseAssetSourceType::getNameReplacementInFolder()
  *
  * @param AssetFolderModel $folder
  * @param string           $fileName
  *
  * @return string
  */
 protected function getNameReplacementInFolder(AssetFolderModel $folder, $fileName)
 {
     $fileList = IOHelper::getFolderContents($this->getSourceFileSystemPath() . $folder->path, false);
     if (is_array($fileList)) {
         foreach ($fileList as &$file) {
             $file = IOHelper::getFileName($file);
         }
     } else {
         throw new Exception(Craft::t('The folder “{folder}” cannot be read.', array('folder' => $this->getSourceFileSystemPath() . $folder->path)));
     }
     return AssetsHelper::getFilenameReplacement($fileList, $fileName);
 }
 /**
  * @inheritDoc BaseAssetSourceType::getNameReplacementInFolder()
  *
  * @param AssetFolderModel $folder
  * @param string           $fileName
  *
  * @return string
  */
 protected function getNameReplacementInFolder(AssetFolderModel $folder, $fileName)
 {
     $fileList = IOHelper::getFolderContents($this->getSourceFileSystemPath() . $folder->path, false);
     foreach ($fileList as &$file) {
         $file = IOHelper::getFileName($file);
     }
     return AssetsHelper::getFilenameReplacement($fileList, $fileName);
 }
 /**
  * @inheritDoc BaseAssetSourceType::getNameReplacementInFolder()
  *
  * @param AssetFolderModel $folder
  * @param string           $fileName
  *
  * @return string
  */
 protected function getNameReplacementInFolder(AssetFolderModel $folder, $fileName)
 {
     $baseFileName = IOHelper::getFileName($fileName, false);
     $prefix = $this->_getPathPrefix() . $folder->path;
     $fileList = $this->_getFileList($prefix . $baseFileName);
     foreach ($fileList as &$file) {
         $file = preg_replace('/^' . preg_quote($prefix, '/') . '/', '', $file->name);
     }
     // Drop all the paths that have subfolders.
     $fileList = array_filter($fileList, function ($file) {
         return !(strpos($file, '/') !== false || empty($file));
     });
     return AssetsHelper::getFilenameReplacement($fileList, $fileName);
 }