mirror of
https://github.com/internetee/registry.git
synced 2025-05-16 17:37:17 +02:00
69 lines
1.8 KiB
Ruby
69 lines
1.8 KiB
Ruby
class Setting < RailsSettings::CachedSettings
|
|
include Versions # version/setting_version.rb
|
|
|
|
def self.reload_settings!
|
|
STDOUT << "#{Time.zone.now.utc} - Clearing settings cache\n"
|
|
Rails.cache.delete_matched('settings:.*')
|
|
STDOUT << "#{Time.zone.now.utc} - Settings cache cleared\n"
|
|
end
|
|
|
|
|
|
# cannot do instance validation because CachedSetting use save!
|
|
def self.params_errors(params)
|
|
errors = {}
|
|
# DS data allowed and Allow key data cannot be both true
|
|
if !!params["key_data_allowed"] && params["key_data_allowed"] == params["ds_data_allowed"]
|
|
msg = "#{I18n.t(:key_data_allowed)} and #{I18n.t(:ds_data_with_key_allowed)} cannot be both true"
|
|
errors["key_data_allowed"] = msg
|
|
errors["ds_data_allowed"] = msg
|
|
end
|
|
|
|
return errors
|
|
end
|
|
|
|
def self.integer_settings
|
|
%i[
|
|
admin_contacts_min_count
|
|
admin_contacts_max_count
|
|
tech_contacts_min_count
|
|
tech_contacts_max_count
|
|
orphans_contacts_in_months
|
|
ds_digest_type
|
|
dnskeys_min_count
|
|
dnskeys_max_count
|
|
ns_min_count
|
|
ns_max_count
|
|
transfer_wait_time
|
|
invoice_number_min
|
|
invoice_number_max
|
|
days_to_keep_business_registry_cache
|
|
days_to_keep_invoices_active
|
|
days_to_keep_overdue_invoices_active
|
|
days_to_renew_domain_before_expire
|
|
expire_warning_period
|
|
redemption_grace_period
|
|
expire_pending_confirmation
|
|
]
|
|
end
|
|
|
|
def self.float_settings
|
|
%i[
|
|
registry_vat_prc
|
|
minimum_deposit
|
|
]
|
|
end
|
|
|
|
def self.boolean_settings
|
|
%i[
|
|
ds_data_allowed
|
|
key_data_allowed
|
|
client_side_status_editing_enabled
|
|
registrar_ip_whitelist_enabled
|
|
api_ip_whitelist_enabled
|
|
request_confrimation_on_registrant_change_enabled
|
|
request_confirmation_on_domain_deletion_enabled
|
|
nameserver_required
|
|
address_processing
|
|
]
|
|
end
|
|
end
|