diff --git a/app/Http/Controllers/ChampionSkinController.php b/app/Http/Controllers/ChampionSkinController.php index 4deb79a..06fdc6f 100644 --- a/app/Http/Controllers/ChampionSkinController.php +++ b/app/Http/Controllers/ChampionSkinController.php @@ -5,6 +5,7 @@ namespace App\Http\Controllers; use App\Http\Requests\StoreChampionSkinRequest; use App\Http\Requests\UpdateChampionSkinRequest; use App\Models\ChampionSkin; +use Illuminate\Support\Facades\Cache; class ChampionSkinController extends Controller { @@ -13,7 +14,11 @@ class ChampionSkinController extends Controller */ public function index() { - // + $skins = Cache::remember('championSkinsListAllCache' . request('page', 1), 60 * 60 * 8, function () { + return ChampionSkin::orderBy('id')->paginate(16); + }); + + return view('skins.index', compact('skins')); } /** diff --git a/app/Models/ChampionSkin.php b/app/Models/ChampionSkin.php index 68b5933..39649af 100644 --- a/app/Models/ChampionSkin.php +++ b/app/Models/ChampionSkin.php @@ -49,6 +49,11 @@ class ChampionSkin extends Model ]; } + public function getRarityAttribute($value) + { + return $value === null || $value === 'NoRarity' ? 'Common' : $value; + } + public function champion(): BelongsTo { return $this->belongsTo(Champion::class, 'champion_id', 'champion_id'); diff --git a/app/View/Components/Skins/Paginatedlist.php b/app/View/Components/Skins/Paginatedlist.php new file mode 100644 index 0000000..d7734ac --- /dev/null +++ b/app/View/Components/Skins/Paginatedlist.php @@ -0,0 +1,20 @@ +splash_color}}">
{{$champion->name}} Splash Art @@ -118,7 +118,7 @@
{{$champion->name}} {{$skin->name}} Splash Art {{ $champion->name }} Splash Art diff --git a/resources/views/components/skins/paginatedlist.blade.php b/resources/views/components/skins/paginatedlist.blade.php new file mode 100644 index 0000000..fd122a1 --- /dev/null +++ b/resources/views/components/skins/paginatedlist.blade.php @@ -0,0 +1,43 @@ + +
+

+ Skins

+
+
+ +
+
+ + @foreach($skins as $key => $skin) +
+
+ {{ $skin->skin_name }} Splash Art +
+ +
+
+

+ {{ $skin->skin_name }} +

+ {{$skin->rarity}} +
+
+
+ @endforeach +
+
+ {{ $skins->links() }} + +
diff --git a/resources/views/skins/index.blade.php b/resources/views/skins/index.blade.php new file mode 100644 index 0000000..9b6cc86 --- /dev/null +++ b/resources/views/skins/index.blade.php @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + Heimerdinger.LoL • Skins + + + + + + + + + + + + + + + + + + + + + @vite('resources/css/app.css') + @vite('resources/js/app.js') + + + + + + + + + + diff --git a/resources/views/vendor/pagination/bootstrap-4.blade.php b/resources/views/vendor/pagination/bootstrap-4.blade.php new file mode 100644 index 0000000..63c6f56 --- /dev/null +++ b/resources/views/vendor/pagination/bootstrap-4.blade.php @@ -0,0 +1,46 @@ +@if ($paginator->hasPages()) +
+@endif diff --git a/resources/views/vendor/pagination/bootstrap-5.blade.php b/resources/views/vendor/pagination/bootstrap-5.blade.php new file mode 100644 index 0000000..a1795a4 --- /dev/null +++ b/resources/views/vendor/pagination/bootstrap-5.blade.php @@ -0,0 +1,88 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/default.blade.php b/resources/views/vendor/pagination/default.blade.php new file mode 100644 index 0000000..0db70b5 --- /dev/null +++ b/resources/views/vendor/pagination/default.blade.php @@ -0,0 +1,46 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/semantic-ui.blade.php b/resources/views/vendor/pagination/semantic-ui.blade.php new file mode 100644 index 0000000..ef0dbb1 --- /dev/null +++ b/resources/views/vendor/pagination/semantic-ui.blade.php @@ -0,0 +1,36 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/simple-bootstrap-4.blade.php b/resources/views/vendor/pagination/simple-bootstrap-4.blade.php new file mode 100644 index 0000000..4bb4917 --- /dev/null +++ b/resources/views/vendor/pagination/simple-bootstrap-4.blade.php @@ -0,0 +1,27 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/simple-bootstrap-5.blade.php b/resources/views/vendor/pagination/simple-bootstrap-5.blade.php new file mode 100644 index 0000000..a89005e --- /dev/null +++ b/resources/views/vendor/pagination/simple-bootstrap-5.blade.php @@ -0,0 +1,29 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/simple-default.blade.php b/resources/views/vendor/pagination/simple-default.blade.php new file mode 100644 index 0000000..36bdbc1 --- /dev/null +++ b/resources/views/vendor/pagination/simple-default.blade.php @@ -0,0 +1,19 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/simple-tailwind.blade.php b/resources/views/vendor/pagination/simple-tailwind.blade.php new file mode 100644 index 0000000..6872cca --- /dev/null +++ b/resources/views/vendor/pagination/simple-tailwind.blade.php @@ -0,0 +1,25 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/resources/views/vendor/pagination/tailwind.blade.php b/resources/views/vendor/pagination/tailwind.blade.php new file mode 100644 index 0000000..bc644c8 --- /dev/null +++ b/resources/views/vendor/pagination/tailwind.blade.php @@ -0,0 +1,131 @@ +@if ($paginator->hasPages()) + +@endif diff --git a/routes/web.php b/routes/web.php index f02da4c..ad35c7d 100644 --- a/routes/web.php +++ b/routes/web.php @@ -3,6 +3,7 @@ use App\Http\Controllers\ChampionController; use Illuminate\Support\Facades\Route; use App\Http\Controllers\HomeController; +use App\Http\Controllers\ChampionSkinController; /* |-------------------------------------------------------------------------- @@ -17,5 +18,8 @@ use App\Http\Controllers\HomeController; Route::get('/', [HomeController::class, 'index']); +// Champions Route::get('/champions', [ChampionController::class, 'index']); Route::get('/champion/{champion}', [ChampionController::class, 'show']); +// Skins +Route::get('/skins', [ChampionSkinController::class, 'index']);