@@ -3,14 +3,17 @@ defmodule Beanie.RepositoryController do
3
3
4
4
alias Beanie.Repository
5
5
6
- def index ( conn , _params ) do
7
- repositories = Repo . all ( Repository )
8
- render ( conn , "index.html" , repositories: repositories )
9
- end
10
-
11
- def new ( conn , _params ) do
12
- changeset = Repository . changeset ( % Repository { } )
13
- render ( conn , "new.html" , changeset: changeset )
6
+ def index ( conn , params ) do
7
+ case repository_list ( params [ "update" ] ) do
8
+ { :ok , repositories } ->
9
+ conn
10
+ |> put_flash ( :info , "Repository list updated" )
11
+ |> render ( "index.html" , repositories: repositories )
12
+ { :error , repositories } ->
13
+ conn
14
+ |> put_flash ( :error , "Error fetching repositories" )
15
+ |> render ( "index.html" , repositories: repositories )
16
+ end
14
17
end
15
18
16
19
def create ( conn , % { "repository" => repository_params } ) do
@@ -62,4 +65,12 @@ defmodule Beanie.RepositoryController do
62
65
|> put_flash ( :info , "Repository deleted successfully." )
63
66
|> redirect ( to: repository_path ( conn , :index ) )
64
67
end
68
+
69
+ defp repository_list ( "true" ) do
70
+ # TODO refresh repository listing, then fetch from db
71
+ { :ok , Repo . all ( Repository ) }
72
+ end
73
+ defp repository_list ( _ ) do
74
+ { :ok , Repo . all ( Repository ) }
75
+ end
65
76
end
0 commit comments