mirror of
https://github.com/internetee/registry.git
synced 2025-05-19 18:59:38 +02:00
parent
92f33ad4d8
commit
77b24fdbd1
7 changed files with 54 additions and 1 deletions
|
@ -78,7 +78,8 @@ module Admin
|
||||||
:billing_email,
|
:billing_email,
|
||||||
:code,
|
:code,
|
||||||
:test_registrar,
|
:test_registrar,
|
||||||
:accounting_customer_code)
|
:accounting_customer_code,
|
||||||
|
:language)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -16,8 +16,11 @@ class Registrar < ActiveRecord::Base
|
||||||
validates :name, :reg_no, :country_code, :email, :code, presence: true
|
validates :name, :reg_no, :country_code, :email, :code, presence: true
|
||||||
validates :name, :reg_no, :reference_no, :code, uniqueness: true
|
validates :name, :reg_no, :reference_no, :code, uniqueness: true
|
||||||
validates :accounting_customer_code, presence: true
|
validates :accounting_customer_code, presence: true
|
||||||
|
validates :language, presence: true
|
||||||
validate :forbidden_codes
|
validate :forbidden_codes
|
||||||
|
|
||||||
|
after_initialize :set_defaults
|
||||||
|
|
||||||
def forbidden_codes
|
def forbidden_codes
|
||||||
return true unless ['CID'].include? code
|
return true unless ['CID'].include? code
|
||||||
errors.add(:code, I18n.t(:forbidden_code))
|
errors.add(:code, I18n.t(:forbidden_code))
|
||||||
|
@ -163,4 +166,10 @@ class Registrar < ActiveRecord::Base
|
||||||
return true unless Setting.api_ip_whitelist_enabled
|
return true unless Setting.api_ip_whitelist_enabled
|
||||||
white_ips.api.pluck(:ipv4, :ipv6).flatten.include?(ip)
|
white_ips.api.pluck(:ipv4, :ipv6).flatten.include?(ip)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
|
def set_defaults
|
||||||
|
self.language = Setting.default_language unless language
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -149,6 +149,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<%= render 'admin/registrars/form/preferences', f: f %>
|
||||||
<hr/>
|
<hr/>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-8 text-right">
|
<div class="col-md-8 text-right">
|
||||||
|
|
20
app/views/admin/registrars/form/_preferences.html.erb
Normal file
20
app/views/admin/registrars/form/_preferences.html.erb
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-8">
|
||||||
|
<div class="panel panel-default">
|
||||||
|
<div class="panel-heading">
|
||||||
|
<%= t '.header' %>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="panel-body">
|
||||||
|
<div class="form-group">
|
||||||
|
<div class="col-md-4 control-label">
|
||||||
|
<%= f.label :language %>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-7">
|
||||||
|
<%= f.language_select :language, nil, {}, required: true, class: 'form-control' %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -24,3 +24,6 @@ en:
|
||||||
|
|
||||||
billing:
|
billing:
|
||||||
header: Billing
|
header: Billing
|
||||||
|
|
||||||
|
preferences:
|
||||||
|
header: Preferences
|
||||||
|
|
1
test/fixtures/registrars.yml
vendored
1
test/fixtures/registrars.yml
vendored
|
@ -5,6 +5,7 @@ DEFAULTS: &DEFAULTS
|
||||||
email: acme@example.com
|
email: acme@example.com
|
||||||
code: 1234
|
code: 1234
|
||||||
accounting_customer_code: ACCOUNT001
|
accounting_customer_code: ACCOUNT001
|
||||||
|
language: en
|
||||||
|
|
||||||
valid:
|
valid:
|
||||||
<<: *DEFAULTS
|
<<: *DEFAULTS
|
||||||
|
|
|
@ -20,4 +20,22 @@ class RegistrarTest < ActiveSupport::TestCase
|
||||||
@registrar.validate
|
@registrar.validate
|
||||||
assert @registrar.invalid?
|
assert @registrar.invalid?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_requires_language
|
||||||
|
@registrar.language = nil
|
||||||
|
@registrar.validate
|
||||||
|
assert @registrar.invalid?
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_has_default_language
|
||||||
|
Setting.default_language = 'en'
|
||||||
|
registrar = Registrar.new
|
||||||
|
assert_equal 'en', registrar.language
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_overrides_default_language
|
||||||
|
Setting.default_language = 'en'
|
||||||
|
registrar = Registrar.new(language: 'de')
|
||||||
|
assert_equal 'de', registrar.language
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue