33 lines
983 B
Ruby
33 lines
983 B
Ruby
# RailsSettings Model
|
|
class Setting < RailsSettings::Base
|
|
cache_prefix { "v1" }
|
|
|
|
Dir[Rails.root.join('app', 'models', 'concerns', 'settings', '*.rb')].each do |file|
|
|
require file
|
|
end
|
|
|
|
include Settings::GeneralSettings
|
|
include Settings::BtcpaySettings
|
|
include Settings::DiscourseSettings
|
|
include Settings::DroneCiSettings
|
|
include Settings::EjabberdSettings
|
|
include Settings::EmailSettings
|
|
include Settings::GiteaSettings
|
|
include Settings::LightningNetworkSettings
|
|
include Settings::MastodonSettings
|
|
include Settings::MediaWikiSettings
|
|
include Settings::MembershipSettings
|
|
include Settings::NostrSettings
|
|
include Settings::OpenCollectiveSettings
|
|
include Settings::RemoteStorageSettings
|
|
include Settings::XmppSettings
|
|
|
|
def self.available_services
|
|
known_services = SERVICES[:external].keys
|
|
known_services.select {|s| Setting.send "#{s}_enabled?" }
|
|
end
|
|
|
|
field :default_services, type: :array,
|
|
default: self.available_services
|
|
end
|