From 2f0ed129f0e6be78d05c51195abc335542ecaf18 Mon Sep 17 00:00:00 2001 From: snipe Date: Tue, 4 Feb 2020 18:15:01 -0800 Subject: [PATCH] =?UTF-8?q?Use=20=E2=80=9Cinvalid=20barcode=E2=80=9D=20ima?= =?UTF-8?q?ge=20and=20suppress=20errors=20when=20barcode=20format=20is=20w?= =?UTF-8?q?rong?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/AssetsController.php | 21 ++++++++++++++++---- public/uploads/barcodes/invalid_barcode.gif | Bin 0 -> 1654 bytes 2 files changed, 17 insertions(+), 4 deletions(-) create mode 100644 public/uploads/barcodes/invalid_barcode.gif diff --git a/app/Http/Controllers/AssetsController.php b/app/Http/Controllers/AssetsController.php index fe8c2b4d0..c5388007c 100755 --- a/app/Http/Controllers/AssetsController.php +++ b/app/Http/Controllers/AssetsController.php @@ -326,7 +326,7 @@ class AssetsController extends Controller unlink(public_path().'/uploads/assets/'.$asset->image); $asset->image = ''; } catch (\Exception $e) { - \Log::info($e); + \Log::debug($e); } } @@ -505,6 +505,7 @@ class AssetsController extends Controller $barcode_file = public_path().'/uploads/barcodes/'.str_slug($settings->alt_barcode).'-'.str_slug($asset->asset_tag).'.png'; if (isset($asset->id, $asset->asset_tag)) { + if (file_exists($barcode_file)) { $header = ['Content-type' => 'image/png']; return response()->file($barcode_file, $header); @@ -513,10 +514,22 @@ class AssetsController extends Controller $barcode_width = ($settings->labels_width - $settings->labels_display_sgutter) * 96.000000000001; $barcode = new \Com\Tecnick\Barcode\Barcode(); - $barcode_obj = $barcode->getBarcodeObj($settings->alt_barcode,$asset->asset_tag,($barcode_width < 300 ? $barcode_width : 300),50); - file_put_contents($barcode_file, $barcode_obj->getPngData()); - return response($barcode_obj->getPngData())->header('Content-type', 'image/png'); + try { + + $barcode_obj = $barcode->getBarcodeObj($settings->alt_barcode,$asset->asset_tag,($barcode_width < 300 ? $barcode_width : 300),50); + + file_put_contents($barcode_file, $barcode_obj->getPngData()); + return response($barcode_obj->getPngData())->header('Content-type', 'image/png'); + + } catch (\Exception $e) { + \Log::debug('Error creating barcode: '.$e->getMessage()); + \Log::debug('This usually happens because the asset tags are of a format that is not compatible with the selected barcode type.'); + $img = file_get_contents(public_path().'/uploads/barcodes/invalid_barcode.gif'); + return response($img)->header('Content-type', 'image/gif'); + } + + } } } diff --git a/public/uploads/barcodes/invalid_barcode.gif b/public/uploads/barcodes/invalid_barcode.gif new file mode 100644 index 0000000000000000000000000000000000000000..6bbeed9b9eedb53ae6a34aceffc95282eebda3e2 GIT binary patch literal 1654 zcmZ?wbhEHbtYF|}*v!E2<;$1a+FBHY5gN(z}N zwo2iqz6QPp&Z!xh9#uuD!Bu`C$yM3OmMKd1b_zBXRu#Dgxv3?I3Kh9IdBs*0wn~X9 z`AMl(KsHENUr7P1q$Jx`$q^)>0J76LzbI9~RL@K|+0ev7!Q4{M(9FcZ*i1*k$iUE2 z-@roO&{)^N(8|Ef%G6u|3Y37h6{VzE1-ZCE?E>;_l`=|73as??%gf94%8m8%i_-NC zEiHj&80i}s=>k>g7FXt#Bv$C=6)VF`a7isrF3Kz@$;{7F0GXJWlwVq6s|0i@#0$9v zaAWg|^}ycIOU}>LuShJ=H`Fr#c?qV_*B8Ii++4Wo;*y|LgnO|XTpUtakg6Y)TAW{6 zl$;7wt_-rOz{L^Q!#e0{Av z^NLFn^O93NU2K(rhUjHxrdT;TI~rQJxR@Bbxf&Q6x;i=;I5}IoxH=h`I~uuI7@NcN zy5uL9=BDPA!1Sgd^qS(-3rY>S1wfl!Qj0RnQd8WD@^clyzP8H5?G_`P=0WwQ;C72K zPQCg-$LNFN7AdY_LcjzBV!~4{kONQqsd>NzUj$6qjQ{`r{qy_R&mZ5vef{$J)5j0* z-@SeF`qj%9&!0Vg^7zri2lwyYy>t84%^TORUA=Po(!~qs&z(JU`qar2$B!L7a`@1} z1N-;w-Lrew&K=vgZQZhY)5ZeMTG_VdAT{+S(zE>X{jm6Nr?&Z zaj`McQIQehVWAw3WhQ61`3eiIoBeCNut;bIs`FPfDXDQWu!IY7D!Xth%`FUYVwlZ0+cLP4k7*;{ z(zOwCi%i2@6*$(Yxvy|lvJKIFZ7GUQLX0Q|(+8H>qu7%|kDFKXZDQJ}o^|bD?n1jyE{R9;y_RpdB52z6;VARAjL$2p9YZ2EGqFCg z)d=W$s3}qL)$4~ykCU#m=j}(L3%Cn)QckvfaMi6?X_hjpjnzP5(f#}UvmG*oFC4fK zw3+|W)2RVrch!Jd;->I!{o@Y>IUZh6_~ypc^nz*G_OEiWj1yk-@k#u-cdq&3leM*3 fjg1bwc^SBQvR1BtJhQD_`os2vEY7!F85pbq5bS9E literal 0 HcmV?d00001