diff --git a/app/controllers/management/complaints_controller.rb b/app/controllers/management/complaints_controller.rb index 0f62e0a5d180fb9c4328bcd7d04e7816811b4d57..ee44a7a98196e3aeeba2663366ee49e2fe13bed0 100644 --- a/app/controllers/management/complaints_controller.rb +++ b/app/controllers/management/complaints_controller.rb @@ -22,7 +22,9 @@ class Management::ComplaintsController < ManagementController -DateTime::Infinity.new end @complaints_in_period = @complaints.select{ |complaint| complaint.created_at >= @date_limit} + @n_complaints_in_period = @complaints_in_period.size @complaints_objs = @complaints_in_period.uniq{|x| x.complaintable.name}.size + @complaints_in_period = Kaminari.paginate_array(@complaints_in_period).page(params[:page]).per(25) end def suspend_object diff --git a/app/views/management/complaints/index.html.erb b/app/views/management/complaints/index.html.erb index c7cbec1e814de115bdb55c82e49241a1d774b129..a2d9d0069dfec0d52c350396764acc1d3083aba2 100644 --- a/app/views/management/complaints/index.html.erb +++ b/app/views/management/complaints/index.html.erb @@ -32,7 +32,7 @@ <div class="row"> <div class="col-md-6 col-sm-6"><p>Número de vezes que os usuários marcaram objetos educacionais como spam.</p></div> <div class="col-md-6 col-sm-6"> - <p class="ls-float-right ls-float-none-xs">PerÃodo selecionado: <strong>últimos 30 dias</strong></p></div> + <p class="ls-float-right ls-float-none-xs">PerÃodo selecionado: <strong><%= @date_limit %></strong></p></div> </div> <div class="ls-clearfix"></div> @@ -46,7 +46,7 @@ <h6 class="ls-title-4">Total de denúncias</h6> </div> <div class="ls-box-body"> - <strong><%= @complaints_in_period.size %></strong> + <strong><%= @n_complaints_in_period %></strong> </div> </div> </div> @@ -67,7 +67,7 @@ <div class="ls-tabs-container" id="awesome-tab-content"> <div id="infoAll" class="ls-tab-content" role="tabpanel" style="display: block;"> - <% (@complaints.sort{|x,y| x.created_at <=> y.created_at}.reverse.uniq{ |x| x.complaintable.name}).each do |complaint| %> + <% (@complaints_in_period.sort{|x,y| x.created_at <=> y.created_at}.reverse.uniq{ |x| x.complaintable.name}).each do |complaint| %> <% if Date.parse(complaint.created_at.to_s) >= @date_limit %> <div class="ls-list"> <header class="ls-list-header"> @@ -76,12 +76,12 @@ <% if complaint.complaintable.state == 'suspended' %> <a href="#" class="ls-tag-danger">Objeto Suspenso</a> <% end %> - <small><%= @complaints.select{ |x| x.complaintable.name == complaint.complaintable.name}.map{|x| x.reason }.each_with_object(Hash.new(0)){ |frequency,message| message[frequency] += 1 }.sort_by{ |k,v| v }.reverse.each{|x| x}.map{ |k,v| "#{k}(#{v})"}.join(",")%></small> + <small><%= @complaints_in_period.select{ |x| x.complaintable.name == complaint.complaintable.name}.map{|x| x.reason }.each_with_object(Hash.new(0)){ |frequency,message| message[frequency] += 1 }.sort_by{ |k,v| v }.reverse.each{|x| x}.map{ |k,v| "#{k}(#{v})"}.join(",")%></small> <div data-ls-module="collapse" data-target="#<%= complaint.complaintable.id %>" class="ls-collapse "> <a href="#" class="ls-collapse-header"><h5 class="ls-collapse-title"><strong>Descrições</strong></h5></a> <div class="ls-collapse-body" id="<%= complaint.complaintable.id %>"> - <% @complaints.sort {|left, right| left.description.length <=> right.description.length}.reverse.select{ |x| x.complaintable.name == complaint.complaintable.name }.each do |complaint_description| %> + <% @complaints_in_period.sort {|left, right| left.description.length <=> right.description.length}.reverse.select{ |x| x.complaintable.name == complaint.complaintable.name }.each do |complaint_description| %> <table class="ls-table ls-no-hover ls-table-striped"> <thead> <tr> @@ -146,4 +146,8 @@ </div> +<div class="ls-pagination-filter"> + <%= paginate @complaints_in_period, :theme => 'management_theme', :window => 2 %> +</div> + </div>