From 2fe026715a15fc8de739c6159db616b8061ac867 Mon Sep 17 00:00:00 2001 From: Stas Date: Thu, 10 Dec 2015 11:17:48 +0200 Subject: [PATCH 01/11] 1088869472-methods_for_archive --- .../admin/domain_versions_controller.rb | 14 +-- app/controllers/admin/domains_controller.rb | 5 + .../admin/domains_versions_controller.rb | 7 ++ app/models/ability.rb | 1 + .../admin/domains/partials/_version.haml | 105 ++++++++++++++++++ app/views/admin/domains/versions.haml | 44 ++++++++ app/views/layouts/admin/application.haml | 4 + config/routes.rb | 14 ++- 8 files changed, 186 insertions(+), 8 deletions(-) create mode 100644 app/controllers/admin/domains_versions_controller.rb create mode 100644 app/views/admin/domains/partials/_version.haml create mode 100644 app/views/admin/domains/versions.haml diff --git a/app/controllers/admin/domain_versions_controller.rb b/app/controllers/admin/domain_versions_controller.rb index 44a2087cd..35fffbaa2 100644 --- a/app/controllers/admin/domain_versions_controller.rb +++ b/app/controllers/admin/domain_versions_controller.rb @@ -1,10 +1,10 @@ -class Admin::DomainVersionsController < AdminController - load_and_authorize_resource +#class Admin::DomainVersionsController < AdminController + #load_and_authorize_resource # rubocop:disable Style/GuardClause - def index - @domain = Domain.where(id: params[:domain_id]).includes({versions: :item}).first - @versions = @domain.versions + #def index + # @domain = Domain.where(id: params[:domain_id]).includes({versions: :item}).first + # @versions = @domain.versions # Depricated it had to load legal document. We may do it by parsing and adding link. # if @domain.pending_json.present? @@ -13,6 +13,6 @@ class Admin::DomainVersionsController < AdminController # @pending_domain = Epp::Domain.find(@domain.id) # @pending_domain.update(frame, @pending_user, false) # end - end + #end # rubocop:enable Style/GuardClause -end + #end diff --git a/app/controllers/admin/domains_controller.rb b/app/controllers/admin/domains_controller.rb index 377912bad..36bdefbff 100644 --- a/app/controllers/admin/domains_controller.rb +++ b/app/controllers/admin/domains_controller.rb @@ -77,6 +77,11 @@ class Admin::DomainsController < AdminController redirect_to [:admin, @domain] end + def versions + @domain = Domain.where(id: params[:domain_id]).includes({versions: :item}).first + @versions = @domain.versions + end + private def set_domain diff --git a/app/controllers/admin/domains_versions_controller.rb b/app/controllers/admin/domains_versions_controller.rb new file mode 100644 index 000000000..505ebf2c1 --- /dev/null +++ b/app/controllers/admin/domains_versions_controller.rb @@ -0,0 +1,7 @@ +class Admin::DomainsVersionsController < AdminController + load_and_authorize_resource + + def index + + end +end diff --git a/app/models/ability.rb b/app/models/ability.rb index cf98cb704..07be0af7c 100644 --- a/app/models/ability.rb +++ b/app/models/ability.rb @@ -95,6 +95,7 @@ class Ability can :manage, ReservedDomain can :manage, ZonefileSetting can :manage, DomainVersion + can :manage, ContactVersion can :manage, Pricelist can :manage, User can :manage, ApiUser diff --git a/app/views/admin/domains/partials/_version.haml b/app/views/admin/domains/partials/_version.haml new file mode 100644 index 000000000..fd449b4b0 --- /dev/null +++ b/app/views/admin/domains/partials/_version.haml @@ -0,0 +1,105 @@ +- statuses_link ||= false +- version ||= false +- domain ||= false +- pending_user ||= false + +- if domain.present? + - if version # normal history + - children = HashWithIndifferentAccess.new(version.children) + - nameservers = Nameserver.where(id: children[:nameservers]) + - tech_contacts = Contact.where(id: children[:tech_contacts]) + - admin_contacts = Contact.where(id: children[:admin_contacts]) + - registrant = Contact.where(id: children[:registrant]) + - event = version.event + - creator = plain_username(version.terminator) + - else # pending history + - nameservers = domain.nameservers + - tech_contacts = domain.tech_contacts + - admin_contacts = domain.admin_contacts + - registrant = [domain.registrant] + - creator = pending_user.try(:username) + - event = 'pending' + + %td + %p.nowrap + = l(domain.updated_at, format: :shorts) + - if statuses_link + %br= link_to t(:edit_statuses), edit_admin_domain_path(params[:domain_id]) + + %p.text-right + = event + %br + = creator + + %td + %p + - if domain.statuses.present? + - domain.statuses.each do |s| + = s + - if domain.status_notes.present? + - notes = domain.status_notes[s] + - if notes + %br + %i= notes + %br + - if domain.pending_json.present? + %p + = link_to t(:pending_epp), '#', class: 'js-pending-toggle' + + %td + %p + = "#{domain.period}#{domain.period_unit}" + %br + = "#{l(domain.valid_from, format: :date)}" + %br + = "#{l(domain.valid_to, format: :date)}" + + %td + - registrant.each do |r| + %p + = r[:name] + = r[:phone] + = r[:email] + %p + = r[:code] + + %td + - admin_contacts.each do |ac| + %p + = ac[:name] + = ac[:phone] + = ac[:email] + %p + = ac[:code] + + %td + - tech_contacts.each do |tc| + %p + = tc[:name] + = tc[:phone] + = tc[:email] + %p + = tc[:code] + + %td + %p + - nameservers.each do |ns| + = ns[:hostname] + %br + = ns[:ipv4] + = ns[:ipv6] + + %td + %p + = domain.registrar.name + + - if domain.pending_json.present? + %tr.js-pending{ style: 'display: none;' } + %td{colspan: 8} + = preserve do + %pre + - formatted_req = Nokogiri::XML(domain.pending_json['frame']) + - if formatted_req.errors.none? + = formatted_req + - else + = domain.pending_json['frame'] diff --git a/app/views/admin/domains/versions.haml b/app/views/admin/domains/versions.haml new file mode 100644 index 000000000..5224aa34a --- /dev/null +++ b/app/views/admin/domains/versions.haml @@ -0,0 +1,44 @@ +- content_for :actions do + = link_to(t(:back_to_domain), [:admin, @domain], class: 'btn btn-default') += render 'shared/title', name: "#{t(:history)}: #{@domain.name}" + +.row + .col-md-12 + .table-responsive + %table.table-hover.table-bordered.table-condensed + %thead + %tr + %th{class: 'col-xs-1'}= t(:timestap) + %th{class: 'col-xs-2'}= t(:statuses) + %th{class: 'col-xs-1'}= t(:period) + %th{class: 'col-xs-2'}= t(:registrant) + %th{class: 'col-xs-2'}= t(:admin) + %th{class: 'col-xs-2'}= t(:tech) + %th{class: 'col-xs-2'}= t(:nameservers) + %th{class: 'col-xs-2'}= t(:registrar) + + %tbody + - if @pending_domain.present? + %tr.small + = render 'admin/domains/partials/version', + domain: @pending_domain, pending_user: @pending_user, statuses_link: true + + -# current version + - if @domain.versions.present? + %tr.small + = render 'admin/domains/partials/version', + domain: @domain, version: @domain.versions.last + + -# all other older versions + - @domain.versions.not_creates.reverse.each do |version| + %tr.small + = render 'admin/domains/partials/version', + domain: version.reify, version: version.previous + +:coffee + $(document).on 'click', '.js-pending-toggle', (e) -> + e.preventDefault() + + $(document).on 'mousedown', '.js-pending-toggle', (e) -> + target = $(e.target) + target.parents('tr').next('tr.js-pending').toggle() diff --git a/app/views/layouts/admin/application.haml b/app/views/layouts/admin/application.haml index 6e3257740..a4481d6e6 100644 --- a/app/views/layouts/admin/application.haml +++ b/app/views/layouts/admin/application.haml @@ -57,6 +57,10 @@ %li= link_to t(:invoices), admin_invoices_path %li= link_to t(:account_activities), admin_account_activities_path %li.divider + %li.dropdown-header= t(:archive) + %li= link_to t(:domains_history), admin_domains_versions_path + %li= link_to t(:contacts_history), admin_contacts_versions_path + %li.divider %li.dropdown-header= t(:system) %li= link_to t(:settings), admin_settings_path %li= link_to t(:zonefile), admin_zonefile_settings_path diff --git a/config/routes.rb b/config/routes.rb index c1cc98697..7a5f6cb2a 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -192,7 +192,7 @@ Rails.application.routes.draw do end resources :domains do - resources :domain_versions + resources :domain_versions, controller: 'domains', action: 'versions' resources :pending_updates resources :pending_deletes member do @@ -201,6 +201,18 @@ Rails.application.routes.draw do end end + resources :domains_versions do + collection do + get 'search' + end + end + + resources :contacts_versions do + collection do + get 'search' + end + end + resources :settings resources :blocked_domains From f1425398277c501b869490445eb38fb53be7120d Mon Sep 17 00:00:00 2001 From: Stas Date: Fri, 11 Dec 2015 10:58:33 +0200 Subject: [PATCH 02/11] 108869472-templates --- .../admin/contact_versions_controller.rb | 39 ++++++++++++++++++ .../admin/domain_versions_controller.rb | 10 ++--- .../admin/domains_versions_controller.rb | 7 ---- app/views/admin/contact_versions/index.haml | 40 +++++++++++++++++++ app/views/layouts/admin/application.haml | 4 +- config/routes.rb | 4 +- 6 files changed, 88 insertions(+), 16 deletions(-) create mode 100644 app/controllers/admin/contact_versions_controller.rb delete mode 100644 app/controllers/admin/domains_versions_controller.rb create mode 100644 app/views/admin/contact_versions/index.haml diff --git a/app/controllers/admin/contact_versions_controller.rb b/app/controllers/admin/contact_versions_controller.rb new file mode 100644 index 000000000..cd49011a0 --- /dev/null +++ b/app/controllers/admin/contact_versions_controller.rb @@ -0,0 +1,39 @@ +class Admin::ContactVersionsController < AdminController + load_and_authorize_resource + + def index + params[:q] ||= {} + @q = ContactVersion.search(params[:q]) + @versions = @q.result.page(params[:page]) + + versions = ContactVersion.all + + normalize_search_parameters do + @q = versions.search(params[:q]) + @versions = @q.result.page(params[:page]) + end + + @versions = @versions.per(params[:results_per_page]) if params[:results_per_page].to_i > 0 + end + + def search + render json: ContactVersion.search_by_query(params[:q]) + end + + def normalize_search_parameters + ca_cache = params[:q][:created_at_lteq] + begin + end_time = params[:q][:created_at_lteq].try(:to_date) + params[:q][:created_at_lteq] = end_time.try(:end_of_day) + end_time = params[:q][:updated_at_gteq].try(:to_date) + params[:q][:updated_at_lteq] = end_time.try(:end_of_day) + rescue + logger.warn('Invalid date') + end + + yield + + params[:q][:created_at_lteq] = ca_cache + end + +end diff --git a/app/controllers/admin/domain_versions_controller.rb b/app/controllers/admin/domain_versions_controller.rb index 35fffbaa2..985c680f9 100644 --- a/app/controllers/admin/domain_versions_controller.rb +++ b/app/controllers/admin/domain_versions_controller.rb @@ -1,8 +1,8 @@ -#class Admin::DomainVersionsController < AdminController - #load_and_authorize_resource +class Admin::DomainVersionsController < AdminController + load_and_authorize_resource # rubocop:disable Style/GuardClause - #def index + def index # @domain = Domain.where(id: params[:domain_id]).includes({versions: :item}).first # @versions = @domain.versions @@ -13,6 +13,6 @@ # @pending_domain = Epp::Domain.find(@domain.id) # @pending_domain.update(frame, @pending_user, false) # end - #end + end # rubocop:enable Style/GuardClause - #end + end diff --git a/app/controllers/admin/domains_versions_controller.rb b/app/controllers/admin/domains_versions_controller.rb deleted file mode 100644 index 505ebf2c1..000000000 --- a/app/controllers/admin/domains_versions_controller.rb +++ /dev/null @@ -1,7 +0,0 @@ -class Admin::DomainsVersionsController < AdminController - load_and_authorize_resource - - def index - - end -end diff --git a/app/views/admin/contact_versions/index.haml b/app/views/admin/contact_versions/index.haml new file mode 100644 index 000000000..e86b56e5b --- /dev/null +++ b/app/views/admin/contact_versions/index.haml @@ -0,0 +1,40 @@ += render 'shared/title', name: t(:contact_versions) + + +%hr +.row + .col-md-12 + .table-responsive + %table.table.table-hover.table-bordered.table-condensed + %thead + %tr + %th{class: 'col-xs-2'} + = sort_link(@q, 'name', t(:ID)) + %th{class: 'col-xs-2'} + = sort_link(@q, 'code', t(:item_id)) + %th{class: 'col-xs-2'} + = sort_link(@q, 'ident', t(:event)) + %th{class: 'col-xs-2'} + = sort_link(@q, 'email', t(:object)) + %th{class: 'col-xs-2'} + = sort_link(@q, 'registrar_name', t(:registrar)) + %tbody + - @versions.each do |version| + %tr + %td= 1 + %td= 2 + %td= 3 + %td= 4 + %td= 5 + +.row + .col-md-6 + = paginate @versions + .col-md-6.text-right + .pagination + = t(:result_count, count: @contacts.total_count) + +:coffee + $(".js-reset-form").on "click", (e) -> + e.preventDefault(); + window.location = "#{admin_contact_versions_path}" diff --git a/app/views/layouts/admin/application.haml b/app/views/layouts/admin/application.haml index a4481d6e6..6baef9abf 100644 --- a/app/views/layouts/admin/application.haml +++ b/app/views/layouts/admin/application.haml @@ -58,8 +58,8 @@ %li= link_to t(:account_activities), admin_account_activities_path %li.divider %li.dropdown-header= t(:archive) - %li= link_to t(:domains_history), admin_domains_versions_path - %li= link_to t(:contacts_history), admin_contacts_versions_path + %li= link_to t(:domains_history), admin_domain_versions_path + %li= link_to t(:contacts_history), admin_contact_versions_path %li.divider %li.dropdown-header= t(:system) %li= link_to t(:settings), admin_settings_path diff --git a/config/routes.rb b/config/routes.rb index 7a5f6cb2a..2dfc608cd 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -201,13 +201,13 @@ Rails.application.routes.draw do end end - resources :domains_versions do + resources :domain_versions do collection do get 'search' end end - resources :contacts_versions do + resources :contact_versions do collection do get 'search' end From a8ff88771770eaad6b7e44592b3921a3fd0c2e36 Mon Sep 17 00:00:00 2001 From: Stas Date: Thu, 7 Jan 2016 13:07:06 +0200 Subject: [PATCH 03/11] 108869472-template_changes --- app/views/admin/contact_versions/index.haml | 30 ++++++++++++--------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/app/views/admin/contact_versions/index.haml b/app/views/admin/contact_versions/index.haml index e86b56e5b..195b90783 100644 --- a/app/views/admin/contact_versions/index.haml +++ b/app/views/admin/contact_versions/index.haml @@ -1,7 +1,6 @@ = render 'shared/title', name: t(:contact_versions) -%hr .row .col-md-12 .table-responsive @@ -9,30 +8,35 @@ %thead %tr %th{class: 'col-xs-2'} - = sort_link(@q, 'name', t(:ID)) + = sort_link(@q, 'name', t(:name)) %th{class: 'col-xs-2'} - = sort_link(@q, 'code', t(:item_id)) + = sort_link(@q, 'code', t(:id)) %th{class: 'col-xs-2'} - = sort_link(@q, 'ident', t(:event)) - %th{class: 'col-xs-2'} - = sort_link(@q, 'email', t(:object)) + = sort_link(@q, 'ident', t(:ident)) %th{class: 'col-xs-2'} = sort_link(@q, 'registrar_name', t(:registrar)) + %th{class: 'col-xs-2'} + = sort_link(@q, 'email', t(:created_at)) + %th{class: 'col-xs-2'} + = sort_link(@q, 'action', t(:action)) %tbody - @versions.each do |version| %tr - %td= 1 - %td= 2 - %td= 3 - %td= 4 - %td= 5 + %td= version.reify.name + %td= version.reify.code + %td= ident_for(version.reify) + %td= l(version.created_at, format: :short) + %td + - if version.reify.registrar + = link_to(version.reify.registrar, admin_registrar_path(version.reify.registrar)) + + %td= version.event .row .col-md-6 = paginate @versions .col-md-6.text-right - .pagination - = t(:result_count, count: @contacts.total_count) + :coffee $(".js-reset-form").on "click", (e) -> From 9278e6703f19529a147ac4f600c94c42d2c55853 Mon Sep 17 00:00:00 2001 From: Stas Date: Tue, 12 Jan 2016 18:37:05 +0200 Subject: [PATCH 04/11] 108869472-archive --- .../admin/contact_versions_controller.rb | 29 +++----- .../admin/domain_versions_controller.rb | 52 ++++++++++--- app/validators/domain_name_validator.rb | 2 +- app/views/admin/contact_versions/index.haml | 54 +++++++++++--- app/views/admin/domain_versions/archive.haml | 73 +++++++++++++++++++ 5 files changed, 171 insertions(+), 39 deletions(-) create mode 100644 app/views/admin/domain_versions/archive.haml diff --git a/app/controllers/admin/contact_versions_controller.rb b/app/controllers/admin/contact_versions_controller.rb index cd49011a0..d6c7deb9e 100644 --- a/app/controllers/admin/contact_versions_controller.rb +++ b/app/controllers/admin/contact_versions_controller.rb @@ -3,37 +3,30 @@ class Admin::ContactVersionsController < AdminController def index params[:q] ||= {} + @q = ContactVersion.search(params[:q]) @versions = @q.result.page(params[:page]) - versions = ContactVersion.all + whereS = "1=1" - normalize_search_parameters do - @q = versions.search(params[:q]) - @versions = @q.result.page(params[:page]) + params[:q].each do |key, value| + next if value.empty? + whereS += create_where_string(key, value) end + versions = ContactVersion.includes(:item).where(whereS) + @q = versions.search(params[:q]) + @versions = @q.result.page(params[:page]) @versions = @versions.per(params[:results_per_page]) if params[:results_per_page].to_i > 0 + end def search render json: ContactVersion.search_by_query(params[:q]) end - def normalize_search_parameters - ca_cache = params[:q][:created_at_lteq] - begin - end_time = params[:q][:created_at_lteq].try(:to_date) - params[:q][:created_at_lteq] = end_time.try(:end_of_day) - end_time = params[:q][:updated_at_gteq].try(:to_date) - params[:q][:updated_at_lteq] = end_time.try(:end_of_day) - rescue - logger.warn('Invalid date') - end - - yield - - params[:q][:created_at_lteq] = ca_cache + def create_where_string(key, value) + " AND object->>'#{key}' ~ '#{value}'" end end diff --git a/app/controllers/admin/domain_versions_controller.rb b/app/controllers/admin/domain_versions_controller.rb index 985c680f9..6aca493ea 100644 --- a/app/controllers/admin/domain_versions_controller.rb +++ b/app/controllers/admin/domain_versions_controller.rb @@ -1,18 +1,48 @@ class Admin::DomainVersionsController < AdminController load_and_authorize_resource - # rubocop:disable Style/GuardClause def index - # @domain = Domain.where(id: params[:domain_id]).includes({versions: :item}).first - # @versions = @domain.versions + params[:q] ||= {} + + @q = DomainVersion.includes(:item).search(params[:q]) + @versions = @q.result.page(params[:page]) + search_params = params[:q].deep_dup + + if search_params[:registrant] + registrant = Contact.find_by_name(search_params[:registrant]) + search_params.delete(:registrant) + end + + if search_params[:registrar] + registrar = Registrar.find_by_name(search_params[:registrar]) + search_params.delete(:registrar) + end + + whereS = "1=1" + + search_params.each do |key, value| + next if value.empty? + whereS += create_where_string(key, value) + end + + whereS += " AND object->>'registrant_id' ~ '#{registrant.id}'" if registrant + whereS += " AND object->>'registrar_id' ~ '#{registrar.id}'" if registrar + + versions = DomainVersion.includes(:item).where(whereS) + @q = versions.search(params[:q]) + @versions = @q.result.page(params[:page]) + @versions = @versions.per(params[:results_per_page]) if params[:results_per_page].to_i > 0 + render "admin/domain_versions/archive" - # Depricated it had to load legal document. We may do it by parsing and adding link. - # if @domain.pending_json.present? - # frame = Nokogiri::XML(@domain.pending_json['frame']) - # @pending_user = User.find(@domain.pending_json['current_user_id']) - # @pending_domain = Epp::Domain.find(@domain.id) - # @pending_domain.update(frame, @pending_user, false) - # end end - # rubocop:enable Style/GuardClause + + def search + render json: DomainVersion.search_by_query(params[:q]) end + + def create_where_string(key, value) + " AND object->>'#{key}' ~ '#{value}'" + end + + +end diff --git a/app/validators/domain_name_validator.rb b/app/validators/domain_name_validator.rb index e39437f2b..be83f0835 100644 --- a/app/validators/domain_name_validator.rb +++ b/app/validators/domain_name_validator.rb @@ -38,7 +38,7 @@ class DomainNameValidator < ActiveModel::EachValidator def validate_blocked(value) return true unless value - return false if BlockedDomain.where("names @> ?::varchar[]", "{#{value}}").count > 0 + return false if BlockedDomain.where(name: value).count > 0 ZonefileSetting.where(origin: value).count == 0 end end diff --git a/app/views/admin/contact_versions/index.haml b/app/views/admin/contact_versions/index.haml index 195b90783..00cdb53ee 100644 --- a/app/views/admin/contact_versions/index.haml +++ b/app/views/admin/contact_versions/index.haml @@ -1,4 +1,40 @@ -= render 'shared/title', name: t(:contact_versions) += render 'shared/title', name: t(:contacts) + +.row + .col-md-12 + = search_form_for [:admin, @q], html: { style: 'margin-bottom: 0;', class: 'js-form', autocomplete: 'off' } do |f| + .row + .col-md-3 + .form-group + = f.label :name + = f.search_field :name, value: params[:q][:name], class: 'form-control', placeholder: t(:name) + .col-md-3 + .form-group + = f.label :id + = f.search_field :id, value: params[:q][:id], class: 'form-control', placeholder: t(:id) + .col-md-3 + .form-group + = f.label :ident + = f.search_field :ident, value: params[:q][:ident], class: 'form-control', placeholder: t(:ident) + .col-md-3 + .form-group + = f.label :phone + = f.search_field :phone, value: params[:q][:phone], class: 'form-control', placeholder: t(:phone) + .row + .col-md-3 + .col-md-3 + .col-md-3 + .form-group + = label_tag t(:results_per_page) + = text_field_tag :results_per_page, params[:results_per_page], class: 'form-control', placeholder: t(:results_per_page) + .col-md-3{style: 'padding-top: 25px;'} + %button.btn.btn-primary +   + %span.glyphicon.glyphicon-search +   + %button.btn.btn-default.js-reset-form + = t(:clear_fields) +%hr .row @@ -8,30 +44,30 @@ %thead %tr %th{class: 'col-xs-2'} - = sort_link(@q, 'name', t(:name)) + = t(:name) %th{class: 'col-xs-2'} - = sort_link(@q, 'code', t(:id)) + = t(:id) %th{class: 'col-xs-2'} - = sort_link(@q, 'ident', t(:ident)) + = t(:ident) %th{class: 'col-xs-2'} - = sort_link(@q, 'registrar_name', t(:registrar)) + = t(:phone) %th{class: 'col-xs-2'} - = sort_link(@q, 'email', t(:created_at)) + = t(:registrar) %th{class: 'col-xs-2'} - = sort_link(@q, 'action', t(:action)) + = t(:action) %tbody - @versions.each do |version| %tr %td= version.reify.name %td= version.reify.code %td= ident_for(version.reify) - %td= l(version.created_at, format: :short) + %td= version.reify.phone %td - if version.reify.registrar = link_to(version.reify.registrar, admin_registrar_path(version.reify.registrar)) - %td= version.event + .row .col-md-6 = paginate @versions diff --git a/app/views/admin/domain_versions/archive.haml b/app/views/admin/domain_versions/archive.haml new file mode 100644 index 000000000..03334ca64 --- /dev/null +++ b/app/views/admin/domain_versions/archive.haml @@ -0,0 +1,73 @@ += render 'shared/title', name: t(:domains) + +.row + .col-md-12 + = search_form_for [:admin, @q], html: { style: 'margin-bottom: 0;', class: 'js-form', autocomplete: 'off' } do |f| + .row + .col-md-3 + .form-group + = label_tag :name + = f.search_field :name, value: params[:q][:name], class: 'form-control', placeholder: t(:name) + .col-md-3 + .form-group + = label_tag :registrant + = f.search_field :registrant, value: params[:q][:registrant], class: 'form-control', placeholder: t(:registrant) + .col-md-3 + .form-group + = label_tag t(:registrar) + = f.search_field :registrar, value: params[:q][:registrar], class: 'form-control', placeholder: t(:registrant) + .col-md-3 + .form-group + = label_tag t(:results_per_page) + = text_field_tag :results_per_page, params[:results_per_page], class: 'form-control', placeholder: t(:results_per_page) + .row + .col-md-3 + .col-md-3 + .col-md-3 + .col-md-3{style: 'padding-top: 25px;'} + %button.btn.btn-primary +   + %span.glyphicon.glyphicon-search +   + %button.btn.btn-default.js-reset-form + = t(:clear_fields) +%hr + + +.row + .col-md-12 + .table-responsive + %table.table.table-hover.table-bordered.table-condensed + %thead + %tr + %th{class: 'col-xs-2'} + = t(:name) + %th{class: 'col-xs-2'} + = t(:registrant) + %th{class: 'col-xs-2'} + = t(:registrar) + %th{class: 'col-xs-2'} + = t(:action) + %tbody + - @versions.each do |version| + %tr + %td= version.reify.name + %td + - if version.reify.registrant.ident + = link_to(version.reify.registrant, admin_registrant_path(version.reify.registrant)) + %td + - if version.reify.registrar + = link_to(version.reify.registrar, admin_registrar_path(version.reify.registrar)) + %td= version.event + + +.row + .col-md-6 + = paginate @versions + .col-md-6.text-right + + +:coffee + $(".js-reset-form").on "click", (e) -> + e.preventDefault(); + window.location = "#{admin_domain_versions_path}" From f77e599e2f44f07f953c62ab6216cccb57374964 Mon Sep 17 00:00:00 2001 From: Stas Date: Fri, 12 Feb 2016 18:08:39 +0200 Subject: [PATCH 05/11] 108869472-empty_row_fix --- app/views/admin/domain_versions/archive.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/admin/domain_versions/archive.haml b/app/views/admin/domain_versions/archive.haml index 03334ca64..f4b87cbae 100644 --- a/app/views/admin/domain_versions/archive.haml +++ b/app/views/admin/domain_versions/archive.haml @@ -53,7 +53,7 @@ %tr %td= version.reify.name %td - - if version.reify.registrant.ident + - if version.reify.registrant = link_to(version.reify.registrant, admin_registrant_path(version.reify.registrant)) %td - if version.reify.registrar From d3ad01f1a2d98305629dd71c21aca178a42dd725 Mon Sep 17 00:00:00 2001 From: Stas Date: Wed, 2 Mar 2016 14:36:35 +0200 Subject: [PATCH 06/11] 18869472-archive_changes --- .../admin/domain_versions_controller.rb | 11 +++- app/views/admin/contact_versions/index.haml | 3 + app/views/admin/domain_versions/archive.haml | 12 +++- app/views/admin/domain_versions/show.haml | 63 +++++++++++++++++++ 4 files changed, 85 insertions(+), 4 deletions(-) create mode 100644 app/views/admin/domain_versions/show.haml diff --git a/app/controllers/admin/domain_versions_controller.rb b/app/controllers/admin/domain_versions_controller.rb index 6aca493ea..6a3a89d9f 100644 --- a/app/controllers/admin/domain_versions_controller.rb +++ b/app/controllers/admin/domain_versions_controller.rb @@ -22,7 +22,12 @@ class Admin::DomainVersionsController < AdminController search_params.each do |key, value| next if value.empty? - whereS += create_where_string(key, value) + case key + when 'event' + whereS += " AND event = '#{value}'" + else + whereS += create_where_string(key, value) + end end whereS += " AND object->>'registrant_id' ~ '#{registrant.id}'" if registrant @@ -36,6 +41,10 @@ class Admin::DomainVersionsController < AdminController end + def show + @version = DomainVersion.find(params[:id]) + end + def search render json: DomainVersion.search_by_query(params[:q]) end diff --git a/app/views/admin/contact_versions/index.haml b/app/views/admin/contact_versions/index.haml index 00cdb53ee..2384503bd 100644 --- a/app/views/admin/contact_versions/index.haml +++ b/app/views/admin/contact_versions/index.haml @@ -53,6 +53,8 @@ = t(:phone) %th{class: 'col-xs-2'} = t(:registrar) + %th{class: 'col-xs-2'} + = t(:action_date) %th{class: 'col-xs-2'} = t(:action) %tbody @@ -65,6 +67,7 @@ %td - if version.reify.registrar = link_to(version.reify.registrar, admin_registrar_path(version.reify.registrar)) + %td= l(version.created_at, format: :short) %td= version.event diff --git a/app/views/admin/domain_versions/archive.haml b/app/views/admin/domain_versions/archive.haml index f4b87cbae..94ed66658 100644 --- a/app/views/admin/domain_versions/archive.haml +++ b/app/views/admin/domain_versions/archive.haml @@ -18,12 +18,15 @@ = f.search_field :registrar, value: params[:q][:registrar], class: 'form-control', placeholder: t(:registrant) .col-md-3 .form-group - = label_tag t(:results_per_page) - = text_field_tag :results_per_page, params[:results_per_page], class: 'form-control', placeholder: t(:results_per_page) + = label_tag :action + = select_tag '[q][event]', options_for_select([['Update', 'update'], ['Destroy', 'destroy']], params[:q][:event]), { multiple: false, placeholder: t(:choose), class: 'form-control js-combobox' } .row .col-md-3 .col-md-3 .col-md-3 + .form-group + = label_tag t(:results_per_page) + = text_field_tag :results_per_page, params[:results_per_page], class: 'form-control', placeholder: t(:results_per_page) .col-md-3{style: 'padding-top: 25px;'} %button.btn.btn-primary   @@ -46,18 +49,21 @@ = t(:registrant) %th{class: 'col-xs-2'} = t(:registrar) + %th{class: 'col-xs-2'} + = t(:action_date) %th{class: 'col-xs-2'} = t(:action) %tbody - @versions.each do |version| %tr - %td= version.reify.name + %td= link_to(version.reify.name, admin_domain_version_path(version.id)) %td - if version.reify.registrant = link_to(version.reify.registrant, admin_registrant_path(version.reify.registrant)) %td - if version.reify.registrar = link_to(version.reify.registrar, admin_registrar_path(version.reify.registrar)) + %td= l(version.created_at, format: :short) %td= version.event diff --git a/app/views/admin/domain_versions/show.haml b/app/views/admin/domain_versions/show.haml new file mode 100644 index 000000000..8e3834e17 --- /dev/null +++ b/app/views/admin/domain_versions/show.haml @@ -0,0 +1,63 @@ += render 'shared/title', name: @version.reify.name + + +- if @version + - children = HashWithIndifferentAccess.new(@version.children) + - nameservers = Nameserver.where(id: children[:nameservers]) + - tech_contacts = Contact.where(id: children[:tech_contacts]) + - admin_contacts = Contact.where(id: children[:admin_contacts]) + - registrant = Contact.where(id: children[:registrant]) + - event = @version.event + - creator = plain_username(@version.terminator) + + +.row + .col-md-12 + .panel.panel-default + .panel-heading + %h3.panel-title + = l(@version.reify.updated_at, format: :short) + = event + = creator + .panel-body + %dl.dl-horizontal + %dt= t(:name) + %dd= link_to(@version.reify.name, admin_domain_path(@version.item_id)) + %dt= t(:statuses) + %dd + - if @version.reify.statuses.present? + - @version.reify.statuses.each do |s| + = s + %dt= t(:registrant) + %dd + - registrant.each do |r| + = r[:name] + = r[:phone] + = r[:email] + = r[:code] + %br + %dt= t(:admin_contacts) + %dd + - admin_contacts.each do |r| + = r[:name] + = r[:phone] + = r[:email] + = r[:code] + %br + %dt= t(:tech_contacts) + %dd + - tech_contacts.each do |r| + = r[:name] + = r[:phone] + = r[:email] + = r[:code] + %br + %dt= t(:nameservers) + %dd + - nameservers.each do |ns| + = ns[:hostname] + = ns[:ipv4] + = ns[:ipv6] + %br + %dt= t(:registrar) + %dd= @version.reify.registrar.name \ No newline at end of file From 8f5a73a3ec92261191f724b8df5cf17163162966 Mon Sep 17 00:00:00 2001 From: Stas Date: Mon, 7 Mar 2016 18:07:11 +0200 Subject: [PATCH 07/11] 108869472-navigayion_list_added --- .../admin/domain_versions_controller.rb | 4 +++ app/views/admin/domain_versions/show.haml | 28 +++++++++++++++++-- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/app/controllers/admin/domain_versions_controller.rb b/app/controllers/admin/domain_versions_controller.rb index 6a3a89d9f..4a309e9af 100644 --- a/app/controllers/admin/domain_versions_controller.rb +++ b/app/controllers/admin/domain_versions_controller.rb @@ -42,7 +42,11 @@ class Admin::DomainVersionsController < AdminController end def show + per_page = 7 @version = DomainVersion.find(params[:id]) + @q = DomainVersion.where(item_id: @version.item_id).search + @versions = @q.result.page(params[:page]) + @versions = @versions.per(per_page) end def search diff --git a/app/views/admin/domain_versions/show.haml b/app/views/admin/domain_versions/show.haml index 8e3834e17..81c144c4c 100644 --- a/app/views/admin/domain_versions/show.haml +++ b/app/views/admin/domain_versions/show.haml @@ -1,6 +1,12 @@ +- content_for :actions do + = link_to(t(:previous), admin_domain_path(@version.item_id), class: 'btn btn-primary') + = link_to(t(:next), admin_domain_path(@version.item_id), method: :get, class: 'btn btn btn-default') + = render 'shared/title', name: @version.reify.name + + - if @version - children = HashWithIndifferentAccess.new(@version.children) - nameservers = Nameserver.where(id: children[:nameservers]) @@ -12,8 +18,8 @@ .row - .col-md-12 - .panel.panel-default + .col-md-8 + .panel.panel-default{:style => "min-height:400px;"} .panel-heading %h3.panel-title = l(@version.reify.updated_at, format: :short) @@ -60,4 +66,20 @@ = ns[:ipv6] %br %dt= t(:registrar) - %dd= @version.reify.registrar.name \ No newline at end of file + %dd= @version.reify.registrar.name + .col-md-4 + .panel.panel-default{:style => "min-height:400px;"} + %ul.nav.nav-pills.nav-stacked + - @versions.each do |vs| + - if vs.id == @version.id + %li.active + = link_to admin_domain_version_path(vs.id) do + = l(vs.reify.updated_at, format: :short) + = vs.event + - else + %li + = link_to admin_domain_version_path(vs.id) do + = l(vs.reify.updated_at, format: :short) + = vs.event + %span{:style => "padding-left:10px;position: absolute; bottom: 10px;"} + = paginate @versions From 8867644f169f72f1e0a16bd0da96e91f6ea78ee9 Mon Sep 17 00:00:00 2001 From: Stas Date: Sun, 13 Mar 2016 15:08:03 +0200 Subject: [PATCH 08/11] 108869472-styles --- app/views/admin/domain_versions/show.haml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/app/views/admin/domain_versions/show.haml b/app/views/admin/domain_versions/show.haml index 81c144c4c..1ccc89912 100644 --- a/app/views/admin/domain_versions/show.haml +++ b/app/views/admin/domain_versions/show.haml @@ -1,12 +1,5 @@ -- content_for :actions do - = link_to(t(:previous), admin_domain_path(@version.item_id), class: 'btn btn-primary') - = link_to(t(:next), admin_domain_path(@version.item_id), method: :get, class: 'btn btn btn-default') - = render 'shared/title', name: @version.reify.name - - - - if @version - children = HashWithIndifferentAccess.new(@version.children) - nameservers = Nameserver.where(id: children[:nameservers]) @@ -67,6 +60,14 @@ %br %dt= t(:registrar) %dd= @version.reify.registrar.name + %span{:style => "padding-right:10px; float: right; bottom: 10px;"} + = link_to(t(:previous), + admin_domain_path(@version.item_id), + class: 'btn btn-primary') + = link_to(t(:next), + admin_domain_path(@version.item_id), + class: 'btn btn-default') + .col-md-4 .panel.panel-default{:style => "min-height:400px;"} %ul.nav.nav-pills.nav-stacked @@ -81,5 +82,5 @@ = link_to admin_domain_version_path(vs.id) do = l(vs.reify.updated_at, format: :short) = vs.event - %span{:style => "padding-left:10px;position: absolute; bottom: 10px;"} + %span{:style => "padding-left:10px; position: absolute; bottom: 10px;"} = paginate @versions From a42049e17060980350019d7d1b4f8fb50a7f81d9 Mon Sep 17 00:00:00 2001 From: Stas Date: Mon, 14 Mar 2016 13:54:00 +0200 Subject: [PATCH 09/11] 108869472-template_changes --- .../admin/contact_versions_controller.rb | 18 +++- app/views/admin/contact_versions/index.haml | 5 +- app/views/admin/contact_versions/show.haml | 96 +++++++++++++++++++ app/views/admin/domain_versions/archive.haml | 2 +- app/views/admin/domain_versions/show.haml | 22 +++-- config/locales/en.yml | 2 + 6 files changed, 134 insertions(+), 11 deletions(-) create mode 100644 app/views/admin/contact_versions/show.haml diff --git a/app/controllers/admin/contact_versions_controller.rb b/app/controllers/admin/contact_versions_controller.rb index d6c7deb9e..59aedfcac 100644 --- a/app/controllers/admin/contact_versions_controller.rb +++ b/app/controllers/admin/contact_versions_controller.rb @@ -6,12 +6,18 @@ class Admin::ContactVersionsController < AdminController @q = ContactVersion.search(params[:q]) @versions = @q.result.page(params[:page]) + search_params = params[:q].deep_dup whereS = "1=1" - params[:q].each do |key, value| + search_params.each do |key, value| next if value.empty? - whereS += create_where_string(key, value) + case key + when 'event' + whereS += " AND event = '#{value}'" + else + whereS += create_where_string(key, value) + end end versions = ContactVersion.includes(:item).where(whereS) @@ -21,6 +27,14 @@ class Admin::ContactVersionsController < AdminController end + def show + per_page = 7 + @version = ContactVersion.find(params[:id]) + @q = ContactVersion.where(item_id: @version.item_id).search + @versions = @q.result.page(params[:page]) + @versions = @versions.per(per_page) + end + def search render json: ContactVersion.search_by_query(params[:q]) end diff --git a/app/views/admin/contact_versions/index.haml b/app/views/admin/contact_versions/index.haml index 2384503bd..f7602c565 100644 --- a/app/views/admin/contact_versions/index.haml +++ b/app/views/admin/contact_versions/index.haml @@ -23,6 +23,9 @@ .row .col-md-3 .col-md-3 + .form-group + = label_tag :action + = select_tag '[q][event]', options_for_select([['Update', 'update'], ['Destroy', 'destroy']], params[:q][:event]), { include_blank:true, multiple: false, placeholder: t(:choose), class: 'form-control js-combobox' } .col-md-3 .form-group = label_tag t(:results_per_page) @@ -60,7 +63,7 @@ %tbody - @versions.each do |version| %tr - %td= version.reify.name + %td= link_to(version.reify.name, admin_contact_version_path(version.id)) %td= version.reify.code %td= ident_for(version.reify) %td= version.reify.phone diff --git a/app/views/admin/contact_versions/show.haml b/app/views/admin/contact_versions/show.haml new file mode 100644 index 000000000..13aeb327a --- /dev/null +++ b/app/views/admin/contact_versions/show.haml @@ -0,0 +1,96 @@ += render 'shared/title', name: @version.reify.name + +.row + .col-md-8 + .panel.panel-default{:style => "min-height:420px;"} + .panel-heading + %h3.panel-title + = l(@version.reify.updated_at, format: :short) + = @version.event + = plain_username(@version.terminator) + .panel-body + %dl.dl-horizontal + %dt= t(:id) + %dd= @version.reify.code + + %dt= t(:ident) + %dd= ident_for(@version.reify) + + %dt= t(:email) + %dd= @version.reify.email + + %dt= t(:phone) + %dd= @version.reify.phone + + - if @version.reify.fax + %dt= t(:fax) + %dd= @version.reify.fax + + %br + + %dt= t(:created) + %dd + = l(@version.reify.created_at, format: :short) + + %dt= t(:updated) + %dd + = l(@version.reify.updated_at, format: :short) + + %dt= t(:registrar) + %dd + - if @version.reify.registrar.present? + = link_to(@version.reify.registrar, admin_registrar_path(@version.reify.registrar)) + + %dl.dl-horizontal + - if @version.reify.org_name.present? + %dt= t(:org_name) + %dd= @version.reify.org_name + + %dt= t(:street) + %dd= @version.reify.street.to_s.gsub("\n", '
').html_safe + + %dt= t(:city) + %dd= @version.reify.city + + %dt= t(:zip) + %dd= @version.reify.zip + + %dt= t(:state) + %dd= @version.reify.state + + %dt= t(:country) + %dd= @version.reify.country + + + %span{:style => "padding-right:10px; float: right;"} + - if @version.previous + = link_to(t(:previous), + admin_contact_version_path(@version.previous.id), + class: 'btn btn-primary') + - else + %a.btn.btn-primary.disabled{:href => "#"} + %span= t(:previous) + - if @version.next + = link_to(t(:next), + admin_contact_version_path(@version.next.id), + class: 'btn btn-default') + - else + %a.btn.btn-default.disabled{:href => "#"} + %span= t(:next) + + .col-md-4 + .panel.panel-default{:style => "min-height:420px;"} + %ul.nav.nav-pills.nav-stacked + - @versions.each do |vs| + - if vs.id == @version.id + %li.active + = link_to admin_contact_version_path(vs.id) do + = l(vs.reify.updated_at, format: :short) + = vs.event + - else + %li + = link_to admin_contact_version_path(vs.id) do + = l(vs.reify.updated_at, format: :short) + = vs.event + %span{:style => "padding-left:10px; position: absolute; bottom: 10px;"} + = paginate @versions \ No newline at end of file diff --git a/app/views/admin/domain_versions/archive.haml b/app/views/admin/domain_versions/archive.haml index 94ed66658..6a8df123c 100644 --- a/app/views/admin/domain_versions/archive.haml +++ b/app/views/admin/domain_versions/archive.haml @@ -19,7 +19,7 @@ .col-md-3 .form-group = label_tag :action - = select_tag '[q][event]', options_for_select([['Update', 'update'], ['Destroy', 'destroy']], params[:q][:event]), { multiple: false, placeholder: t(:choose), class: 'form-control js-combobox' } + = select_tag '[q][event]', options_for_select([['Update', 'update'], ['Destroy', 'destroy']], params[:q][:event]), { include_blank:true, multiple: false, placeholder: t(:choose), class: 'form-control js-combobox' } .row .col-md-3 .col-md-3 diff --git a/app/views/admin/domain_versions/show.haml b/app/views/admin/domain_versions/show.haml index 1ccc89912..5b11d15fb 100644 --- a/app/views/admin/domain_versions/show.haml +++ b/app/views/admin/domain_versions/show.haml @@ -60,13 +60,21 @@ %br %dt= t(:registrar) %dd= @version.reify.registrar.name - %span{:style => "padding-right:10px; float: right; bottom: 10px;"} - = link_to(t(:previous), - admin_domain_path(@version.item_id), - class: 'btn btn-primary') - = link_to(t(:next), - admin_domain_path(@version.item_id), - class: 'btn btn-default') + %span{:style => "padding-right:10px; padding-top:40px; float: right; bottom: 10px;"} + - if @version.previous + = link_to(t(:previous), + admin_domain_version_path(@version.previous.id), + class: 'btn btn-primary') + - else + %a.btn.btn-primary.disabled{:href => "#"} + %span= t(:previous) + - if @version.next + = link_to(t(:next), + admin_domain_version_path(@version.next.id), + class: 'btn btn-default') + - else + %a.btn.btn-default.disabled{:href => "#"} + %span= t(:next) .col-md-4 .panel.panel-default{:style => "min-height:400px;"} diff --git a/config/locales/en.yml b/config/locales/en.yml index 16e643b16..a5d441e2e 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -926,3 +926,5 @@ en: if_auth_info_is_left_empty_it_will_be_auto_generated: 'If auth info is left empty, it will be auto generated.' each_domain_name_must_end_with_colon_sign: 'Each domain name must end with colon (:) sign.' expiration_remind_subject: 'The %{name} domain has expired' + next: 'Next' + previous: 'Previous' From 518b7139f0f235a17b33399aba1b5f1397b7c498 Mon Sep 17 00:00:00 2001 From: Stas Date: Wed, 16 Mar 2016 11:46:47 +0200 Subject: [PATCH 10/11] 108869472-conditions_for_corrupted --- app/views/admin/contact_versions/index.haml | 21 ++++++++++---------- app/views/admin/domain_versions/archive.haml | 21 ++++++++++---------- app/views/admin/domain_versions/show.haml | 2 +- 3 files changed, 23 insertions(+), 21 deletions(-) diff --git a/app/views/admin/contact_versions/index.haml b/app/views/admin/contact_versions/index.haml index f7602c565..68e74c547 100644 --- a/app/views/admin/contact_versions/index.haml +++ b/app/views/admin/contact_versions/index.haml @@ -62,16 +62,17 @@ = t(:action) %tbody - @versions.each do |version| - %tr - %td= link_to(version.reify.name, admin_contact_version_path(version.id)) - %td= version.reify.code - %td= ident_for(version.reify) - %td= version.reify.phone - %td - - if version.reify.registrar - = link_to(version.reify.registrar, admin_registrar_path(version.reify.registrar)) - %td= l(version.created_at, format: :short) - %td= version.event + - if version.reify + %tr + %td= link_to(version.reify.name, admin_contact_version_path(version.id)) + %td= version.reify.code + %td= ident_for(version.reify) + %td= version.reify.phone + %td + - if version.reify.registrar + = link_to(version.reify.registrar, admin_registrar_path(version.reify.registrar)) + %td= l(version.created_at, format: :short) + %td= version.event .row diff --git a/app/views/admin/domain_versions/archive.haml b/app/views/admin/domain_versions/archive.haml index 6a8df123c..f50f18d06 100644 --- a/app/views/admin/domain_versions/archive.haml +++ b/app/views/admin/domain_versions/archive.haml @@ -55,16 +55,17 @@ = t(:action) %tbody - @versions.each do |version| - %tr - %td= link_to(version.reify.name, admin_domain_version_path(version.id)) - %td - - if version.reify.registrant - = link_to(version.reify.registrant, admin_registrant_path(version.reify.registrant)) - %td - - if version.reify.registrar - = link_to(version.reify.registrar, admin_registrar_path(version.reify.registrar)) - %td= l(version.created_at, format: :short) - %td= version.event + - if version.reify + %tr + %td= link_to(version.reify.name, admin_domain_version_path(version.id)) + %td + - if version.reify.registrant + = link_to(version.reify.registrant, admin_registrant_path(version.reify.registrant)) + %td + - if version.reify.registrar + = link_to(version.reify.registrar, admin_registrar_path(version.reify.registrar)) + %td= l(version.created_at, format: :short) + %td= version.event .row diff --git a/app/views/admin/domain_versions/show.haml b/app/views/admin/domain_versions/show.haml index 5b11d15fb..eeabed897 100644 --- a/app/views/admin/domain_versions/show.haml +++ b/app/views/admin/domain_versions/show.haml @@ -80,7 +80,7 @@ .panel.panel-default{:style => "min-height:400px;"} %ul.nav.nav-pills.nav-stacked - @versions.each do |vs| - - if vs.id == @version.id + - if vs.id == @version.id and vs.reify %li.active = link_to admin_domain_version_path(vs.id) do = l(vs.reify.updated_at, format: :short) From 7ba760a884ddb579eace7b78b8e048062db4d143 Mon Sep 17 00:00:00 2001 From: Stas Date: Wed, 16 Mar 2016 18:09:53 +0200 Subject: [PATCH 11/11] 108869472-changes_for_real_data --- app/controllers/admin/contact_versions_controller.rb | 2 +- app/controllers/admin/domain_versions_controller.rb | 10 +++++----- app/views/admin/contact_versions/show.haml | 6 +++--- app/views/admin/domain_versions/show.haml | 6 +++--- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/app/controllers/admin/contact_versions_controller.rb b/app/controllers/admin/contact_versions_controller.rb index 59aedfcac..215d6203c 100644 --- a/app/controllers/admin/contact_versions_controller.rb +++ b/app/controllers/admin/contact_versions_controller.rb @@ -30,7 +30,7 @@ class Admin::ContactVersionsController < AdminController def show per_page = 7 @version = ContactVersion.find(params[:id]) - @q = ContactVersion.where(item_id: @version.item_id).search + @q = ContactVersion.where(item_id: @version.item_id).order(created_at: :asc).search @versions = @q.result.page(params[:page]) @versions = @versions.per(per_page) end diff --git a/app/controllers/admin/domain_versions_controller.rb b/app/controllers/admin/domain_versions_controller.rb index 4a309e9af..0d85e047f 100644 --- a/app/controllers/admin/domain_versions_controller.rb +++ b/app/controllers/admin/domain_versions_controller.rb @@ -9,12 +9,12 @@ class Admin::DomainVersionsController < AdminController search_params = params[:q].deep_dup if search_params[:registrant] - registrant = Contact.find_by_name(search_params[:registrant]) + registrant = Contact.find_by(name: search_params[:registrant]) search_params.delete(:registrant) end if search_params[:registrar] - registrar = Registrar.find_by_name(search_params[:registrar]) + registrar = Registrar.find_by(name: search_params[:registrar]) search_params.delete(:registrar) end @@ -30,8 +30,8 @@ class Admin::DomainVersionsController < AdminController end end - whereS += " AND object->>'registrant_id' ~ '#{registrant.id}'" if registrant - whereS += " AND object->>'registrar_id' ~ '#{registrar.id}'" if registrar + whereS += " AND object->>'registrant_id' = '#{registrant.id}'" if registrant + whereS += " AND object->>'registrar_id' = '#{registrar.id}'" if registrar versions = DomainVersion.includes(:item).where(whereS) @q = versions.search(params[:q]) @@ -44,7 +44,7 @@ class Admin::DomainVersionsController < AdminController def show per_page = 7 @version = DomainVersion.find(params[:id]) - @q = DomainVersion.where(item_id: @version.item_id).search + @q = DomainVersion.where(item_id: @version.item_id).order(created_at: :desc).search @versions = @q.result.page(params[:page]) @versions = @versions.per(per_page) end diff --git a/app/views/admin/contact_versions/show.haml b/app/views/admin/contact_versions/show.haml index 13aeb327a..555c301dc 100644 --- a/app/views/admin/contact_versions/show.haml +++ b/app/views/admin/contact_versions/show.haml @@ -5,7 +5,7 @@ .panel.panel-default{:style => "min-height:420px;"} .panel-heading %h3.panel-title - = l(@version.reify.updated_at, format: :short) + = l(@version.created_at, format: :short) = @version.event = plain_username(@version.terminator) .panel-body @@ -85,12 +85,12 @@ - if vs.id == @version.id %li.active = link_to admin_contact_version_path(vs.id) do - = l(vs.reify.updated_at, format: :short) + = l(vs.created_at, format: :short) = vs.event - else %li = link_to admin_contact_version_path(vs.id) do - = l(vs.reify.updated_at, format: :short) + = l(vs.created_at, format: :short) = vs.event %span{:style => "padding-left:10px; position: absolute; bottom: 10px;"} = paginate @versions \ No newline at end of file diff --git a/app/views/admin/domain_versions/show.haml b/app/views/admin/domain_versions/show.haml index eeabed897..e6076a3db 100644 --- a/app/views/admin/domain_versions/show.haml +++ b/app/views/admin/domain_versions/show.haml @@ -15,7 +15,7 @@ .panel.panel-default{:style => "min-height:400px;"} .panel-heading %h3.panel-title - = l(@version.reify.updated_at, format: :short) + = l(@version.created_at, format: :short) = event = creator .panel-body @@ -83,12 +83,12 @@ - if vs.id == @version.id and vs.reify %li.active = link_to admin_domain_version_path(vs.id) do - = l(vs.reify.updated_at, format: :short) + = l(vs.created_at, format: :short) = vs.event - else %li = link_to admin_domain_version_path(vs.id) do - = l(vs.reify.updated_at, format: :short) + = l(vs.created_at, format: :short) = vs.event %span{:style => "padding-left:10px; position: absolute; bottom: 10px;"} = paginate @versions