diff options
author | neodarz <neodarz@neodarz.net> | 2017-01-24 17:09:18 +0100 |
---|---|---|
committer | neodarz <neodarz@neodarz.net> | 2017-01-24 17:09:18 +0100 |
commit | 033d07a519bac03fdfd28ca15e09cc287e80fd14 (patch) | |
tree | d623a1806c64ad84d7c88b0762ae6eb26ed14ce0 /web/controllers | |
download | the_transcriber_backend-033d07a519bac03fdfd28ca15e09cc287e80fd14.tar.xz the_transcriber_backend-033d07a519bac03fdfd28ca15e09cc287e80fd14.zip |
Initial commit with non-functional pieces of code about file upload
Diffstat (limited to '')
-rw-r--r-- | web/controllers/audio_file_controller.ex | 65 | ||||
-rw-r--r-- | web/controllers/page_controller.ex | 7 |
2 files changed, 72 insertions, 0 deletions
diff --git a/web/controllers/audio_file_controller.ex b/web/controllers/audio_file_controller.ex new file mode 100644 index 0000000..8cf5a00 --- /dev/null +++ b/web/controllers/audio_file_controller.ex @@ -0,0 +1,65 @@ +defmodule TheTranscriberBackend.AudioFileController do + use TheTranscriberBackend.Web, :controller + + alias TheTranscriberBackend.AudioFile + + def index(conn, _params) do + audio_file = Repo.all(AudioFile) + render(conn, "index.html", audio_file: audio_file) + end + + def new(conn, _params) do + changeset = AudioFile.changeset(%AudioFile{}) + render(conn, "new.html", changeset: changeset) + end + + def create(conn, %{"audio_file" => audio_file_params}) do + changeset = AudioFile.changeset(%AudioFile{}, audio_file_params) + + case Repo.insert(changeset) do + {:ok, _audio_file} -> + conn + |> put_flash(:info, "Audio file created successfully.") + |> redirect(to: audio_file_path(conn, :index)) + {:error, changeset} -> + render(conn, "new.html", changeset: changeset) + end + end + + def show(conn, %{"id" => id}) do + audio_file = Repo.get!(AudioFile, id) + render(conn, "show.html", audio_file: audio_file) + end + + def edit(conn, %{"id" => id}) do + audio_file = Repo.get!(AudioFile, id) + changeset = AudioFile.changeset(audio_file) + render(conn, "edit.html", audio_file: audio_file, changeset: changeset) + end + + def update(conn, %{"id" => id, "audio_file" => audio_file_params}) do + audio_file = Repo.get!(AudioFile, id) + changeset = AudioFile.changeset(audio_file, audio_file_params) + + case Repo.update(changeset) do + {:ok, audio_file} -> + conn + |> put_flash(:info, "Audio file updated successfully.") + |> redirect(to: audio_file_path(conn, :show, audio_file)) + {:error, changeset} -> + render(conn, "edit.html", audio_file: audio_file, changeset: changeset) + end + end + + def delete(conn, %{"id" => id}) do + audio_file = Repo.get!(AudioFile, id) + + # Here we use delete! (with a bang) because we expect + # it to always work (and if it does not, it will raise). + Repo.delete!(audio_file) + + conn + |> put_flash(:info, "Audio file deleted successfully.") + |> redirect(to: audio_file_path(conn, :index)) + end +end diff --git a/web/controllers/page_controller.ex b/web/controllers/page_controller.ex new file mode 100644 index 0000000..996b05b --- /dev/null +++ b/web/controllers/page_controller.ex @@ -0,0 +1,7 @@ +defmodule TheTranscriberBackend.PageController do + use TheTranscriberBackend.Web, :controller + + def index(conn, _params) do + render conn, "index.html" + end +end |