cover/Elixir.DaProductAppWeb.OrganizationController.html

1
:-(
defmodule DaProductAppWeb.OrganizationController do
2
:-(
use DaProductAppWeb, :controller
3
4 alias DaProductApp.Accounts
5 alias DaProductApp.Accounts.Organization
6
7 def index(conn, _params) do
8
:-(
orgs = Accounts.list_organizations()
9
:-(
current_user = get_current_user(conn)
10
11 conn
12 |> assign(:current_user, current_user)
13 |> assign(:page_title, "Organizations")
14 |> put_layout(html: {DaProductAppWeb.Layouts, :admin})
15
:-(
|> render(:index, organizations: orgs)
16 end
17
18 def new(conn, _params) do
19
:-(
changeset = Organization.changeset(%Organization{}, %{})
20
:-(
current_user = get_current_user(conn)
21
22 conn
23 |> assign(:current_user, current_user)
24 |> assign(:page_title, "New Organization")
25 |> put_layout(html: {DaProductAppWeb.Layouts, :admin})
26
:-(
|> render(:new, changeset: changeset)
27 end
28
29 def create(conn, %{"organization" => org_params}) do
30
:-(
case Accounts.create_organization(org_params) do
31 {:ok, _org} ->
32 conn
33 |> put_flash(:info, "Organization created")
34
:-(
|> redirect(to: ~p"/organizations")
35
36 {:error, changeset} ->
37
:-(
render(conn, :new, changeset: changeset)
38 end
39 end
40
41 def show(conn, %{"id" => id}) do
42
:-(
org = Accounts.get_organization!(id)
43
:-(
render(conn, :show, organization: org)
44 end
45
46 def edit(conn, %{"id" => id}) do
47
:-(
org = Accounts.get_organization!(id)
48
:-(
changeset = Organization.changeset(org, %{})
49
:-(
render(conn, :edit, organization: org, changeset: changeset)
50 end
51
52 def update(conn, %{"id" => id, "organization" => org_params}) do
53
:-(
org = Accounts.get_organization!(id)
54
:-(
case Accounts.update_organization(org, org_params) do
55 {:ok, _org} ->
56 conn
57 |> put_flash(:info, "Organization updated")
58
:-(
|> redirect(to: ~p"/organizations/#{id}")
59
60 {:error, changeset} ->
61
:-(
render(conn, :edit, organization: org, changeset: changeset)
62 end
63 end
64
65 def delete(conn, %{"id" => id}) do
66
:-(
org = Accounts.get_organization!(id)
67
:-(
{:ok, _} = Accounts.delete_organization(org)
68 conn
69 |> put_flash(:info, "Organization deleted")
70
:-(
|> redirect(to: ~p"/organizations")
71 end
72
73 defp get_current_user(conn) do
74
:-(
case get_session(conn, :user_id) do
75
:-(
nil -> nil
76
:-(
user_id -> Accounts.get_user!(user_id)
77 end
78 end
79 end
Line Hits Source