Champion::orderBy('name')->get()); $roles = Cache::remember('championsRolesCache', $eightHoursInSeconds, static fn() => ChampionRoles::orderBy('champion_name')->get()); return view('champions.index', ['champions' => $champions, 'roles' => $roles]); } /** * Show the form for creating a new resource. */ public function create() { // } /** * Store a newly created resource in storage. */ public function store(StoreChampionRequest $request) { // } /** * Display the specified resource. */ public function show(Champion $champion) { $threeDaysInSeconds = 60 * 60 * 24 * 3; $sixMonthsInSeconds = 60 * 60 * 24 * 30 * 6; $champion = Cache::remember('championShowCache' . $champion->slug, $threeDaysInSeconds, static fn() => $champion->load('skins', 'lanes')); $splashColor = Cache::remember( 'championSplashColorCache' . $champion->slug, $sixMonthsInSeconds, static fn() => getAverageColorFromImageUrl($champion->getChampionImageAttribute()) ); $champion->splash_color = $splashColor; return view('champions.show', ['champion' => $champion]); } /** * Show the form for editing the specified resource. */ public function edit(Champion $champion) { // } /** * Update the specified resource in storage. */ public function update(UpdateChampionRequest $request, Champion $champion) { // } /** * Remove the specified resource from storage. */ public function destroy(Champion $champion) { // } }