1
0

LandingController.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Http\Resources\DirectoryProfile;
  4. use App\Profile;
  5. use Illuminate\Http\Request;
  6. class LandingController extends Controller
  7. {
  8. public function directoryRedirect(Request $request)
  9. {
  10. if ($request->user()) {
  11. return redirect('/');
  12. }
  13. abort_if((bool) config_cache('instance.landing.show_directory') == false, 404);
  14. return view('site.index');
  15. }
  16. public function exploreRedirect(Request $request)
  17. {
  18. if ($request->user()) {
  19. return redirect('/');
  20. }
  21. abort_if((bool) config_cache('instance.landing.show_explore') == false, 404);
  22. return view('site.index');
  23. }
  24. public function getDirectoryApi(Request $request)
  25. {
  26. abort_if((bool) config_cache('instance.landing.show_directory') == false, 404);
  27. return DirectoryProfile::collection(
  28. Profile::whereNull('domain')
  29. ->whereIsSuggestable(true)
  30. ->orderByDesc('updated_at')
  31. ->cursorPaginate(20)
  32. );
  33. }
  34. }