towerops/lib/towerops_web/controllers/api_docs_controller.ex
2026-01-17 17:49:53 -06:00

31 lines
958 B
Elixir

defmodule ToweropsWeb.ApiDocsController do
@moduledoc """
Controller for API documentation pages.
"""
use ToweropsWeb, :controller
alias Towerops.ApiTokens
def index(conn, _params) do
# Check if user is logged in and has an organization selected
sample_token =
case conn.assigns[:current_scope] do
%{user: user, organization: org} when not is_nil(user) and not is_nil(org) ->
# User is logged in with an organization - check for API tokens
tokens = ApiTokens.list_organization_api_tokens(org.id)
if Enum.empty?(tokens) do
"your-api-token-here (create one in your organization settings)"
else
token = List.first(tokens)
"your-api-token-here (use: #{token.name})"
end
_ ->
# Not logged in or no organization selected
"YOUR_API_TOKEN"
end
render(conn, :index, sample_token: sample_token)
end
end