defmodule VtexWsWeb.AppController do @moduledoc "Controller responsável pelo cadastro e atualização de clientes." use VtexWsWeb, :controller alias VtexWs.Apps alias VtexWs.Apps.App def index(conn, _params) do apps = Apps.list_apps() render(conn, "index.html", apps: apps) end def new(conn, _params) do changeset = Apps.change_app(%App{}) render(conn, "new.html", changeset: changeset) end def create(conn, %{"app" => app_params}) do case Apps.create_app(app_params) do {:ok, app} -> conn |> put_flash(:info, "App created successfully.") |> redirect(to: Routes.app_path(conn, :show, app)) {:error, %Ecto.Changeset{} = changeset} -> render(conn, "new.html", changeset: changeset) end end def show(conn, %{"id" => id}) do app = Apps.get_app!(id) render(conn, "show.html", app: app) end def edit(conn, %{"id" => id}) do app = Apps.get_app!(id) changeset = Apps.change_app(app) render(conn, "edit.html", app: app, changeset: changeset) end def update(conn, %{"id" => id, "app" => app_params}) do app = Apps.get_app!(id) case Apps.update_app(app, app_params) do {:ok, app} -> conn |> put_flash(:info, "App updated successfully.") |> redirect(to: Routes.app_path(conn, :show, app)) {:error, %Ecto.Changeset{} = changeset} -> render(conn, "edit.html", app: app, changeset: changeset) end end def delete(conn, %{"id" => id}) do app = Apps.get_app!(id) {:ok, _app} = Apps.delete_app(app) conn |> put_flash(:info, "App deleted successfully.") |> redirect(to: Routes.app_path(conn, :index)) end end