getDiskPath() public method

Get the path to the file relative to the root of the disk.
public getDiskPath ( ) : string
return string
Example #1
0
 /**
  * Move the file to a new location on disk.
  *
  * Will invoke the `save()` method on the model after the associated file has been moved to prevent synchronization errors
  * @param  \Plank\Mediable\Media $media
  * @param  string                $directory directory relative to disk root
  * @param  string                $name      filename. Do not include extension
  * @return void
  * @throws \Plank\Mediable\Exceptions\MediaMoveException If attempting to change the file extension or a file with the same name already exists at the destination
  */
 public function move(Media $media, $directory, $filename = null)
 {
     $storage = $this->filesystem->disk($media->disk);
     if ($filename) {
         $filename = $this->removeExtensionFromFilename($filename, $media->extension);
     } else {
         $filename = $media->filename;
     }
     $directory = trim($directory, '/');
     $target_path = $directory . '/' . $filename . '.' . $media->extension;
     if ($storage->has($target_path)) {
         throw MediaMoveException::destinationExists($target_path);
     }
     $storage->move($media->getDiskPath(), $target_path);
     $media->filename = $filename;
     $media->directory = $directory;
     $media->save();
 }
Example #2
0
 protected function seedFileForMedia(Media $media, $contents = '')
 {
     app('filesystem')->disk($media->disk)->put($media->getDiskPath(), $contents);
 }
Example #3
0
 /**
  * Decide what to do about duplicated files.
  * @param  \Plank\Mediable\Media  $model
  * @return void
  * @throws \Plank\Mediable\Exceptions\MediaUpload\FileExistsException If directory is not writable or file already exists at the destination and on_duplicate is set to 'error'
  */
 private function handleDuplicate(Media $model)
 {
     switch ($this->config['on_duplicate']) {
         case static::ON_DUPLICATE_ERROR:
             throw FileExistsException::fileExists($model->getDiskPath());
             break;
         case static::ON_DUPLICATE_REPLACE:
             $this->deleteExistingMedia($model);
             break;
         case static::ON_DUPLICATE_INCREMENT:
         default:
             $model->filename = $this->generateUniqueFilename($model);
     }
 }