@@ -6,6 +6,7 @@ defmodule AlgoraWeb.Org.HomeLive do
66 alias Algora.Accounts.User
77 alias Algora.Bounties
88 alias Algora.Bounties.Bounty
9+ alias Algora.Jobs
910 alias Algora.Payments
1011
1112 @ impl true
@@ -24,6 +25,8 @@ defmodule AlgoraWeb.Org.HomeLive do
2425 stats = Bounties . fetch_stats ( org_id: org . id , current_user: socket . assigns [ :current_user ] )
2526 transactions = Payments . list_hosted_transactions ( org . id , limit: page_size ( ) )
2627
28+ total_jobs = Jobs . count_jobs ( user_id: org . id )
29+
2730 total_awarded_subtext =
2831 [
2932 "#{ stats . rewarded_bounties_count } #{ ngettext ( "bounty" , "bounties" , stats . rewarded_bounties_count ) } " ,
@@ -47,6 +50,7 @@ defmodule AlgoraWeb.Org.HomeLive do
4750 |> assign ( :top_earners , top_earners )
4851 |> assign ( :stats , stats )
4952 |> assign ( :total_awarded_subtext , total_awarded_subtext )
53+ |> assign ( :total_jobs , total_jobs )
5054
5155 { :ok , socket }
5256 end
@@ -105,13 +109,23 @@ defmodule AlgoraWeb.Org.HomeLive do
105109 navigate = { ~p" /#{ @ org . handle } /leaderboard" }
106110 icon = "tabler-user-code "
107111 />
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 %>
115129 </ div >
116130
117131 < div class = "grid grid-cols-1 gap-6 lg:grid-cols-2 " >
0 commit comments