All checks were successful
Build and Publish / build-release (push) Successful in 3m7s
28 lines
603 B
Elixir
28 lines
603 B
Elixir
defmodule CustomerServiceWeb.Plugs.RequireOrganizationId do
|
|
@moduledoc """
|
|
Ensure `X-Organization-Id` header is provided.
|
|
|
|
This plug must be used after `CustomerServiceWeb.Plugs.ExtractOrganizationId`.
|
|
"""
|
|
|
|
@behaviour Plug
|
|
|
|
import Plug.Conn, only: [get_req_header: 2, halt: 1, send_resp: 3]
|
|
|
|
@impl Plug
|
|
def init(_opts), do: %{}
|
|
|
|
@impl Plug
|
|
def call(conn, _opts) do
|
|
case get_req_header(conn, "x-organization-id") do
|
|
[] ->
|
|
conn
|
|
|> halt()
|
|
|> send_resp(:bad_request, "The organization id is required")
|
|
|
|
[_org_id] ->
|
|
conn
|
|
end
|
|
end
|
|
end
|