docbrown/app/models/settings/campaign.rb
Michael Kohl a885483059
Introduce Settings::Base (#14138)
* Introduce Settings::Base

* Temporarily re-add gem

* Update Settings::Base to use RequestStore

* Add after_commit hook

* Restructure code

* Finish specs, rename field -> setting

* Update comment

* Undo unrelated change

* Remove redundant get_default

* Fix Doorkeeper issue

* Update docs/backend/configuration.md

Co-authored-by: Josh Puetz <josh@dev.to>

* Clarify comment and documentation

* Update vendored gems

* Fix nil-handling bug in Settings::Base

* Remove accidentaly changes from Gemfile.lock

* Update vendored gems

Co-authored-by: Josh Puetz <josh@dev.to>
2021-08-30 10:27:08 +07:00

15 lines
628 B
Ruby

module Settings
class Campaign < Base
self.table_name = :settings_campaigns
# Define your settings
setting :articles_expiry_time, type: :integer, default: 4
setting :articles_require_approval, type: :boolean, default: 0
setting :call_to_action, type: :string, default: "Share your project"
setting :featured_tags, type: :array, default: %w[]
setting :hero_html_variant_name, type: :string, default: ""
setting :sidebar_enabled, type: :boolean, default: 0
setting :sidebar_image, type: :string, default: nil, validates: { url: true }
setting :url, type: :string, default: nil
end
end