@@ -14,7 +14,7 @@ class="gap-2 w-full justify-center py-2.5"
14
14
15
15
@php
16
16
$top3 = $leaderboard -> slice (0 , 3 );
17
- $lists = $leaderboard -> reject (fn ($user ) => in_array ($user -> id , $top3 -> pluck (' id' )-> toArray ()))
17
+ $lists = $leaderboard -> reject (fn ($user ) => in_array ($user -> id , $top3 -> pluck (' id' )-> toArray ()));
18
18
@endphp
19
19
20
20
<div id =" leaderboard" >
@@ -26,30 +26,36 @@ class="gap-2 w-full justify-center py-2.5"
26
26
27
27
<div class =" relative isolate" >
28
28
<div class =" flex flex-col gap-6 lg:flex-row lg:items-start lg:justify-evenly lg:pl-4" >
29
- <div class =" group z-10 order-2 sm:flex sm:flex-col sm:items-center lg:order-1 lg:mt-8" >
30
- <x-forum .leader :user =" $second" :position =" 2" />
31
- <div class =" hidden leaderboard w-60 xl:grid" >
32
- <div class =" stage h-12 bg-yellow-300" >
33
- <div class =" stage-front flex items-center justify-center text-white h-24 bg-gradient-to-b from-gray-100 to-gray-50 dark:from-gray-800 dark:to-gray-900" ></div >
29
+ @if ($second )
30
+ <div class =" group z-10 order-2 sm:flex sm:flex-col sm:items-center lg:order-1 lg:mt-8" >
31
+ <x-forum .leader :user =" $second" :position =" 2" />
32
+ <div class =" hidden leaderboard w-60 xl:grid" >
33
+ <div class =" stage h-12 bg-yellow-300" >
34
+ <div class =" stage-front flex items-center justify-center text-white h-24 bg-gradient-to-b from-gray-100 to-gray-50 dark:from-gray-800 dark:to-gray-900" ></div >
35
+ </div >
34
36
</div >
35
37
</div >
36
- </div >
37
- <div class =" group z-20 order-1 sm:flex sm:flex-col sm:items-center lg:order-2" >
38
- <x-forum .leader :user =" $first" :position =" 1" />
39
- <div class =" hidden leaderboard w-90 xl:grid" >
40
- <div class =" stage h-12 bg-green-500" >
41
- <div class =" stage-front flex items-center justify-center text-white h-32 bg-gradient-to-b from-gray-100 to-gray-50 dark:from-gray-800 dark:to-gray-900" ></div >
38
+ @endif
39
+ @if ($first )
40
+ <div class =" group z-20 order-1 sm:flex sm:flex-col sm:items-center lg:order-2" >
41
+ <x-forum .leader :user =" $first" :position =" 1" />
42
+ <div class =" hidden leaderboard w-90 xl:grid" >
43
+ <div class =" stage h-12 bg-green-500" >
44
+ <div class =" stage-front flex items-center justify-center text-white h-32 bg-gradient-to-b from-gray-100 to-gray-50 dark:from-gray-800 dark:to-gray-900" ></div >
45
+ </div >
42
46
</div >
43
47
</div >
44
- </div >
45
- <div class =" group z-10 order-3 sm:flex sm:flex-col sm:items-center lg:mt-8 xl:mt-14" >
46
- <x-forum .leader :user =" $third" :position =" 3" />
47
- <div class =" hidden leaderboard w-60 xl:grid" >
48
- <div class =" stage h-12 bg-danger-400" >
49
- <div class =" stage-front flex items-center justify-center text-white h-[4rem] bg-gradient-to-b from-gray-100 to-gray-50 dark:from-gray-800 dark:to-gray-900" ></div >
48
+ @endif
49
+ @if ($third )
50
+ <div class =" group z-10 order-3 sm:flex sm:flex-col sm:items-center lg:mt-8 xl:mt-14" >
51
+ <x-forum .leader :user =" $third" :position =" 3" />
52
+ <div class =" hidden leaderboard w-60 xl:grid" >
53
+ <div class =" stage h-12 bg-danger-400" >
54
+ <div class =" stage-front flex items-center justify-center text-white h-[4rem] bg-gradient-to-b from-gray-100 to-gray-50 dark:from-gray-800 dark:to-gray-900" ></div >
55
+ </div >
50
56
</div >
51
57
</div >
52
- </ div >
58
+ @endif
53
59
</div >
54
60
<div class =" mt-4 w-full max-w-sm mx-auto flex items-center justify-center" >
55
61
<div class =" relative z-10 flex flex-1 w-full items-center overflow-hidden rounded-lg ring-1 ring-gray-200 p-[1px] dark:ring-white/10" >
@@ -85,29 +91,31 @@ class="animate-rotate absolute inset-0 h-full w-full rounded-full bg-[conic-grad
85
91
{{ __ (' global.last_active' ) } }
86
92
</div >
87
93
</div >
88
- @foreach ($lists as $user )
89
- <div class =" grid auto-cols grid-flow-col bg-gray-100 rounded-xl px-4 py-3 text-sm text-gray-700 dark:bg-gray-950/50 dark:text-gray-300" >
90
- <div class =" w-10 flex items-center gap-2" >
91
- <x-phosphor-trophy-duotone class =" size-5" aria-hidden =" true" />
92
- {{ $loop -> index + 4 } }
93
- </div >
94
- <div class =" w-32 flex items-center gap-2" >
95
- <x-user .avatar :user =" $user" class =" size-7" />
96
- <span class =" text-gray-500 dark:text-gray-400" >
97
- {{ ' @' . $user -> username } }
98
- </span >
94
+ @if ($lists -> isNotEmpty () )
95
+ @foreach ($lists as $user )
96
+ <div class =" grid auto-cols grid-flow-col bg-gray-100 rounded-xl px-4 py-3 text-sm text-gray-700 dark:bg-gray-950/50 dark:text-gray-300" >
97
+ <div class =" w-10 flex items-center gap-2" >
98
+ <x-phosphor-trophy-duotone class =" size-5" aria-hidden =" true" />
99
+ {{ $loop -> index + 4 } }
100
+ </div >
101
+ <div class =" w-32 flex items-center gap-2" >
102
+ <x-user .avatar :user =" $user" class =" size-7" />
103
+ <span class =" text-gray-500 dark:text-gray-400" >
104
+ {{ ' @' . $user -> username } }
105
+ </span >
106
+ </div >
107
+ <div class =" w-24 hidden text-right md:block" >
108
+ {{ $user -> getPoints () } }
109
+ </div >
110
+ <div class =" w-20 capitalize text-right" >
111
+ {{ $user -> solutions_count } }
112
+ </div >
113
+ <div class =" w-28 text-right hidden lg:block" >
114
+ {{ $user -> last_active_at ?-> diffForHumans () } }
115
+ </div >
99
116
</div >
100
- <div class =" w-24 hidden text-right md:block" >
101
- {{ $user -> getPoints () } }
102
- </div >
103
- <div class =" w-20 capitalize text-right" >
104
- {{ $user -> solutions_count } }
105
- </div >
106
- <div class =" w-28 text-right hidden lg:block" >
107
- {{ $user -> last_active_at ?-> diffForHumans () } }
108
- </div >
109
- </div >
110
- @endforeach
117
+ @endforeach
118
+ @endif
111
119
</div >
112
120
</div >
113
121
</div >
0 commit comments