]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-3936 Add a pagination mechanism to the Quality Profile page
authorJulien Lancelot <julien.lancelot@gmail.com>
Wed, 21 Nov 2012 13:23:11 +0000 (14:23 +0100)
committerJulien Lancelot <julien.lancelot@gmail.com>
Wed, 21 Nov 2012 13:24:30 +0000 (14:24 +0100)
sonar-server/src/main/webapp/WEB-INF/app/controllers/rules_configuration_controller.rb
sonar-server/src/main/webapp/WEB-INF/app/views/rules_configuration/index.html.erb

index e633cbc1ffe62fec1f92ff5fb52dfffa2e950209..0b6f838924c74f6f63d6df6b38ead26bc4789bef 100644 (file)
@@ -71,6 +71,9 @@ class RulesConfigurationController < ApplicationController
       end
     end
 
+    @pagination = Api::Pagination.new(params)
+    @pagination.count = @rules.size
+    @current_rules = @rules[@pagination.offset, @pagination.limit]
   end
 
 
index 0ed9901a70983a8f956aa4d5598209e17a61362b..043a859d694779e35e0be5adba91c7eae6ec7847 100644 (file)
@@ -90,9 +90,9 @@
       </li>
     <% end %>
   </ul>
-  <h2><%= @rules.size %> <%= message('results').downcase -%>
-     <% if @hidden_actives && @hidden_actives>0 %><span class="small">[<a href="<%= url_for params.merge({:rule_status => ''}) -%>" id="active-rules-link">+<%= message('rules_configuration.x_found_in_active_rules', :params => @hidden_actives) -%></a>]</span><% end %>
-     <% if @hidden_inactives && @hidden_inactives>0 %><span class="small">[<a href="<%= url_for params.merge({:rule_status => ''}) -%>" id="inactive-rules-link">+<%= message('rules_configuration.x_found_in_inactive_rules', :params => @hidden_inactives) -%></a>]</span><% end %>
+  <h2>
+     <% if @hidden_actives && @hidden_actives>0 %><span class="small"><a href="<%= url_for params.merge({:rule_status => ''}) -%>" id="active-rules-link">+<%= message('rules_configuration.x_found_in_active_rules', :params => @hidden_actives) -%></a></span><% end %>
+     <% if @hidden_inactives && @hidden_inactives>0 %><span class="small"><a href="<%= url_for params.merge({:rule_status => ''}) -%>" id="inactive-rules-link">+<%= message('rules_configuration.x_found_in_inactive_rules', :params => @hidden_inactives) -%></a></span><% end %>
   </h2>
 </div>
 <table class="table table-bordered width100 spacer-bottom" id="result_table">
     </tr>
 </thead>
 <tbody>
-<% if @rules.empty? %>
+<% if @current_rules.empty? %>
 <tr><td colspan="3" class="even"><%= message('no_results') -%>.</td></tr>
 <% end %>
 <%
   # avoid executing several times the method is_admin?()
   is_admin=is_admin?()
-  @rules.each do |rule|
+  @current_rules.each do |rule|
     active_rule = @profile.active_by_rule_id(rule.id)
 %>
   <tr id="rule_<%= rule.id -%>">
 <% end %>
 </tbody>
 </table>
+<%= render :partial => 'utils/tfoot_pagination', :locals => {:pagination => @pagination, :colspan => 2} %>
+
 <script type="text/javascript">
     function replaceTextField(span_id, key) {
       var text_field_value = $F(key);