defmodule NullaWeb.ActivityPub.NodeinfoController do use NullaWeb, :controller alias Nulla.ActivityPub alias Nulla.Models.User alias Nulla.Models.InstanceSettings def index(conn, _params) do domain = NullaWeb.Endpoint.host() json(conn, ActivityPub.nodeinfo(domain)) end def show(conn, _params) do version = Application.spec(:nulla, :vsn) |> to_string() total = User.get_total_users_count() month = User.get_active_users_count(30) halfyear = User.get_active_users_count(180) users = %{ total: total, month: month, halfyear: halfyear } instance_settings = InstanceSettings.get_instance_settings!() json(conn, ActivityPub.nodeinfo(version, users, instance_settings)) end end