IconController.php 1016 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. namespace App\Api\v1\Controllers;
  3. use Illuminate\Http\Request;
  4. use Illuminate\Support\Facades\Storage;
  5. use App\Http\Controllers\Controller;
  6. class IconController extends Controller
  7. {
  8. /**
  9. * Handle uploaded icon image
  10. *
  11. * @param \Illuminate\Http\Request $request
  12. * @return \Illuminate\Http\JsonResponse
  13. */
  14. public function upload(Request $request)
  15. {
  16. $this->validate($request, [
  17. 'icon' => 'required|image',
  18. ]);
  19. $path = $request->file('icon')->store('public/icons');
  20. $path = $request->file('icon')->store('', 'icons');
  21. $response['filename'] = pathinfo($path)['basename'];
  22. return response()->json($response, 201);
  23. }
  24. /**
  25. * delete an icon
  26. *
  27. * @param \Illuminate\Http\Request $request
  28. * @return \Illuminate\Http\JsonResponse
  29. */
  30. public function delete($icon)
  31. {
  32. Storage::disk('icons')->delete($icon);
  33. return response()->json(null, 204);
  34. }
  35. }