Commit 78a21cb745626df1f3c4658c4bd54372f6938b3c
Committed by
Diego Camarinha
1 parent
78b2a140
Exists in
master
and in
29 other branches
[Mezuro] Added validations to ranges. Not working yet.
Showing
6 changed files
with
66 additions
and
10 deletions
Show diff stats
plugins/mezuro/public/javascripts/validations.js
1 | 1 | function validate_metric_configuration(){ |
2 | - var x=document.forms["configuration_form"]["metric_configuration[code]"].value; | |
3 | - if (x==null || x=="") | |
2 | + var code=document.forms["configuration_form"]["metric_configuration[code]"].value; | |
3 | + if (is_null(code)) | |
4 | 4 | { |
5 | 5 | alert("Code must be filled out"); |
6 | 6 | return false; |
7 | 7 | } |
8 | 8 | } |
9 | + | |
10 | +function is_null(value){ | |
11 | + if(value == "" || value == null){ | |
12 | + return true; | |
13 | + } | |
14 | + return false; | |
15 | +} | |
16 | + | |
17 | +function IsNotNumeric(value){ | |
18 | + if(value.match(/[0-9]*\.?[0-9]+/)) | |
19 | + { | |
20 | + return false; | |
21 | + } | |
22 | + return true; | |
23 | +} | |
24 | + | |
25 | +function IsNotHexadecimal(value){ | |
26 | + if(value.match(/[0-9a-fA-F]{1,8}/)) | |
27 | + { | |
28 | + return false; | |
29 | + } | |
30 | + return true; | |
31 | +} | |
32 | + | |
33 | +function validate_new_range_configuration(){ | |
34 | + var label = document.forms["new_range_form"]["range[label]"].value; | |
35 | + var beginning = document.forms["new_range_form"]["range[beginning]"].value; | |
36 | + var end = document.forms["new_range_form"]["range[end]"].value; | |
37 | + var color = document.forms["new_range_form"]["range[color]"].value; | |
38 | + var grade = document.forms["new_range_form"]["range[grade]"].value; | |
39 | + | |
40 | + return false; | |
41 | + | |
42 | + if (is_null(label) || is_null(beginning) || is_null(end) || is_null(color) || is_null(grade)) | |
43 | + { | |
44 | + alert("Please fill all fields marked with (*)"); | |
45 | + return false; | |
46 | + } | |
47 | + if (IsNotNumeric(beginning) || IsNotNumeric(end) || IsNotNumeric(grade)) | |
48 | + { | |
49 | + alert("Beginning, End and Grade must be numeric values"); | |
50 | + return false; | |
51 | + } | |
52 | + if (beginning > end) | |
53 | + { | |
54 | + alert("End must be greater than Beginning"); | |
55 | + return false; | |
56 | + } | |
57 | + if (IsNotHexadecimal(color)){ | |
58 | + alert("Color must be an hexadecimal value"); | |
59 | + return false; | |
60 | + } | |
61 | + return true; | |
62 | +} | ... | ... |
plugins/mezuro/views/mezuro_plugin_myprofile/_edit_range.html.erb
1 | -<% remote_form_for :range, :url => {:action =>"update_range", :controller => "mezuro_plugin_myprofile"}, :method => :get do |f| %> | |
1 | +<% remote_form_for :range, :url => {:action =>"update_range", :controller => "mezuro_plugin_myprofile"}, :method => :get, :html => { :name => "new_range_form", :onSubmit => 'return validate_new_range_configuration()'} do |f| %> | |
2 | 2 | <%= hidden_field_tag :beginning_id, beginning_id %> |
3 | 3 | <%= render :partial => "range_form", :locals => {:f => f, :metric_name => metric_name, :configuration_name => configuration_name, :beginning_id => beginning_id, :range => range } %> |
4 | 4 | <% end %> | ... | ... |
plugins/mezuro/views/mezuro_plugin_myprofile/_new_range.html.erb
1 | -<% remote_form_for :range, :url => {:action =>"create_range", :controller => "mezuro_plugin_myprofile"}, :method => :get do |f| %> | |
1 | +<% remote_form_for :range, :url => {:action =>"create_range", :controller => "mezuro_plugin_myprofile"}, :method => :get, :html => { :name => "new_range_form", :onSubmit => 'return validate_new_range_configuration()'} do |f| %> | |
2 | 2 | <%= render :partial => "range_form", :locals => {:f => f, :metric_name => metric_name, :configuration_name => configuration_name } %> |
3 | 3 | <% end %> | ... | ... |
plugins/mezuro/views/mezuro_plugin_myprofile/_range_form.html.erb
... | ... | @@ -3,7 +3,7 @@ |
3 | 3 | <table> |
4 | 4 | <tr> |
5 | 5 | <td> |
6 | - <%= f.label :label, "Label:" %> | |
6 | + <%= f.label :label, "(*) Label:" %> | |
7 | 7 | </td> |
8 | 8 | <td> |
9 | 9 | <%= f.text_field :label %> |
... | ... | @@ -11,7 +11,7 @@ |
11 | 11 | </tr> |
12 | 12 | <tr> |
13 | 13 | <td> |
14 | - <%= f.label :beginning, "Beginning:" %> | |
14 | + <%= f.label :beginning, "(*) Beginning:" %> | |
15 | 15 | </td> |
16 | 16 | <td> |
17 | 17 | <%= f.text_field :beginning %> |
... | ... | @@ -19,7 +19,7 @@ |
19 | 19 | </tr> |
20 | 20 | <tr> |
21 | 21 | <td> |
22 | - <%= f.label :end, "End:" %> | |
22 | + <%= f.label :end, "(*) End:" %> | |
23 | 23 | </td> |
24 | 24 | <td> |
25 | 25 | <%= f.text_field :end %> |
... | ... | @@ -27,7 +27,7 @@ |
27 | 27 | </tr> |
28 | 28 | <tr> |
29 | 29 | <td> |
30 | - <%= f.label :grade, "Grade:" %> | |
30 | + <%= f.label :grade, "(*) Grade:" %> | |
31 | 31 | </td> |
32 | 32 | <td> |
33 | 33 | <%= f.text_field :grade %> |
... | ... | @@ -35,7 +35,7 @@ |
35 | 35 | </tr> |
36 | 36 | <tr> |
37 | 37 | <td> |
38 | - <%= f.label :color, "Color:" %> | |
38 | + <%= f.label :color, "(*) Color:" %> | |
39 | 39 | </td> |
40 | 40 | <td> |
41 | 41 | <%= f.text_field :color %> | ... | ... |
plugins/mezuro/views/mezuro_plugin_myprofile/edit_metric_configuration.html.erb
1 | +<script src="/plugins/mezuro/javascripts/validations.js" type="text/javascript"></script> | |
2 | + | |
1 | 3 | <h2><%= @configuration_name %> Configuration</h2> |
2 | 4 | |
3 | 5 | <% form_for :metric_configuration, :url => {:action =>"update_metric_configuration", :controller => "mezuro_plugin_myprofile"}, :method => :get do |f| %> | ... | ... |
plugins/mezuro/views/mezuro_plugin_myprofile/new_range.rjs
1 | -page.replace_html 'range_form', :partial => "new_range", :locals => {:metric_name => @metric_name, :configuration_name => @configuration_name, :beginning_id => "bolinha" } | |
1 | +page.replace_html 'range_form', :partial => "new_range", :locals => {:metric_name => @metric_name, :configuration_name => @configuration_name, :beginning_id => "bolinha" } #FIXME | |
2 | 2 | page.visual_effect :slide_down, "range_form" | ... | ... |