SettingsController.php 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <?php
  2. namespace App\Http\Controllers\Admin;
  3. use App\Http\Controllers\Controller;
  4. use Illuminate\Contracts\Foundation\Application;
  5. use Illuminate\Contracts\View\Factory;
  6. use Illuminate\Contracts\View\View;
  7. use Illuminate\Http\Request;
  8. use Illuminate\Http\Response;
  9. use Illuminate\Support\Facades\Storage;
  10. class SettingsController extends Controller
  11. {
  12. /**
  13. * Display a listing of the resource.
  14. *
  15. * @return Application|Factory|View|Response
  16. */
  17. public function index()
  18. {
  19. return view('admin.settings.index');
  20. }
  21. public function updateIcons(Request $request){
  22. $request->validate([
  23. 'favicon' => 'required',
  24. 'icon' => 'required',
  25. ]);
  26. //store favicon
  27. $favicon = $request->input('favicon');
  28. $favicon = json_decode($favicon);
  29. $favicon = explode(",",$favicon->output->image)[1];
  30. Storage::disk('public')->put('favicon.ico' , base64_decode($favicon));
  31. //store dashboard icon
  32. $icon = $request->input('icon');
  33. $icon = json_decode($icon);
  34. $icon = explode(",",$icon->output->image)[1];
  35. Storage::disk('public')->put('icon.png' , base64_decode($icon));
  36. return redirect()->route('admin.settings.index')->with('success', 'Icons updated!');
  37. }
  38. }