camp-api/lib/camp_api_web/controllers/payment_link_controller.ex
Pierre de Lacroix c451662178
WIP
2026-01-22 16:29:25 +01:00

58 lines
1.5 KiB
Elixir

defmodule CampApiWeb.PaymentLinkController do
use CampApiWeb, :controller
alias CampApi.PaymentLinks
alias CampApi.PaymentLinks.Link
alias CampApi.PaymentLinks.Qonto
action_fallback CampApiWeb.FallbackController
def qonto_auth(conn, %{"code" => code, "state" => state}) do
case Qonto.create_token(code, state) do
:ok ->
conn
# |> put_resp_content_type
|> send_resp(200, "connected")
:error ->
conn
# |> put_resp_content_type
|> send_resp(500, "error")
end
end
# def index(conn, _params) do
# links = PaymentLinks.list_links()
# render(conn, :index, links: links)
# end
def create(conn, %{"link" => link_params}) do
with {:ok, %Link{} = link} <- PaymentLinks.create_link(link_params) do
conn
|> put_status(:created)
|> put_resp_header("location", ~p"/api/links/#{link}")
|> render(:show, link: link)
end
end
# def show(conn, %{"id" => id}) do
# link = PaymentLinks.get_link!(id)
# render(conn, :show, link: link)
# end
# def update(conn, %{"id" => id, "link" => link_params}) do
# link = PaymentLinks.get_link!(id)
#
# with {:ok, %Link{} = link} <- PaymentLinks.update_link(link, link_params) do
# render(conn, :show, link: link)
# end
# end
# def delete(conn, %{"id" => id}) do
# link = PaymentLinks.get_link!(id)
#
# with {:ok, %Link{}} <- PaymentLinks.delete_link(link) do
# send_resp(conn, :no_content, "")
# end
# end
end