Skip to content

Commit 989e7c4

Browse files
committed
refine media preview handling
1 parent 725271b commit 989e7c4

File tree

3 files changed

+6
-30
lines changed

3 files changed

+6
-30
lines changed

src/FileManipulator.php

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@
66
use Illuminate\Support\Facades\Storage;
77
use Imahmood\FileStorage\Config\Configuration;
88
use Imahmood\FileStorage\Exceptions\NotWritableException;
9+
use Imahmood\FileStorage\Exceptions\PersistenceFailedException;
910
use Imahmood\FileStorage\Models\Media;
1011
use Jcupitt\Vips\Image as VipsImage;
1112

1213
class FileManipulator
1314
{
1415
public function __construct(
15-
private readonly FileStorage $fileStorage,
1616
private readonly Configuration $config,
1717
) {
1818
}
@@ -45,15 +45,17 @@ public function generatePreview(Media $media): void
4545
return;
4646
}
4747

48-
$previewName = $this->generatePreviewName($media->file_name);
48+
$media->preview = $this->generatePreviewName($media->file_name);
4949

5050
$this->resizeImage(
5151
media: $media,
52-
targetFile: $media->dir_relative_path.$previewName,
52+
targetFile: $media->dir_relative_path.$media->preview,
5353
maxDimension: $this->config->previewDimension,
5454
);
5555

56-
$this->fileStorage->updatePreviewName($media, $previewName);
56+
if (! $media->save()) {
57+
throw new PersistenceFailedException();
58+
}
5759
}
5860

5961
protected function generatePreviewName(string $fileName): string

src/FileStorage.php

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -107,20 +107,6 @@ public function updateOrCreate(
107107
return $this->create($type, $relatedTo, $uploadedFile);
108108
}
109109

110-
/**
111-
* @throws \Imahmood\FileStorage\Exceptions\PersistenceFailedException
112-
*/
113-
public function updatePreviewName(Media $media, string $fileName): Media
114-
{
115-
$media->preview = $fileName;
116-
117-
if (! $media->save()) {
118-
throw new PersistenceFailedException();
119-
}
120-
121-
return $media;
122-
}
123-
124110
/**
125111
* @throws \Imahmood\FileStorage\Exceptions\PersistenceFailedException
126112
*/

tests/FileStorageTest.php

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -88,18 +88,6 @@ public function testUpdateMedia(): void
8888
]);
8989
}
9090

91-
public function testUpdatePreviewName(): void
92-
{
93-
/** @var \Imahmood\FileStorage\Models\Media $originalMedia */
94-
$originalMedia = Media::factory()->create();
95-
96-
$updatedMedia = $this->fileStorage->updatePreviewName(clone $originalMedia, 'random-name.jpg');
97-
98-
$this->assertSame($updatedMedia->file_name, $originalMedia->file_name);
99-
$this->assertSame($updatedMedia->preview, 'random-name.jpg');
100-
$this->assertSame($updatedMedia->type, $originalMedia->type);
101-
}
102-
10391
public function testDeleteMedia(): void
10492
{
10593
/** @var \Imahmood\FileStorage\Models\Media $media */

0 commit comments

Comments
 (0)