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

@@ -8,17 +8,15 @@ class SaleController extends Controller
{
public function index()
{
$sales = Cache::remember('sales_data', 60 * 60 * 8, function () {
$sales = Cache::remember('sales_data', 60 * 60 * 8, static function () {
$shopData = json_decode(
file_get_contents('https://api.shop.riotgames.com/v3/collections/'),
true
);
$salesData = array_filter($shopData, function ($collection) {
return $collection['path'] === '/event/sales';
});
$salesData = array_filter($shopData, static fn($collection) => $collection['path'] === '/event/sales');
return reset($salesData)['dynamicCollection']['discountedProductsByProductType'] ?? [];
});
return view('sales.index', compact('sales'));
return view('sales.index', ['sales' => $sales]);
}
}