From a48ea6e42fdc3b1dc2c8e151d0ac9031a5793986 Mon Sep 17 00:00:00 2001 From: Rico van Zelst Date: Fri, 16 Feb 2024 01:41:06 +0100 Subject: [PATCH] feat(home): update upcoming and latest skins display - Updated the query in HomeController@index to filter upcoming skins based on release date. - Updated the query in HomeController@index to filter latest skins based on release date. - Added links to champion details page for each champion in list_all.blade.php. - Added links to skin details page for each skin in recent_skins.blade.php and upcoming_skins.blade.php. --- app/Http/Controllers/HomeController.php | 5 +- .../components/champions/list_all.blade.php | 21 ++++---- .../components/home/recent_skins.blade.php | 27 ++++++---- .../components/home/upcoming_skins.blade.php | 33 +++++++----- .../components/skins/paginatedlist.blade.php | 54 +++++++++---------- 5 files changed, 78 insertions(+), 62 deletions(-) diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php index 3cb2694..3588889 100644 --- a/app/Http/Controllers/HomeController.php +++ b/app/Http/Controllers/HomeController.php @@ -10,10 +10,11 @@ class HomeController extends Controller public function index() { $upcomingSkins = Cache::remember('upcomingSkins_home', 60 * 4, static fn () => ChampionSkin::where('availability', 'Upcoming') + ->where('release_date', '0000-00-00') ->orderBy('release_date', 'desc')->get()); - $latestSkins = Cache::remember('latestSkins_home', 60 * 4, static fn () => ChampionSkin::where('availability', 'Available') - ->orderBy('release_date', 'desc')->take(9)->get()); + $latestSkins = Cache::remember('latestSkins_home', 60 * 4, static fn () => ChampionSkin::where('release_date', '!=', '0000-00-00') + ->orderBy('release_date', 'desc')->get()); return view('home', [ 'latestSkins' => $latestSkins, diff --git a/resources/views/components/champions/list_all.blade.php b/resources/views/components/champions/list_all.blade.php index 97ce3e8..ddead72 100644 --- a/resources/views/components/champions/list_all.blade.php +++ b/resources/views/components/champions/list_all.blade.php @@ -5,39 +5,42 @@ ?>

+ class="text-3xl font-bold text-center text-transparent uppercase sm:text-4xl bg-gradient-to-bl from-orange-300 to-orange-500 bg-clip-text"> Champions

-
-
+
+
@foreach($champions as $key => $champion)
+ class="mx-4 mt-4 overflow-hidden border-2 h-52 rounded-2xl bg-clip-border border-orange-400/40"> + {{ $champion->name }} Splash Art +

+ {{ $champion->name }} +

{{ $champion->title }}
-

+

@foreach($roles[$key]->roles as $lane) {{$lane}} @@ -46,12 +49,12 @@ @if($key < 8) loading="auto" @else loading="lazy" @endif src="{{getRoleIcon($lane)}}" alt="{{$lane}} Icon" - class="w-7 h-7 mr-1"> + class="mr-1 w-7 h-7">

@endforeach -
-

+

+

diff --git a/resources/views/components/home/recent_skins.blade.php b/resources/views/components/home/recent_skins.blade.php index 93c3334..03f33d4 100644 --- a/resources/views/components/home/recent_skins.blade.php +++ b/resources/views/components/home/recent_skins.blade.php @@ -1,6 +1,7 @@ @php use Carbon\Carbon; @endphp +/** @var App\Models\ChampionSkin $skin */ +?>

@@ -18,14 +19,18 @@ @foreach ($latestSkins as $skin) @if ($loop->index < 6)
+ class="p-8 transition border shadow-xl bg-stone-800/40 border-stone-800 rounded-xl hover:border-orange-500/10 hover:shadow-orange-500/10">
- {{ $skin->skin_name }} Splash Art + + {{ $skin->skin_name }} Splash Art +
-

{{ $skin->skin_name }}

+

{{ $skin->skin_name }} +

Released {{ Carbon::parse($skin->release_date)->diffForHumans([ 'parts' => 2, @@ -33,28 +38,28 @@ ]) }}

- @foreach($skin->associated_skinline as $skinline) + @foreach ($skin->associated_skinline as $skinline) Associated Skinline: - {{$skinline}} + {{ $skinline }} @endforeach

@if ($skin->rp_price == '99999') Not Available for RP @else - + {{ $skin->rp_price }} RP @endif

@if ($skin->loot_eligible) -

- +

+ Can be obtained from loot

@endif diff --git a/resources/views/components/home/upcoming_skins.blade.php b/resources/views/components/home/upcoming_skins.blade.php index 43808f2..a39f0ab 100644 --- a/resources/views/components/home/upcoming_skins.blade.php +++ b/resources/views/components/home/upcoming_skins.blade.php @@ -1,6 +1,7 @@ @php use Carbon\Carbon; @endphp +/** @var App\Models\ChampionSkin $skin */ +?>
@@ -11,31 +12,37 @@

Check out upcoming skins in League of Legends.
- Data is sourced from the LoL Wiki, ran by volunteers.
+ Data is sourced from the LoL + Wiki, ran by volunteers.
We cannot guarantee its real-time accuracy.

@foreach ($upcomingSkins as $skin)
+ class="p-8 transition border shadow-xl bg-stone-800/40 border-stone-800 rounded-xl hover:border-orange-500/10 hover:shadow-orange-500/10">
- {{ $skin->skin_name }} Splash Art + + {{ $skin->skin_name }} Splash Art +
-

{{ $skin->skin_name }}

+

{{ $skin->skin_name }}

Associated Skinline: - @foreach($skin->associated_skinline as $skinline) + @foreach ($skin->associated_skinline as $skinline) - {{$skinline}} + {{ $skinline }} @endforeach
@@ -43,14 +50,14 @@ @if ($skin->rp_price == '99999') Not Available for RP @else - + {{ $skin->rp_price }} RP @endif

@if ($skin->loot_eligible) -

- +

+ Can be obtained from loot

@endif diff --git a/resources/views/components/skins/paginatedlist.blade.php b/resources/views/components/skins/paginatedlist.blade.php index c3f0c2d..111f65e 100644 --- a/resources/views/components/skins/paginatedlist.blade.php +++ b/resources/views/components/skins/paginatedlist.blade.php @@ -1,61 +1,61 @@ +/** @var App\Models\ChampionSkin $skin */ +?>

+ class="text-3xl font-bold text-center text-transparent uppercase sm:text-4xl bg-gradient-to-bl from-orange-300 to-orange-500 bg-clip-text"> Champion Skins

- +
-
-
+
+
- @foreach($skins as $key => $skin) + @foreach ($skins as $key => $skin)
+ class="flex flex-col text-gray-700 border shadow-md champ-card bg-stone-800/40 rounded-2xl bg-clip-border border-stone-800 hover:border-orange-500/10 hover:shadow-orange-500/10"> - @if($skin->associated_skinline != null) -
- @foreach($skin->associated_skinline as $skinline) + @if ($skin->associated_skinline != null) +
+ @foreach ($skin->associated_skinline as $skinline) Associated Skinline: - {{$skinline}} + {{ $skinline }} @endforeach
@endif -
- {{ $skin->skin_name }} Splash Art +

- {{ $skin->skin_name }} + + {{ $skin->skin_name }} +

- {{$skin->rarity}} + {{ $skin->rarity }}
-