Skip to content
This repository was archived by the owner on Sep 11, 2024. It is now read-only.

Commit 2c1dd3a

Browse files
committed
ImageResizer With Blob
1 parent 928d51e commit 2c1dd3a

File tree

1 file changed

+30
-9
lines changed

1 file changed

+30
-9
lines changed

src/ImageType.php

Lines changed: 30 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -244,6 +244,24 @@ public function temporaryUrl(string $filename = null, $sizes = [], $expirationTi
244244
return $urls;
245245
}
246246

247+
public function blob(string $filename, $size = null)
248+
{
249+
$output = null;
250+
251+
if (empty($size) || $size === 'original') {
252+
$output = $this->typeConfig->get('original')['path'] . '/' . $filename;
253+
} else {
254+
$configSizes = $this->typeConfig->get('sizes');
255+
256+
if (isset($configSizes[$size])) {
257+
$filename = pathinfo($filename);
258+
$output = $this->output($filename, $size, $configSizes[$size]);
259+
}
260+
}
261+
262+
return $output;
263+
}
264+
247265
public function defaultUrl($sizes = [])
248266
{
249267
$urls = [];
@@ -270,16 +288,10 @@ public function defaultUrl($sizes = [])
270288

271289
protected function imageUrl($filename, $size, $dimensions)
272290
{
273-
if ($dimensions['extension'] === null) $dimensions['extension'] = $filename['extension'];
274-
275-
$fileSuffix = NULL;
276-
if ($this->baseFileSuffix) {
277-
$fileSuffix = "-{$dimensions['width']}x{$dimensions['height']}";
278-
}
279-
280-
$output = $this->typeConfig->get('base')['path']."/{$size}/{$filename['filename']}{$fileSuffix}.{$dimensions['extension']}";
291+
$output = $this->output($filename, $size, $dimensions);
281292

282293
$storage = Storage::disk($this->baseFileDisk);
294+
283295
if ($this->baseDiskConfig['driver'] === 'local' || empty($this->typeConfig->get('base')['private'])) {
284296
return $storage->url($output);
285297
} else {
@@ -288,15 +300,24 @@ protected function imageUrl($filename, $size, $dimensions)
288300
}
289301

290302
protected function temporaryImageUrl($filename, $size, $dimensions)
303+
{
304+
$output = $this->output($filename, $size, $dimensions);
305+
306+
return Storage::disk($this->baseFileDisk)->temporaryUrl($output, Carbon::now()->addMinutes($this->expirationTime));
307+
}
308+
309+
protected function output($filename, $size, $dimensions)
291310
{
292311
if ($dimensions['extension'] === null) $dimensions['extension'] = $filename['extension'];
293312

294313
$fileSuffix = NULL;
314+
295315
if ($this->baseFileSuffix) {
296316
$fileSuffix = "-{$dimensions['width']}x{$dimensions['height']}";
297317
}
298318

299319
$output = $this->typeConfig->get('base')['path']."/{$size}/{$filename['filename']}{$fileSuffix}.{$dimensions['extension']}";
300-
return Storage::disk($this->baseFileDisk)->temporaryUrl($output, Carbon::now()->addMinutes($this->expirationTime));
320+
321+
return $output;
301322
}
302323
}

0 commit comments

Comments
 (0)