]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-5207 Fix display of treemap
authorJulien Lancelot <julien.lancelot@sonarsource.com>
Fri, 18 Jul 2014 13:53:36 +0000 (15:53 +0200)
committerJulien Lancelot <julien.lancelot@sonarsource.com>
Fri, 18 Jul 2014 14:18:03 +0000 (16:18 +0200)
plugins/sonar-core-plugin/src/main/resources/org/sonar/plugins/core/widgets/treemap.html.erb
server/sonar-web/src/main/webapp/WEB-INF/app/controllers/measures_controller.rb
server/sonar-web/src/main/webapp/WEB-INF/app/models/measure_filter_display.rb

index 313e13f2c0dcb4512d535bff6ed38ffcfcb8e966..b12ca554f1858970c1ac2336c0834c48453d99c6 100644 (file)
     <%
       filter = MeasureFilter.new
       filter.set_criteria_value(:base, @resource.key)
-      filter.set_criteria_value(:display, 'treemap')
-      filter.set_criteria_value(:tmSize, sizeMetric.key) if sizeMetric
-      filter.set_criteria_value(:tmColor, colorMetric.key) if colorMetric
-      filter.set_criteria_value(:tmHeight, widget_properties['heightInPercents'])
+      filter.set_criteria_value(:pageSize, 100)
+      filter.set_criteria_value(:page, 1)
+      filter.metrics=([sizeMetric, colorMetric].compact)
       filter.execute(self, :user => current_user)
     %>
 
index 134c32398e74c0e7edd14fd930f42ef94a61fb5a..80fcefff882d7c0ebfca2daa58ea4c4617feab46 100644 (file)
@@ -242,7 +242,6 @@ class MeasuresController < ApplicationController
 
     filter = find_filter(params[:filter])
     filter.load_criteria_from_data
-    params[:display] = 'none'
     filter.override_criteria(criteria_params)
     filter.metrics= params[:metrics].split(',') if metrics
     filter.require_links= display_links
index 5763d3179dbcf8a0ed96e5d60a1485379f534b2b..8066e3d59bab54c8577445b9afa5528ff3134f58 100644 (file)
 #
 class MeasureFilterDisplay
 
-  DISPLAY_CLASSES = [MeasureFilterDisplayList]
-
   def self.create(filter, options)
-    key = filter.criteria('display')
-    display_class=DISPLAY_CLASSES.find{|display_class| display_class::KEY==key.to_sym} if key
-    display_class.new(filter, options) if display_class
-  end
-
-  def self.keys
-    DISPLAY_CLASSES.map{|display_class| display_class::KEY}
+    # Do not init a MeasureFilterDisplayList when we want to completely control the render (column to return, pagination, etc.) of the filter
+    # For instance, the /measures/search_filter manage by itself the column and the pagination
+    MeasureFilterDisplayList.new(filter, options) if filter.criteria('display') == 'list'
   end
 
   def key