@@ -2,7 +2,7 @@ defmodule CodeCorpsWeb.SkillController do
22 @ moduledoc false
33 use CodeCorpsWeb , :controller
44
5- alias CodeCorps . { Skill , User , Helpers.Query }
5+ alias CodeCorps . { Helpers.Query , Skill , Skills , User }
66
77 action_fallback CodeCorpsWeb.FallbackController
88 plug CodeCorpsWeb.Plug.DataToAttributes
@@ -22,7 +22,7 @@ defmodule CodeCorpsWeb.SkillController do
2222 end
2323 end
2424
25- @ spec create ( Plug. Conn. t , map ) :: Conn . t
25+ @ spec create ( Conn . t , map ) :: Conn . t
2626 def create ( % Conn { } = conn , % { } = params ) do
2727 with % User { } = current_user <- conn |> CodeCorps.Guardian.Plug . current_resource ,
2828 { :ok , :authorized } <- current_user |> Policy . authorize ( :create , % Skill { } , params ) ,
@@ -34,12 +34,17 @@ defmodule CodeCorpsWeb.SkillController do
3434 end
3535
3636 @ spec load_skills ( map ) :: list ( Skill . t )
37+ defp load_skills ( % { "popular" => "true" } = params ) do
38+ params
39+ |> Skills . popular ( )
40+ |> preload ( )
41+ end
3742 defp load_skills ( % { } = params ) do
3843 Skill
3944 |> Query . id_filter ( params )
4045 |> Query . title_filter ( params )
4146 |> Query . limit_filter ( params )
42- |> Repo . all
47+ |> Repo . all ( )
4348 end
4449
4550 @ preloads [ :role_skills ]
0 commit comments