Commit 2fc5a82e00b31035bf56fe31af4fb675a86d26f0

Authored by Diego Camarinha
Committed by Paulo Meireles
1 parent 8bf5768c

[Mezuro] Fixed range edition.

plugins/mezuro/controllers/mezuro_plugin_myprofile_controller.rb
@@ -78,6 +78,7 @@ class MezuroPluginMyprofileController < ProfileController @@ -78,6 +78,7 @@ class MezuroPluginMyprofileController < ProfileController
78 def new_range 78 def new_range
79 @configuration_content = profile.articles.find(params[:id]) 79 @configuration_content = profile.articles.find(params[:id])
80 @metric_name = params[:metric_name] 80 @metric_name = params[:metric_name]
  81 + @range = Kalibro::Range.new
81 end 82 end
82 83
83 def edit_range 84 def edit_range
@@ -85,7 +86,7 @@ class MezuroPluginMyprofileController < ProfileController @@ -85,7 +86,7 @@ class MezuroPluginMyprofileController < ProfileController
85 @metric_name = params[:metric_name] 86 @metric_name = params[:metric_name]
86 @beginning_id = params[:beginning_id] 87 @beginning_id = params[:beginning_id]
87 metric_configuration = Kalibro::MetricConfiguration.find_by_configuration_name_and_metric_name(@configuration_content.name, @metric_name) 88 metric_configuration = Kalibro::MetricConfiguration.find_by_configuration_name_and_metric_name(@configuration_content.name, @metric_name)
88 - @range = metric_configuration.ranges.find{|range| range.beginning == @beginning_id.to_f || ( @beginning_id =="-Infinity" && range.beginning == -1.0/0.0) } 89 + @range = metric_configuration.ranges.find{|range| range.beginning == @beginning_id.to_f || @beginning_id =="-INF" }
89 end 90 end
90 91
91 def create_range 92 def create_range
@@ -102,7 +103,7 @@ class MezuroPluginMyprofileController < ProfileController @@ -102,7 +103,7 @@ class MezuroPluginMyprofileController < ProfileController
102 metric_name = params[:metric_name] 103 metric_name = params[:metric_name]
103 beginning_id = params[:beginning_id] 104 beginning_id = params[:beginning_id]
104 metric_configuration = Kalibro::MetricConfiguration.find_by_configuration_name_and_metric_name(configuration_content.name, metric_name) 105 metric_configuration = Kalibro::MetricConfiguration.find_by_configuration_name_and_metric_name(configuration_content.name, metric_name)
105 - index = metric_configuration.ranges.index{ |range| range.beginning == beginning_id.to_f } 106 + index = metric_configuration.ranges.index{ |range| range.beginning == beginning_id.to_f || beginning_id == "-INF" }
106 metric_configuration.ranges[index] = Kalibro::Range.new params[:range] 107 metric_configuration.ranges[index] = Kalibro::Range.new params[:range]
107 metric_configuration.save 108 metric_configuration.save
108 end 109 end
@@ -112,7 +113,7 @@ class MezuroPluginMyprofileController < ProfileController @@ -112,7 +113,7 @@ class MezuroPluginMyprofileController < ProfileController
112 metric_name = params[:metric_name] 113 metric_name = params[:metric_name]
113 beginning_id = params[:beginning_id] 114 beginning_id = params[:beginning_id]
114 metric_configuration = Kalibro::MetricConfiguration.find_by_configuration_name_and_metric_name(configuration_content.name, metric_name) 115 metric_configuration = Kalibro::MetricConfiguration.find_by_configuration_name_and_metric_name(configuration_content.name, metric_name)
115 - metric_configuration.ranges.delete_if { |range| range.beginning == beginning_id.to_f } 116 + metric_configuration.ranges.delete_if { |range| range.beginning == beginning_id.to_f || beginning_id == "-INF" }
116 metric_configuration.save 117 metric_configuration.save
117 formatted_metric_name = metric_name.gsub(/\s/, '+') 118 formatted_metric_name = metric_name.gsub(/\s/, '+')
118 if metric_configuration.metric.class == Kalibro::CompoundMetric 119 if metric_configuration.metric.class == Kalibro::CompoundMetric
plugins/mezuro/lib/kalibro/range.rb
@@ -7,11 +7,29 @@ class Kalibro::Range < Kalibro::Model @@ -7,11 +7,29 @@ class Kalibro::Range < Kalibro::Model
7 @beginning = -1.0/0.0 if value == "-INF" 7 @beginning = -1.0/0.0 if value == "-INF"
8 end 8 end
9 9
  10 + def beginning
  11 + if !@beginning.nil?
  12 + case @beginning.to_s
  13 + when "-Infinity": "-INF"
  14 + else @beginning
  15 + end
  16 + end
  17 + end
  18 +
10 def end=(value) 19 def end=(value)
11 @end = value.to_f 20 @end = value.to_f
12 @end = 1.0/0.0 if value == "INF" 21 @end = 1.0/0.0 if value == "INF"
13 end 22 end
14 23
  24 + def end
  25 + if !@end.nil?
  26 + case @end.to_s
  27 + when "Infinity": "INF"
  28 + else @end
  29 + end
  30 + end
  31 + end
  32 +
15 def grade=(value) 33 def grade=(value)
16 @grade = value.to_f 34 @grade = value.to_f
17 end 35 end
plugins/mezuro/views/mezuro_plugin_myprofile/_range_form.html.erb
@@ -14,11 +14,7 @@ @@ -14,11 +14,7 @@
14 <%= f.label :beginning, "(*) Beginning:" %> 14 <%= f.label :beginning, "(*) Beginning:" %>
15 </td> 15 </td>
16 <td> 16 <td>
17 - <% if @range.beginning.to_s == "-Infinity" %>  
18 - <%= f.text_field :beginning, :value => "-INF" %>  
19 - <% else %>  
20 - <%= f.text_field :beginning %>  
21 - <% end %> 17 + <%= f.text_field :beginning, :value => @range.beginning %>
22 </td> 18 </td>
23 </tr> 19 </tr>
24 <tr> 20 <tr>
@@ -26,11 +22,7 @@ @@ -26,11 +22,7 @@
26 <%= f.label :end, "(*) End:" %> 22 <%= f.label :end, "(*) End:" %>
27 </td> 23 </td>
28 <td> 24 <td>
29 - <% if @range.end.to_s == "Infinity" %>  
30 - <%= f.text_field :end, :value => "INF" %>  
31 - <% else %>  
32 - <%= f.text_field :end %>  
33 - <% end %> 25 + <%= f.text_field :end, :value => @range.end %>
34 </td> 26 </td>
35 </tr> 27 </tr>
36 <tr> 28 <tr>