@@ -6,6 +6,7 @@ defmodule AlgoraWeb.Org.HomeLive do
6
6
alias Algora.Accounts.User
7
7
alias Algora.Bounties
8
8
alias Algora.Bounties.Bounty
9
+ alias Algora.Jobs
9
10
alias Algora.Payments
10
11
11
12
@ impl true
@@ -24,6 +25,8 @@ defmodule AlgoraWeb.Org.HomeLive do
24
25
stats = Bounties . fetch_stats ( org_id: org . id , current_user: socket . assigns [ :current_user ] )
25
26
transactions = Payments . list_hosted_transactions ( org . id , limit: page_size ( ) )
26
27
28
+ total_jobs = Jobs . count_jobs ( user_id: org . id )
29
+
27
30
total_awarded_subtext =
28
31
[
29
32
"#{ stats . rewarded_bounties_count } #{ ngettext ( "bounty" , "bounties" , stats . rewarded_bounties_count ) } " ,
@@ -47,6 +50,7 @@ defmodule AlgoraWeb.Org.HomeLive do
47
50
|> assign ( :top_earners , top_earners )
48
51
|> assign ( :stats , stats )
49
52
|> assign ( :total_awarded_subtext , total_awarded_subtext )
53
+ |> assign ( :total_jobs , total_jobs )
50
54
51
55
{ :ok , socket }
52
56
end
@@ -105,13 +109,23 @@ defmodule AlgoraWeb.Org.HomeLive do
105
109
navigate = { ~p" /#{ @ org . handle } /leaderboard" }
106
110
icon = "tabler-user-code "
107
111
/>
108
- < . stat_card
109
- title = "Members "
110
- value = { @ stats . members_count }
111
- subtext = ""
112
- navigate = { ~p" /#{ @ org . handle } /team" }
113
- icon = "tabler-users "
114
- />
112
+ <%= if @ total_jobs > 0 do %>
113
+ < . stat_card
114
+ title = "Jobs "
115
+ value = { @ total_jobs }
116
+ subtext = ""
117
+ navigate = { ~p" /#{ @ org . handle } /jobs" }
118
+ icon = "tabler-briefcase "
119
+ />
120
+ <% else %>
121
+ < . stat_card
122
+ title = "Members "
123
+ value = { @ stats . members_count }
124
+ subtext = ""
125
+ navigate = { ~p" /#{ @ org . handle } /team" }
126
+ icon = "tabler-users "
127
+ />
128
+ <% end %>
115
129
</ div >
116
130
117
131
< div class = "grid grid-cols-1 gap-6 lg:grid-cols-2 " >
0 commit comments