101 lines
2.3 KiB
Ruby
101 lines
2.3 KiB
Ruby
# RailsSettings Model
|
|
class Setting < RailsSettings::Base
|
|
cache_prefix { "v1" }
|
|
|
|
#
|
|
# Internal services
|
|
#
|
|
|
|
field :redis_url, type: :string, readonly: true,
|
|
default: ENV["REDIS_URL"] || "redis://localhost:6379/0"
|
|
|
|
#
|
|
# Registrations
|
|
#
|
|
|
|
field :reserved_usernames, type: :array, default: %w[
|
|
account accounts donations mail webmaster support
|
|
]
|
|
|
|
#
|
|
# Discourse
|
|
#
|
|
|
|
field :discourse_public_url, type: :string, readonly: true,
|
|
default: ENV["DISCOURSE_PUBLIC_URL"].presence
|
|
|
|
field :discourse_enabled, type: :boolean,
|
|
default: (ENV["DISCOURSE_PUBLIC_URL"].present?.to_s || false)
|
|
|
|
#
|
|
# ejabberd
|
|
#
|
|
|
|
field :ejabberd_enabled, type: :boolean,
|
|
default: (ENV["EJABBERD_API_URL"].present?.to_s || false)
|
|
|
|
field :ejabberd_api_url, type: :string, readonly: true,
|
|
default: ENV["EJABBERD_API_URL"].presence
|
|
|
|
field :ejabberd_admin_url, type: :string, readonly: true,
|
|
default: ENV["EJABBERD_ADMIN_URL"].presence
|
|
|
|
field :ejabberd_buddy_roster, type: :string,
|
|
default: "Buddies"
|
|
|
|
#
|
|
# Gitea
|
|
#
|
|
|
|
field :gitea_public_url, type: :string, readonly: true,
|
|
default: ENV["GITEA_PUBLIC_URL"].presence
|
|
|
|
field :gitea_enabled, type: :boolean,
|
|
default: (ENV["GITEA_PUBLIC_URL"].present?.to_s || false)
|
|
|
|
#
|
|
# Lightning Network
|
|
#
|
|
|
|
field :lndhub_api_url, type: :string, readonly: true,
|
|
default: ENV["LNDHUB_API_URL"].presence
|
|
|
|
field :lndhub_enabled, type: :boolean,
|
|
default: (ENV["LNDHUB_API_URL"].present?.to_s || false)
|
|
|
|
field :lndhub_admin_enabled, type: :boolean,
|
|
default: (ENV["LNDHUB_ADMIN_UI"] || false)
|
|
|
|
field :lndhub_public_key, type: :string, readonly: true,
|
|
default: (ENV["LNDHUB_PUBLIC_KEY"] || "")
|
|
|
|
field :lndhub_keysend_enabled, type: :boolean,
|
|
default: -> { self.lndhub_public_key.present?.to_s || false }
|
|
|
|
#
|
|
# Mastodon
|
|
#
|
|
|
|
field :mastodon_public_url, type: :string, readonly: true,
|
|
default: ENV["MASTODON_PUBLIC_URL"].presence
|
|
|
|
field :mastodon_enabled, type: :boolean,
|
|
default: (ENV["MASTODON_PUBLIC_URL"].present?.to_s || false)
|
|
|
|
#
|
|
# MediaWiki
|
|
#
|
|
|
|
field :mediawiki_public_url, type: :string, readonly: true,
|
|
default: ENV["MEDIAWIKI_PUBLIC_URL"].presence
|
|
|
|
field :mediawiki_enabled, type: :boolean,
|
|
default: (ENV["MEDIAWIKI_PUBLIC_URL"].present?.to_s || false)
|
|
|
|
#
|
|
# Nostr
|
|
#
|
|
|
|
field :nostr_enabled, type: :boolean, default: true
|
|
end
|