Add new config

This commit is contained in:
Daniel Supernault 2019-06-17 22:15:36 -06:00
parent 36e15a52e4
commit 25d632c761
No known key found for this signature in database
GPG key ID: 0DEF1C662C9033F7
2 changed files with 28 additions and 9 deletions

View file

@ -57,21 +57,21 @@ class Image
} }
if ($thumbnail) { if ($thumbnail) {
return [ return [
'dimensions' => $this->thumbnail, 'dimensions' => $this->thumbnail,
'orientation' => 'thumbnail', 'orientation' => 'thumbnail',
]; ];
} }
list($width, $height) = getimagesize($mediaPath); list($width, $height) = getimagesize($mediaPath);
$aspect = $width / $height; $aspect = $width / $height;
$orientation = $aspect === 1 ? 'square' : $orientation = $aspect === 1 ? 'square' :
($aspect > 1 ? 'landscape' : 'portrait'); ($aspect > 1 ? 'landscape' : 'portrait');
$this->orientation = $orientation; $this->orientation = $orientation;
return [ return [
'dimensions' => $this->orientations()[$orientation], 'dimensions' => $this->orientations()[$orientation],
'orientation' => $orientation, 'orientation' => $orientation,
]; ];
} }
public function resizeImage(Media $media) public function resizeImage(Media $media)
@ -116,11 +116,14 @@ class Image
$constraint->aspectRatio(); $constraint->aspectRatio();
}); });
} else { } else {
$metadata = $img->exif(); if(config('media.exif.database', false) == true) {
$metadata = $img->exif();
$media->metadata = json_encode($metadata);
}
$img->resize($aspect['width'], $aspect['height'], function ($constraint) { $img->resize($aspect['width'], $aspect['height'], function ($constraint) {
$constraint->aspectRatio(); $constraint->aspectRatio();
}); });
$media->metadata = json_encode($metadata);
} }
$converted = $this->setBaseName($path, $thumbnail, $img->extension); $converted = $this->setBaseName($path, $thumbnail, $img->extension);
$newPath = storage_path('app/'.$converted['path']); $newPath = storage_path('app/'.$converted['path']);
@ -141,6 +144,7 @@ class Image
} }
$media->save(); $media->save();
Cache::forget('status:transformer:media:attachments:'.$media->status_id);
Cache::forget('status:thumb:'.$media->status_id); Cache::forget('status:thumb:'.$media->status_id);
} catch (Exception $e) { } catch (Exception $e) {
} }

15
config/media.php Normal file
View file

@ -0,0 +1,15 @@
<?php
return [
'exif' => [
'database' => env('MEDIA_EXIF_DATABASE', false),
'strip' => true
],
'types' => env('MEDIA_TYPES', 'image/jpeg,image/png,image/gif'),
'photo' => [
'optimize' => env('PF_OPTIMIZE_IMAGES', true),
'quality' => (int) env('IMAGE_QUALITY', 80),
'max_size' => env('MAX_PHOTO_SIZE', 15000),
'max_album_length' => env('MAX_ALBUM_LENGTH', 4),
],
];