Domain info under history

This commit is contained in:
Andres Keskküla 2014-11-19 15:46:04 +02:00
parent 401a193c8f
commit c4f6ad0bd9
6 changed files with 43 additions and 67 deletions

View file

@ -99,7 +99,12 @@ class Domain < ActiveRecord::Base
def make_snapshot
{
name: name,
status: status
status: status,
period: period,
period_unit: period_unit,
registrar_id: registrar.try(:id),
valid_to: valid_to,
valid_from: valid_from
}
end

View file

@ -1,56 +0,0 @@
%tr.clickable{"data-target" => "#accordion-#{index}", "data-toggle" => "collapse"}
%td=version.whodunnit #contact.name if contact
%td=version.event #contact.ident if contact
%td=version.created_at #contact.email if contact
%tr
%td{colspan: "3"}
.collapse{ id: "accordion-#{index}" }
.row
.col-md-6
%dl.dl-horizontal
%dt= t('shared.name')
%dd= domain.name
%dt= t('shared.status')
%dd= domain.status
%dt= t('shared.valid_from')
%dd= domain.valid_from
%dt= t('shared.valid_to')
%dd= domain.valid_to
%dt= t('shared.period')
%dd= domain.period
%dt= t('shared.period_unit')
%dd= domain.period_unit
%dt= t('shared.status')
%dd= domain.status
.col-md-6
%dl.dl-horizontal
- if domain.nameservers
- domain.nameservers.each do |ns|
%dt= t('shared.hostname')
%dd= ns.hostname
%dt= t('shared.ipv4')
%dd= ns.ipv4
- if domain.domain_statuses
- domain.domain_statuses.each do |ds|
%dt= t('shared.value')
%dd= ds.value
%dt= t('shared.description')
%dd= ds.description
.row
.col-md-12
- if domain.owner_contact
%h2= t('shared.contacts')
= render 'admin/contact_versions/history', contact: domain.owner_contact
.row
.col-md-12
- if domain.domain_contacts
.row
- if domain.tech_contacts
- domain.tech_contacts.each do |contact|
= render 'admin/contact_versions/history', contact: contact
- if domain.admin_contacts
- domain.admin_contacts.each do |contact|
= render 'admin/contact_versions/history', contact: contact

View file

@ -1,3 +1,18 @@
%td{ class: changes.include?(:domain) ? 'edit-highlight' : 'no-highlight' }
- if children[:domain]
%p{:style => "font-size:x-small;"}
= children[:domain][:period]
= children[:domain][:period_unit] if children[:domain][:period]
- if children[:domain][:valid_to] && children[:domain][:valid_from]
= ","
= l(children[:domain][:valid_from], format: :date) + '-' + l(children[:domain][:valid_to], format: :date)
- if children[:domain].try(:[], :registrar_id)
= ","
= Registrar.find(children[:domain][:registrar_id]).try(:name)
- if children[:domain][:status]
= ',' + children[:domain][:status]
%td{ class: changes.include?(:owner_contact) ? 'edit-highlight' : 'no-highlight' }
- if children[:owner_contact]
%p{:style => "font-size:x-small;"}

View file

@ -12,6 +12,7 @@
%table.table-hover.table-bordered.table-condensed
%thead
%tr
%th{class: 'col-xs-2'}= t(:'shared.domain_info')
%th{class: 'col-xs-2'}= t(:'shared.owner_contact')
%th{class: 'col-xs-2'}= t(:'shared.admin_contacts')
%th{class: 'col-xs-2'}= t(:'shared.tech_contacts')

View file

@ -43,6 +43,7 @@ en:
longer: "%a, %e. %b %Y, %H:%M"
long: "%A, %e. %B %Y, %H:%M"
short: "%d.%m.%y, %H:%M"
date: "%d.%m.%y"
date:
formats:

View file

@ -54,7 +54,7 @@ describe DomainVersion do
expect(DomainVersion.count).to eq(2)
expect(DomainVersion.last.load_snapshot).to include({
admin_contacts: [],
domain: { name: 'version.ee', status: nil },
# domain: { name: 'version.ee', status: nil },
nameservers: [],
tech_contacts: []
})
@ -104,9 +104,15 @@ describe DomainVersion do
expect(DomainVersion.last.load_snapshot[:admin_contacts].first).to include(
name: 'admin_contact 1', phone: '+372.12345678', ident: '37605030299', email: 'admin1@v.ee'
)
expect(DomainVersion.last.load_snapshot[:domain]).to eq(
{ name: 'version.ee', status: nil }
)
expect(DomainVersion.last.load_snapshot[:domain][:name]).to eq('version.ee')
expect(DomainVersion.last.load_snapshot[:domain][:status]).to eq(nil)
expect(DomainVersion.last.load_snapshot[:domain][:period]).to eq(1)
expect(DomainVersion.last.load_snapshot[:domain][:period_unit]).to eq('y')
expect(DomainVersion.last.load_snapshot[:domain][:valid_from]).to eq(Time.now.utc.beginning_of_day)
expect(DomainVersion.last.load_snapshot[:domain][:valid_to]).to eq(Time.now.utc.beginning_of_day + 1.year)
expect(DomainVersion.last.load_snapshot[:domain][:period]).to eq(1)
expect(DomainVersion.last.load_snapshot[:nameservers].size).to eq(1)
expect(DomainVersion.last.load_snapshot[:nameservers].first).to include(
hostname: 'ns.test.ee', ipv4: nil, ipv6: nil
@ -127,9 +133,11 @@ describe DomainVersion do
expect(DomainVersion.last.load_snapshot[:admin_contacts].first).to include(
name: 'admin_contact 1', phone: '+372.12345678', ident: '37605030299', email: 'admin1@v.ee'
)
expect(DomainVersion.last.load_snapshot[:domain]).to eq(
{ name: 'version.ee', status: nil }
)
expect(DomainVersion.last.load_snapshot[:domain][:name]).to eq('version.ee')
expect(DomainVersion.last.load_snapshot[:domain][:status]).to eq(nil)
expect(DomainVersion.last.load_snapshot[:domain][:period]).to eq(1)
expect(DomainVersion.last.load_snapshot[:domain][:period_unit]).to eq('y')
expect(DomainVersion.last.load_snapshot[:nameservers].size).to eq(1)
expect(DomainVersion.last.load_snapshot[:nameservers].first).to include(
hostname: 'ns.test.ee', ipv4: nil, ipv6: nil
@ -163,9 +171,11 @@ describe DomainVersion do
expect(DomainVersion.last.load_snapshot[:admin_contacts].first).to include(
name: 'edited admin_contact', phone: '+372.12345678', ident: '37605030299', email: 'admin1@v.ee'
)
expect(DomainVersion.last.load_snapshot[:domain]).to eq(
{ name: 'version.ee', status: nil }
)
expect(DomainVersion.last.load_snapshot[:domain][:name]).to eq('version.ee')
expect(DomainVersion.last.load_snapshot[:domain][:status]).to eq(nil)
expect(DomainVersion.last.load_snapshot[:domain][:period]).to eq(1)
expect(DomainVersion.last.load_snapshot[:domain][:period_unit]).to eq('y')
expect(DomainVersion.last.load_snapshot[:nameservers].size).to eq(1)
expect(DomainVersion.last.load_snapshot[:nameservers].first).to include(
hostname: 'ns.test.ee', ipv4: nil, ipv6: nil