LandingController.php 1016 B

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