]> source.dussan.org Git - sonarqube.git/commitdiff
Add an option in paginate_java to display a link on the total number
authorJulien Lancelot <julien.lancelot@gmail.com>
Fri, 21 Jun 2013 10:12:47 +0000 (12:12 +0200)
committerJulien Lancelot <julien.lancelot@gmail.com>
Fri, 21 Jun 2013 10:13:02 +0000 (12:13 +0200)
sonar-server/src/main/webapp/WEB-INF/app/helpers/application_helper.rb
sonar-server/src/main/webapp/WEB-INF/app/views/project/widgets/issues/_issues_list.html.erb

index b1957e6bb68e06307b42e02a181b4655f3796adb..98886673a8a95ea57ce1a8dbc5f98d121406bdd6 100644 (file)
@@ -911,12 +911,14 @@ module ApplicationHelper
   # Options :
   # :id HTML id of the <tfoot> node
   # :colspan number of columns in the table
+  # :url_results url to display on the number of results
   # :include_loading_icon add a hidden loading icon, only if value is true and if the option :id is set as well. The HTML id of the generated icon
   #    is '<id>_loading'
   def paginate_java(pagination, options={}, &block)
     total = pagination.total.to_i
     page_index = pagination.pageIndex() ? pagination.pageIndex().to_i : 1
     pages = pagination.pages().to_i
+    results_html = options[:url_results] ? message('x_results', :params => "<a href='#{options[:url_results]}'>#{total}</a>") : message('x_results', :params => [total])
 
     html = '<tfoot'
     html += " id='#{options[:id]}'" if options[:id]
@@ -929,7 +931,7 @@ module ApplicationHelper
     html += '<div'
     html += " id='#{options[:id]}_pages'" if options[:id]
     html += '>'
-    html += message('x_results', :params => [total]) if total>0
+    html += results_html if total>0
 
     if pages > 1
       max_pages = pages
index 3acbc7016499538a7dfe3cca0f4eb9d02160ead9..c243b9d8cc1f6212b15ebc1de87ed63e9b0cdbca 100644 (file)
@@ -71,7 +71,8 @@
        link_params[:widget_id] = widget_id
        link_params[:period] = params[:period]
     %>
-    <%= paginate_java(paging, :colspan => 4, :id => "issue-filter-foot-#{widget_id}", :include_loading_icon => true) { |label, page_id|
+    <%= paginate_java(paging, :colspan => 4, :id => "issue-filter-foot-#{widget_id}", :include_loading_icon => true,
+                      :url_results => url_for({:controller => 'issues', :action => 'search' }.merge(search_options)) ) { |label, page_id|
       link_to_remote(label,
                      :update => "issues-widget-#{widget_id}",
                      :url => link_params.merge({:pageIndex => page_id}))