Sha256: 64f10b118090167cff472c3debebca5816fa77f44e32792ceb263b73fd94854e
Contents?: true
Size: 1.66 KB
Versions: 7
Compression:
Stored size: 1.66 KB
Contents
# coding: utf-8 module RailsAdminSettings class Setting include ::Mongoid::Document include ::Mongoid::Timestamps::Short store_in collection: "rails_admin_settings" if Object.const_defined?('Mongoid') && Mongoid.const_defined?('Audit') include ::Mongoid::Audit::Trackable track_history track_create: true, track_destroy: true end field :enabled, type: Mongoid::VERSION.to_i < 4 ? Boolean : Mongoid::Boolean, default: true scope :enabled, -> { where(enabled: true) } field :type, type: String, default: RailsAdminSettings.types.first field :ns, type: String, default: 'main' field :key, type: String index({ns: 1, key: 1}, {unique: true, sparse: true}) field :raw, type: String field :label, type: String scope :ns, ->(ns) { where(ns: ns) } include RailsAdminSettings::RequireHelpers include RailsAdminSettings::Processing include RailsAdminSettings::Uploads include RailsAdminSettings::Validation def disabled? !enabled end def enabled? enabled end def name label.blank? ? key : label end def to_path if value.nil? nil else 'public' + URI.parse(value).path end end def as_yaml(options = {}) v = {type: type, enabled: enabled, label: label} if upload_type? v[:value] = to_path else v[:value] = raw end v.stringify_keys! v end if Object.const_defined?('RailsAdmin') include RailsAdminSettings::RailsAdminConfig else puts "[rails_admin_settings] Rails Admin not detected -- put this gem after rails_admin in gemfile" end end end
Version data entries
7 entries across 7 versions & 1 rubygems