mirror of
https://github.com/manyfold3d/manyfold.git
synced 2026-10-21 19:22:18 -05:00
34 lines
1.2 KiB
Ruby
34 lines
1.2 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
require "fediverse/inbox"
|
|
|
|
Federails.configure do |conf|
|
|
conf.app_name = "manyfold"
|
|
conf.app_version = Rails.application.config.app_version
|
|
|
|
scheme = Rails.application.config.force_ssl ? "https" : "http"
|
|
conf.site_host = "#{scheme}://#{Rails.application.default_url_options[:host]}"
|
|
conf.site_port = Rails.application.default_url_options[:port]
|
|
conf.force_ssl = Rails.application.config.force_ssl
|
|
|
|
conf.enable_discovery = Rails.application.config.manyfold_features[:federation] || Rails.env.test?
|
|
conf.open_registrations = -> { SiteSettings.registration_enabled? }
|
|
conf.server_routes_path = "federation"
|
|
conf.client_routes_path = "client"
|
|
|
|
conf.remote_follow_url_method = :new_follow_url
|
|
|
|
conf.nodeinfo_metadata = -> do
|
|
{"faspBaseUrl" => Rails.application.routes.url_helpers.fasp_client_url}
|
|
end
|
|
end
|
|
|
|
Federails::Moderation.configure do |conf|
|
|
conf.after_report_created = ->(report) { ReportHandler.call(report) }
|
|
end
|
|
|
|
Rails.application.config.after_initialize do
|
|
Fediverse::Inbox.register_handler("Create", "*", ActivityPub::ActorActivityHandler, :handle_create_activity)
|
|
Fediverse::Inbox.register_handler("Update", "*", ActivityPub::ActorActivityHandler, :handle_update_activity)
|
|
end
|