Advertisement
Guest User

Untitled

a guest
Oct 2nd, 2018
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Erlang 1.75 KB | None | 0 0
  1. defmodule PublisherWeb.:"Elixir.admin.Page"Controller do
  2.   use PublisherWeb, :controller
  3.  
  4.   alias Publisher.Articles
  5.   alias Publisher.Articles.Page
  6.  
  7.   def index(conn, _params) do
  8.     page = Articles.list_page()
  9.     render(conn, "index.html", page: page)
  10.   end
  11.  
  12.   def new(conn, _params) do
  13.     changeset = Articles.change_page(%Page{})
  14.     render(conn, "new.html", changeset: changeset)
  15.   end
  16.  
  17.   def create(conn, %{"page" => page_params}) do
  18.     case Articles.create_page(page_params) do
  19.       {:ok, page} ->
  20.         conn
  21.         |> put_flash(:info, "Page created successfully.")
  22.         |> redirect(to: admin_page_path(conn, :show, page))
  23.       {:error, %Ecto.Changeset{} = changeset} ->
  24.         render(conn, "new.html", changeset: changeset)
  25.     end
  26.   end
  27.  
  28.   def show(conn, %{"id" => id}) do
  29.     page = Articles.get_page!(id)
  30.     render(conn, "show.html", page: page)
  31.   end
  32.  
  33.   def edit(conn, %{"id" => id}) do
  34.     page = Articles.get_page!(id)
  35.     changeset = Articles.change_page(page)
  36.     render(conn, "edit.html", page: page, changeset: changeset)
  37.   end
  38.  
  39.   def update(conn, %{"id" => id, "page" => page_params}) do
  40.     page = Articles.get_page!(id)
  41.  
  42.     case Articles.update_page(page, page_params) do
  43.       {:ok, page} ->
  44.         conn
  45.         |> put_flash(:info, "Page updated successfully.")
  46.         |> redirect(to: admin_page_path(conn, :show, page))
  47.       {:error, %Ecto.Changeset{} = changeset} ->
  48.         render(conn, "edit.html", page: page, changeset: changeset)
  49.     end
  50.   end
  51.  
  52.   def delete(conn, %{"id" => id}) do
  53.     page = Articles.get_page!(id)
  54.     {:ok, _page} = Articles.delete_page(page)
  55.  
  56.     conn
  57.     |> put_flash(:info, "Page deleted successfully.")
  58.     |> redirect(to: admin_page_path(conn, :index))
  59.   end
  60. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement