diff --git a/app/Classes/Service/Base64Uploader.php b/app/Classes/Service/Base64Uploader.php new file mode 100644 index 00000000..17d889e3 --- /dev/null +++ b/app/Classes/Service/Base64Uploader.php @@ -0,0 +1,48 @@ +getFileType($base64Image); + + $extension = $this->getExtension($base64Image, $type); + + $uniqueName = uniqid('img_').time(); + + $imagePath = $path.'/'.$uniqueName.'.'.$extension; + + $encodedExtension = $extension; + + if($extension === 'xlsx'){ + $encodedExtension = 'vnd.openxmlformats-officedocument.spreadsheetml.sheet'; + } + $data = base64_decode(str_replace(' ', '+', str_replace('data:'.$type.'/'.$encodedExtension.';base64,', '', $base64Image))); + + Storage::disk('public')->put($imagePath, $data); + + return $uniqueName.'.'.$extension; + + } + + } + + private function getFileType(string $base64Image){ + return explode('/', explode(':', substr($base64Image, 0, strpos($base64Image, ';')))[1])[0]; + } + + private function getExtension(string $base64Image, string $type) { + $extension = explode('/', explode(':', substr($base64Image, 0, strpos($base64Image, ';')))[1])[1]; + + if($extension === 'vnd.openxmlformats-officedocument.spreadsheetml.sheet'){ + return 'xlsx'; + } + + return $extension; + } +} \ No newline at end of file diff --git a/storageuser_bankslipbank_slip_813aa7bd1db282d354a8bcf58b03176f b/storageuser_bankslipbank_slip_813aa7bd1db282d354a8bcf58b03176f new file mode 100644 index 00000000..36f0762b Binary files /dev/null and b/storageuser_bankslipbank_slip_813aa7bd1db282d354a8bcf58b03176f differ diff --git a/storageuser_bankslipbank_slip_9fdc36e2412f08c57d3327b1e3ab3396 b/storageuser_bankslipbank_slip_9fdc36e2412f08c57d3327b1e3ab3396 new file mode 100644 index 00000000..36f0762b Binary files /dev/null and b/storageuser_bankslipbank_slip_9fdc36e2412f08c57d3327b1e3ab3396 differ diff --git a/storageuser_bankslipbank_slip_b9bf3301430a94062b19a19df9025a17 b/storageuser_bankslipbank_slip_b9bf3301430a94062b19a19df9025a17 new file mode 100644 index 00000000..36f0762b Binary files /dev/null and b/storageuser_bankslipbank_slip_b9bf3301430a94062b19a19df9025a17 differ diff --git a/storageuser_bankslipbank_slip_d9ed2e9ebbfa938018203a4cf73bd6b3 b/storageuser_bankslipbank_slip_d9ed2e9ebbfa938018203a4cf73bd6b3 new file mode 100644 index 00000000..36f0762b Binary files /dev/null and b/storageuser_bankslipbank_slip_d9ed2e9ebbfa938018203a4cf73bd6b3 differ