feat(academy): prepare AI Academy v1 for production enablement
This commit is contained in:
42
resources/views/web/home/sections/creators.blade.php
Normal file
42
resources/views/web/home/sections/creators.blade.php
Normal file
@@ -0,0 +1,42 @@
|
||||
@php
|
||||
$creatorItems = collect(is_array($creators ?? null) ? $creators : [])->filter()->take(6)->values();
|
||||
$avatarFallback = 'https://files.skinbase.org/default/avatar_default.webp';
|
||||
@endphp
|
||||
|
||||
@if ($creatorItems->isNotEmpty())
|
||||
<section class="mt-14 px-4 sm:px-6 lg:px-8">
|
||||
<div class="mb-5 flex items-center justify-between gap-4">
|
||||
<h2 class="text-xl font-bold text-white">Creator Spotlight</h2>
|
||||
<a href="/members" class="text-sm text-nova-300 transition hover:text-white">All creators</a>
|
||||
</div>
|
||||
|
||||
<div class="grid grid-cols-2 gap-4 sm:grid-cols-3 lg:grid-cols-6">
|
||||
@foreach ($creatorItems as $creator)
|
||||
<a
|
||||
href="{{ $creator['url'] ?? '#' }}"
|
||||
aria-label="View {{ $creator['name'] ?? 'Creator' }} profile"
|
||||
class="group relative flex min-h-[16rem] flex-col items-center overflow-hidden rounded-xl bg-panel p-5 text-center shadow-sm transition hover:ring-1 hover:ring-nova-500"
|
||||
@if (!empty($creator['bg_thumb']))
|
||||
style="background-image: linear-gradient(to top, rgba(13, 19, 28, 0.96), rgba(13, 19, 28, 0.7)), url('{{ $creator['bg_thumb'] }}'); background-size: cover; background-position: center;"
|
||||
@endif
|
||||
>
|
||||
<img src="{{ $creator['avatar'] ?? $avatarFallback }}" alt="{{ $creator['name'] ?? 'Creator' }}" class="relative mx-auto h-16 w-16 rounded-full bg-nova-800/80 object-cover ring-4 ring-nova-800" loading="lazy" decoding="async">
|
||||
<h3 class="relative mt-2 text-sm font-semibold text-white">{{ $creator['name'] ?? 'Creator' }}</h3>
|
||||
<p class="relative mt-1 flex flex-wrap justify-center gap-x-3 gap-y-1 text-xs text-soft">
|
||||
<span>Uploads {{ number_format((int) ($creator['uploads'] ?? 0)) }}</span>
|
||||
@if ((int) ($creator['weekly_uploads'] ?? 0) > 0)
|
||||
<span class="font-semibold text-accent">{{ number_format((int) ($creator['weekly_uploads'] ?? 0)) }} this week</span>
|
||||
@endif
|
||||
<span>Views {{ number_format((int) ($creator['views'] ?? 0)) }}</span>
|
||||
@if ((int) ($creator['awards'] ?? 0) > 0)
|
||||
<span>Awards {{ number_format((int) ($creator['awards'] ?? 0)) }}</span>
|
||||
@endif
|
||||
</p>
|
||||
<span class="relative mt-3 inline-flex items-center justify-center rounded-lg bg-nova-700 px-4 py-1.5 text-xs font-semibold text-white transition group-hover:bg-nova-600">
|
||||
View profile
|
||||
</span>
|
||||
</a>
|
||||
@endforeach
|
||||
</div>
|
||||
</section>
|
||||
@endif
|
||||
Reference in New Issue
Block a user