Commit a7daad1b937695391d8d3b59aa63f02081cde7de
Committed by
Paulo Meireles
1 parent
d3ce2cae
Exists in
master
and in
29 other branches
[Mezuro] creating new ranges in metric configuration edition view.
Showing
6 changed files
with
24 additions
and
20 deletions
Show diff stats
plugins/mezuro/controllers/myprofile/mezuro_plugin_range_controller.rb
@@ -5,6 +5,7 @@ class MezuroPluginRangeController < MezuroPluginMyprofileController | @@ -5,6 +5,7 @@ class MezuroPluginRangeController < MezuroPluginMyprofileController | ||
5 | def new_range | 5 | def new_range |
6 | @content_id = params[:id] | 6 | @content_id = params[:id] |
7 | @metric_configuration_id = params[:metric_configuration_id] | 7 | @metric_configuration_id = params[:metric_configuration_id] |
8 | + @reading_labels_and_ids = reading_labels_and_ids | ||
8 | end | 9 | end |
9 | 10 | ||
10 | def edit_range | 11 | def edit_range |
@@ -42,4 +43,11 @@ class MezuroPluginRangeController < MezuroPluginMyprofileController | @@ -42,4 +43,11 @@ class MezuroPluginRangeController < MezuroPluginMyprofileController | ||
42 | end | 43 | end |
43 | end | 44 | end |
44 | 45 | ||
46 | + private | ||
47 | + | ||
48 | + def reading_labels_and_ids | ||
49 | + array = Kalibro::Reading.readings_of(params[:reading_group_id]).map { |reading| [reading.label, reading.id] } | ||
50 | + array.sort { |x,y| x.first.downcase <=> y.first.downcase } | ||
51 | + end | ||
52 | + | ||
45 | end | 53 | end |
plugins/mezuro/lib/kalibro/range.rb
@@ -2,6 +2,10 @@ class Kalibro::Range < Kalibro::Model | @@ -2,6 +2,10 @@ class Kalibro::Range < Kalibro::Model | ||
2 | 2 | ||
3 | attr_accessor :id, :beginning, :end, :reading_id, :comments | 3 | attr_accessor :id, :beginning, :end, :reading_id, :comments |
4 | 4 | ||
5 | + def id=(value) | ||
6 | + @id = value.to_i | ||
7 | + end | ||
8 | + | ||
5 | def beginning=(value) | 9 | def beginning=(value) |
6 | @beginning = value.to_f | 10 | @beginning = value.to_f |
7 | @beginning = -1.0/0.0 if value == "-INF" | 11 | @beginning = -1.0/0.0 if value == "-INF" |
plugins/mezuro/public/javascripts/validations.js
@@ -40,18 +40,15 @@ function IsNotInfinite(value){ | @@ -40,18 +40,15 @@ function IsNotInfinite(value){ | ||
40 | } | 40 | } |
41 | 41 | ||
42 | function validate_new_range_configuration(event){ | 42 | function validate_new_range_configuration(event){ |
43 | - var label = jQuery("#range_label").val(); | ||
44 | var beginning = jQuery("#range_beginning").val(); | 43 | var beginning = jQuery("#range_beginning").val(); |
45 | var end = jQuery("#range_end").val(); | 44 | var end = jQuery("#range_end").val(); |
46 | - var color = jQuery("#range_color").val(); | ||
47 | - var grade = jQuery("#range_grade").val(); | ||
48 | 45 | ||
49 | - if (is_null(label) || is_null(beginning) || is_null(end) || is_null(color) || is_null(grade)) | 46 | + if (is_null(beginning) || is_null(end)) |
50 | { | 47 | { |
51 | alert("Please fill all fields marked with (*)."); | 48 | alert("Please fill all fields marked with (*)."); |
52 | return false; | 49 | return false; |
53 | } | 50 | } |
54 | - if ( (IsNotNumeric(beginning) && IsNotInfinite(beginning)) || (IsNotNumeric(end) && IsNotInfinite(end)) || IsNotNumeric(grade)) | 51 | + if ( (IsNotNumeric(beginning) && IsNotInfinite(beginning)) || (IsNotNumeric(end) && IsNotInfinite(end))) |
55 | { | 52 | { |
56 | alert("Beginning, End and Grade must be numeric values."); | 53 | alert("Beginning, End and Grade must be numeric values."); |
57 | return false; | 54 | return false; |
plugins/mezuro/views/mezuro_plugin_metric_configuration/edit_native.html.erb
@@ -42,7 +42,7 @@ | @@ -42,7 +42,7 @@ | ||
42 | 42 | ||
43 | <br/> | 43 | <br/> |
44 | <% if owner %> | 44 | <% if owner %> |
45 | - <%= link_to_remote "New Range", :url => {:action =>"new_range", :controller => "mezuro_plugin_range", :id => @configuration_content.id, :metric_configuration_id => @metric_configuration.id} %> | 45 | + <%= link_to_remote "New Range", :url => {:action =>"new_range", :controller => "mezuro_plugin_range", :id => @configuration_content.id, :metric_configuration_id => @metric_configuration.id, :reading_group_id => @metric_configuration.reading_group_id} %> |
46 | <% end %> | 46 | <% end %> |
47 | <div id="range_form" style="display:none"></div> | 47 | <div id="range_form" style="display:none"></div> |
48 | 48 |
plugins/mezuro/views/mezuro_plugin_range/_range.html.erb
@@ -13,9 +13,9 @@ | @@ -13,9 +13,9 @@ | ||
13 | </td> | 13 | </td> |
14 | <td bgcolor="#<%= range.color %>"></td> | 14 | <td bgcolor="#<%= range.color %>"></td> |
15 | <% if (not user.nil?) && user.id == @profile.id %> | 15 | <% if (not user.nil?) && user.id == @profile.id %> |
16 | - <td><%= link_to_remote "Edit", :url => {:action =>"edit_range", :controller => "mezuro_plugin_range", :id => params[:id], :metric_name => params[:metric_name], :beginning_id => range.beginning} %> | 16 | + <td><%= link_to_remote "Edit", :url => {:action =>"edit_range", :controller => "mezuro_plugin_range", :id => params[:id], :metric_configuration_id => params[:metric_configuration_id], :range_id => range.id} %> |
17 | </td> | 17 | </td> |
18 | - <td><%= link_to "Remove", :action =>"remove_range", :controller => "mezuro_plugin_range", :id => params[:id], :metric_name => params[:metric_name], :beginning_id => range.beginning %> | 18 | + <td><%= link_to "Remove", :action =>"remove_range", :controller => "mezuro_plugin_range", :id => params[:id], :metric_configuration_id => params[:metric_configuration_id], :range_id => range.id %> |
19 | </td> | 19 | </td> |
20 | <% else %> | 20 | <% else %> |
21 | <td></td> | 21 | <td></td> |
plugins/mezuro/views/mezuro_plugin_range/_range_form.html.erb
@@ -3,13 +3,15 @@ | @@ -3,13 +3,15 @@ | ||
3 | 3 | ||
4 | <%= f.hidden_field :id %> | 4 | <%= f.hidden_field :id %> |
5 | 5 | ||
6 | + <%= required labelled_form_field _('Label'), | ||
7 | + f.select(:reading_id, @reading_labels_and_ids) %><br/> | ||
6 | <table> | 8 | <table> |
7 | <tr> | 9 | <tr> |
8 | <td> | 10 | <td> |
9 | <%= f.label :beginning, "(*) Beginning:" %> | 11 | <%= f.label :beginning, "(*) Beginning:" %> |
10 | </td> | 12 | </td> |
11 | <td> | 13 | <td> |
12 | - <%= f.text_field :beginning, :id => "range_beginning" %> <%= link_to('-∞', 'javascript:void(0)', :onClick => "jQuery( '#range_beginning' ).val('-INF');") %> | 14 | + <%= required f.text_field :beginning, :id => "range_beginning" %> <%= link_to('-∞', 'javascript:void(0)', :onClick => "jQuery( '#range_beginning' ).val('-INF');") %> |
13 | </td> | 15 | </td> |
14 | </tr> | 16 | </tr> |
15 | <tr> | 17 | <tr> |
@@ -17,24 +19,17 @@ | @@ -17,24 +19,17 @@ | ||
17 | <%= f.label :end, "(*) End:" %> | 19 | <%= f.label :end, "(*) End:" %> |
18 | </td> | 20 | </td> |
19 | <td> | 21 | <td> |
20 | - <%= f.text_field(:end, :id => "range_end") %> <%= link_to('+∞', 'javascript:void(0)', :onClick => "jQuery( '#range_end' ).val('+INF');") %> | 22 | + <%= required f.text_field(:end, :id => "range_end") %> <%= link_to('+∞', 'javascript:void(0)', :onClick => "jQuery( '#range_end' ).val('+INF');") %> |
21 | </td> | 23 | </td> |
22 | </tr> | 24 | </tr> |
23 | <tr> | 25 | <tr> |
24 | <td> | 26 | <td> |
25 | - <%= f.label :grade, "(*) Grade:" %> | 27 | + <%= f.label :comments, "(*) Comments:" %> |
26 | </td> | 28 | </td> |
27 | <td> | 29 | <td> |
28 | - <%= f.text_field :grade %> | ||
29 | - </td> | ||
30 | - </tr> | ||
31 | - <tr> | ||
32 | - <td> | ||
33 | - <%= f.label :comments, "Comments:" %> | ||
34 | - </td> | ||
35 | - <td> | ||
36 | - <%= f.text_area :comments, :rows => 3 %> | 30 | + <%= required f.text_area :comments, :rows => 3 %> |
37 | </td> | 31 | </td> |
38 | </tr> | 32 | </tr> |
39 | </table> | 33 | </table> |
34 | +<br/> | ||
40 | <%= f.submit "Save Range" %> | 35 | <%= f.submit "Save Range" %> |