feat(controllers): optimize caching and view data passing

- Refactored the ChampionController, ChampionSkinController, HomeController, SaleController, SummonerEmoteController, and SummonerIconController to use arrow functions for cache callbacks.
- Updated the view data passing in the ChampionController, ChampionSkinController, HomeController, PostsController, SaleController, SummonerEmoteController, and SummonerIconController to use associative arrays instead of compact().
- Removed unused imports from web.php.
This commit is contained in:
Rico van Zelst
2024-01-06 00:15:19 +01:00
parent 3717d3836e
commit 85e3c4ff2e
8 changed files with 43 additions and 87 deletions

View File

@@ -30,7 +30,7 @@ class ChampionSkinController extends Controller
'Ultimate' => 'text-yellow-400',
];
return view('skins.index', compact('skins', 'rarityColor'));
return view('skins.index', ['skins' => $skins, 'rarityColor' => $rarityColor]);
}
/**
@@ -57,22 +57,18 @@ class ChampionSkinController extends Controller
$skin = Cache::remember(
'championSkinShowCache' . $championSkin->slug,
60 * 60 * 8,
function () use ($championSkin) {
return $championSkin->load('champion', 'chromas');
}
static fn() => $championSkin->load('champion', 'chromas')
);
$splashColor = Cache::remember(
'championSkinSplashColorCache' . $championSkin->slug,
60 * 60 * 24,
function () use ($championSkin) {
return getAverageColorFromImageUrl($championSkin->getSkinImageAttribute());
}
static fn() => getAverageColorFromImageUrl($championSkin->getSkinImageAttribute())
);
$skin->splash_color = $splashColor;
return view('skins.show', compact('skin'));
return view('skins.show', ['skin' => $skin]);
}
/**