diff --git a/app/controllers/admin/contact_versions_controller.rb b/app/controllers/admin/contact_versions_controller.rb index dca7f8e7d..2538350be 100644 --- a/app/controllers/admin/contact_versions_controller.rb +++ b/app/controllers/admin/contact_versions_controller.rb @@ -30,12 +30,13 @@ class Admin::ContactVersionsController < AdminController def show per_page = 7 @version = ContactVersion.find(params[:id]) - @versions = ContactVersion.where(item_id: @version.item_id).order(id: :desc) + @versions = ContactVersion.where(item_id: @version.item_id).order(created_at: :desc, id: :desc) + @versions_map = @versions.all.map(&:id) # what we do is calc amount of results until needed version # then we cacl which page it is if params[:page].blank? - counter = @versions.where("id > ?", @version.id).count + counter = @versions_map.index(@version.id) + 1 page = counter / per_page page += 1 if (counter % per_page) != 0 params[:page] = page @@ -49,7 +50,7 @@ class Admin::ContactVersionsController < AdminController end def create_where_string(key, value) - " AND object->>'#{key}' ILIKE '%#{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 6eb47fa64..1ca67b33d 100644 --- a/app/controllers/admin/domain_versions_controller.rb +++ b/app/controllers/admin/domain_versions_controller.rb @@ -48,7 +48,7 @@ class Admin::DomainVersionsController < AdminController def show per_page = 7 @version = DomainVersion.find(params[:id]) - @versions = DomainVersion.where(item_id: @version.item_id).order(id: :desc) + @versions = DomainVersion.where(item_id: @version.item_id).order(created_at: :desc, id: :desc) @versions_map = @versions.all.map(&:id) # what we do is calc amount of results until needed version diff --git a/app/views/admin/contact_versions/show.haml b/app/views/admin/contact_versions/show.haml index dbf38dba9..fc5c48352 100644 --- a/app/views/admin/contact_versions/show.haml +++ b/app/views/admin/contact_versions/show.haml @@ -81,27 +81,27 @@ %span{:style => "padding-right:10px; float: right;"} - - if @version.previous + - if (prev = @versions_map[(@versions_map.index(@version.id) - 1)]) && @versions_map.index(@version.id) != 0 = link_to(t(:previous), - admin_contact_version_path(@version.previous.id), + admin_contact_version_path(prev), class: 'btn btn-primary') - else %a.btn.btn-primary.disabled{:href => "#"} %span= t(:previous) - - if @version.next + - if nxt = @versions_map[(@versions_map.index(@version.id) + 1)] = link_to(t(:next), - admin_contact_version_path(@version.next.id), + admin_contact_version_path(nxt), class: 'btn btn-default') - else %a.btn.btn-default.disabled{:href => "#"} %span= t(:next) .col-md-4 - .panel.panel-default{:style => "min-height:420px;"} + .panel.panel-default{:style => "min-height:450px;"} %ul.nav.nav-pills.nav-stacked - @versions.each do |vs| %li{class: (vs.id == @version.id) && :active} - = link_to admin_contact_version_path(vs.id, page: params[:page]) do + = link_to admin_contact_version_path(vs) do = l(vs.created_at, format: :short) = vs.event %span{:style => "padding-left:10px; position: absolute; bottom: 10px;"} diff --git a/app/views/admin/domain_versions/show.haml b/app/views/admin/domain_versions/show.haml index bd937b0c5..add5920fb 100644 --- a/app/views/admin/domain_versions/show.haml +++ b/app/views/admin/domain_versions/show.haml @@ -104,7 +104,7 @@ = domain.registrar.name %span{:style => "margin: 20px 20px; clear:both;"} - - if prev = @versions_map[(@versions_map.index(@version.id) - 1)] + - if (prev = @versions_map[(@versions_map.index(@version.id) - 1)]) && @versions_map.index(@version.id) != 0 = link_to(t(:previous), admin_domain_version_path(prev), class: 'btn btn-primary')