@@ -201,20 +201,20 @@ public function error($error_type, $variables = [])
201
201
public function upload ($ file )
202
202
{
203
203
$ this ->uploadValidator ($ file );
204
- $ new_filename = $ this ->getNewName ($ file );
205
- $ new_file_path = $ this ->setName ($ new_filename )->path ('absolute ' );
204
+ $ new_file_name = $ this ->getNewName ($ file );
205
+ $ new_file_path = $ this ->setName ($ new_file_name )->path ('absolute ' );
206
206
207
207
event (new ImageIsUploading ($ new_file_path ));
208
208
try {
209
- $ new_filename = $ this ->saveFile ($ file , $ new_filename );
209
+ $ new_file_name = $ this ->saveFile ($ file , $ new_file_name );
210
210
} catch (\Exception $ e ) {
211
211
\Log::info ($ e );
212
212
return $ this ->error ('invalid ' );
213
213
}
214
214
// TODO should be "FileWasUploaded"
215
215
event (new ImageWasUploaded ($ new_file_path ));
216
216
217
- return $ new_filename ;
217
+ return $ new_file_name ;
218
218
}
219
219
220
220
private function uploadValidator ($ file )
@@ -229,9 +229,9 @@ private function uploadValidator($file)
229
229
throw new \Exception ('File failed to upload. Error code: ' . $ file ->getError ());
230
230
}
231
231
232
- $ new_filename = $ this ->getNewName ($ file ) . '. ' . $ file ->getClientOriginalExtension ();
232
+ $ new_file_name = $ this ->getNewName ($ file ) . '. ' . $ file ->getClientOriginalExtension ();
233
233
234
- if ($ this ->setName ($ new_filename )->exists ()) {
234
+ if ($ this ->setName ($ new_file_name )->exists ()) {
235
235
return $ this ->error ('file-exist ' );
236
236
}
237
237
@@ -255,54 +255,48 @@ private function uploadValidator($file)
255
255
256
256
private function getNewName ($ file )
257
257
{
258
- $ new_filename = $ this ->helper ->translateFromUtf8 (trim (pathinfo ($ file ->getClientOriginalName (), PATHINFO_FILENAME )));
258
+ $ new_file_name = $ this ->helper ->translateFromUtf8 (trim (pathinfo ($ file ->getClientOriginalName (), PATHINFO_FILENAME )));
259
259
260
260
if (config ('
10000
lfm.rename_file ' ) === true ) {
261
- $ new_filename = uniqid ();
261
+ $ new_file_name = uniqid ();
262
262
} elseif (config ('lfm.alphanumeric_filename ' ) === true ) {
263
- $ new_filename = preg_replace ('/[^A-Za-z0-9\- \']/ ' , '_ ' , $ new_filename );
263
+ $ new_file_name = preg_replace ('/[^A-Za-z0-9\- \']/ ' , '_ ' , $ new_file_name );
264
264
}
265
265
266
266
$ extension = $ file ->getClientOriginalExtension ();
267
267
268
268
if ($ extension ) {
269
- $ new_filename .= '. ' . $ extension ;
269
+ $ new_file_name .= '. ' . $ extension ;
270
270
}
271
271
272
- return $ new_filename ;
272
+ return $ new_file_name ;
273
273
}
274
274
275
- private function saveFile ($ file , $ new_filename )
275
+ private function saveFile ($ file , $ new_file_name )
276
276
{
277
- $ should_create_thumbnail = $ this ->shouldCreateThumb ( $ file );
277
+ $ this ->setName ( $ new_file_name )-> storage -> save ( file_get_contents ( $ file) );
278
278
279
- $ this ->setName ( $ new_filename )-> thumb ( false )-> storage -> save ( file_get_contents ( $ file ) );
279
+ $ this ->makeThumbnail ( $ new_file_name );
280
280
281
- if ($ should_create_thumbnail ) {
282
- $ this ->makeThumbnail ($ new_filename );
283
- }
284
-
285
- return $ new_filename ;
281
+ return $ new_file_name ;
286
282
}
287
283
288
- public function makeThumbnail ($ filename )
284
+ public function makeThumbnail ($ file_name )
289
285
{
286
+ $ original_image = $ this ->pretty ($ file_name );
287
+
288
+ if (!$ original_image ->shouldCreateThumb ()) {
289
+ return ;
290
+ }
291
+
290
292
// create folder for thumbnails
291
293
$ this ->setName (null )->thumb (true )->createFolder ();
292
294
293
- $ image_content = $ this ->thumb (false )->setName ($ filename )->get ();
294
-
295
- // generate cropped thumbnail
296
- $ image = Image::make ($ image_content )
295
+ // generate cropped image content
296
+ $ image_content = Image::make ($ original_image ->get ())
297
297
->fit (config ('lfm.thumb_img_width ' , 200 ), config ('lfm.thumb_img_height ' , 200 ))
298
298
->encode ();
299
299
300
- $ this ->setName ($ filename )->thumb (true )->storage ->save ($ image );
301
- }
302
-
303
- private function shouldCreateThumb ($ file )
304
- {
305
- return starts_with ($ file ->getMimeType (), 'image ' )
306
- && !in_array ($ file ->getMimeType (), ['image/gif ' , 'image/svg+xml ' ]);
300
+ $ this ->setName ($ file_name )->thumb (true )->storage ->save ($ image_content );
307
301
}
308
302
}
0 commit comments