Commit 2fc5a82e00b31035bf56fe31af4fb675a86d26f0
Committed by
Paulo Meireles
1 parent
8bf5768c
Exists in
master
and in
28 other branches
[Mezuro] Fixed range edition.
Showing
3 changed files
with
24 additions
and
13 deletions
Show diff stats
plugins/mezuro/controllers/mezuro_plugin_myprofile_controller.rb
| ... | ... | @@ -78,6 +78,7 @@ class MezuroPluginMyprofileController < ProfileController |
| 78 | 78 | def new_range |
| 79 | 79 | @configuration_content = profile.articles.find(params[:id]) |
| 80 | 80 | @metric_name = params[:metric_name] |
| 81 | + @range = Kalibro::Range.new | |
| 81 | 82 | end |
| 82 | 83 | |
| 83 | 84 | def edit_range |
| ... | ... | @@ -85,7 +86,7 @@ class MezuroPluginMyprofileController < ProfileController |
| 85 | 86 | @metric_name = params[:metric_name] |
| 86 | 87 | @beginning_id = params[:beginning_id] |
| 87 | 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 | 90 | end |
| 90 | 91 | |
| 91 | 92 | def create_range |
| ... | ... | @@ -102,7 +103,7 @@ class MezuroPluginMyprofileController < ProfileController |
| 102 | 103 | metric_name = params[:metric_name] |
| 103 | 104 | beginning_id = params[:beginning_id] |
| 104 | 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 | 107 | metric_configuration.ranges[index] = Kalibro::Range.new params[:range] |
| 107 | 108 | metric_configuration.save |
| 108 | 109 | end |
| ... | ... | @@ -112,7 +113,7 @@ class MezuroPluginMyprofileController < ProfileController |
| 112 | 113 | metric_name = params[:metric_name] |
| 113 | 114 | beginning_id = params[:beginning_id] |
| 114 | 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 | 117 | metric_configuration.save |
| 117 | 118 | formatted_metric_name = metric_name.gsub(/\s/, '+') |
| 118 | 119 | if metric_configuration.metric.class == Kalibro::CompoundMetric | ... | ... |
plugins/mezuro/lib/kalibro/range.rb
| ... | ... | @@ -7,11 +7,29 @@ class Kalibro::Range < Kalibro::Model |
| 7 | 7 | @beginning = -1.0/0.0 if value == "-INF" |
| 8 | 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 | 19 | def end=(value) |
| 11 | 20 | @end = value.to_f |
| 12 | 21 | @end = 1.0/0.0 if value == "INF" |
| 13 | 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 | 33 | def grade=(value) |
| 16 | 34 | @grade = value.to_f |
| 17 | 35 | end | ... | ... |
plugins/mezuro/views/mezuro_plugin_myprofile/_range_form.html.erb
| ... | ... | @@ -14,11 +14,7 @@ |
| 14 | 14 | <%= f.label :beginning, "(*) Beginning:" %> |
| 15 | 15 | </td> |
| 16 | 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 | 18 | </td> |
| 23 | 19 | </tr> |
| 24 | 20 | <tr> |
| ... | ... | @@ -26,11 +22,7 @@ |
| 26 | 22 | <%= f.label :end, "(*) End:" %> |
| 27 | 23 | </td> |
| 28 | 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 | 26 | </td> |
| 35 | 27 | </tr> |
| 36 | 28 | <tr> | ... | ... |