Commit 23d371753b1be6b42b8226584ee340296db8994a
Committed by
Alessandro Palmeira
1 parent
87eafae0
Exists in
master
and in
29 other branches
[Mezuro] refactoring save and edit in metric configuration views
Showing
3 changed files
with
42 additions
and
25 deletions
Show diff stats
plugins/mezuro/controllers/mezuro_plugin_profile_controller.rb
... | ... | @@ -48,42 +48,31 @@ class MezuroPluginProfileController < ProfileController |
48 | 48 | end |
49 | 49 | |
50 | 50 | def new_metric_configuration |
51 | - | |
52 | 51 | metric_name = params[:metric_name] |
53 | - @configuration_name = params[:configuration_name] | |
54 | 52 | collector_name = params[:collector_name] |
55 | - | |
56 | 53 | collector = Kalibro::Client::BaseToolClient.new.base_tool(collector_name) |
57 | 54 | @metric = collector.supported_metrics.find {|metric| metric.name == metric_name} |
55 | + @configuration_name = params[:configuration_name] | |
58 | 56 | end |
59 | 57 | |
60 | 58 | def edit_metric_configuration |
61 | - @configuration_name = params[:configuration_name] | |
62 | 59 | metric_name = params[:metric_name] |
60 | + @configuration_name = params[:configuration_name] | |
63 | 61 | @metric_configuration = Kalibro::Client::MetricConfigurationClient.new.metric_configuration(@configuration_name, metric_name) |
62 | + @metric = @metric_configuration.metric | |
64 | 63 | end |
65 | 64 | |
66 | 65 | def create_metric_configuration |
67 | 66 | @configuration_name = params[:configuration_name] |
68 | - metric_configuration = Kalibro::Entities::MetricConfiguration.new | |
69 | - metric_configuration.metric = Kalibro::Entities::NativeMetric.new | |
70 | - metric_configuration.metric.name = params[:metric][:name] | |
71 | - metric_configuration.metric.description = params[:description] | |
72 | - metric_configuration.metric.origin = params[:metric][:origin] | |
73 | - metric_configuration.metric.scope = params[:scope] | |
74 | - metric_configuration.metric.language = params[:language] | |
75 | - metric_configuration.code = params[:metric_configuration][:code] | |
76 | - metric_configuration.weight = params[:metric_configuration][:weight] | |
77 | - metric_configuration.aggregation_form = params[:metric_configuration][:aggregation] | |
78 | - | |
67 | + metric_configuration = set_metric_configuration(params) | |
79 | 68 | Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, @configuration_name) |
80 | - | |
81 | 69 | redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}" |
82 | 70 | end |
83 | 71 | |
84 | 72 | def update_metric_configuration |
85 | 73 | @configuration_name = params[:configuration_name] |
86 | - # raise @configuration_name.inspect | |
74 | + metric_configuration = set_metric_configuration(params) | |
75 | + Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, @configuration_name) | |
87 | 76 | redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}" |
88 | 77 | end |
89 | 78 | |
... | ... | @@ -99,5 +88,23 @@ class MezuroPluginProfileController < ProfileController |
99 | 88 | @range.color = params[:range][:color] |
100 | 89 | @range.comments = params[:range][:comments] |
101 | 90 | end |
91 | + | |
92 | + private | |
93 | + | |
94 | + def set_metric_configuration(params) #FIXME isso foi feito para evitar duplicar o codigo de create e update metric configuration, faça de um jeito melhor | |
95 | + metric_configuration = Kalibro::Entities::MetricConfiguration.new | |
96 | + metric_configuration.metric = Kalibro::Entities::NativeMetric.new | |
97 | + metric_configuration.metric.name = params[:metric][:name] | |
98 | + metric_configuration.metric.description = params[:description] | |
99 | + metric_configuration.metric.origin = params[:metric][:origin] | |
100 | + metric_configuration.metric.scope = params[:scope] | |
101 | + metric_configuration.metric.language = params[:language] | |
102 | + metric_configuration.code = params[:metric_configuration][:code] | |
103 | + metric_configuration.weight = params[:metric_configuration][:weight] | |
104 | + metric_configuration.aggregation_form = params[:metric_configuration][:aggregation] | |
105 | + | |
106 | + metric_configuration | |
107 | + end | |
108 | + | |
102 | 109 | end |
103 | 110 | ... | ... |
plugins/mezuro/views/mezuro_plugin_profile/edit_metric_configuration.html.erb
1 | 1 | <h2><%= @configuration_name %> Configuration</h2> |
2 | 2 | |
3 | -<% form_for @metric_configuration, :url => {:action =>"update_metric_configuration", :controller => "mezuro_plugin_profile"}, :method => :get do |f| %> | |
3 | +<% form_for :metric_configuration, :url => {:action =>"update_metric_configuration", :controller => "mezuro_plugin_profile"}, :method => :get do |f| %> | |
4 | 4 | <%= hidden_field_tag :configuration_name, @configuration_name %> |
5 | + <%= hidden_field_tag :scope, @metric.scope %> | |
6 | + | |
7 | + <% @metric.language.each do |language| %> | |
8 | + <%= hidden_field_tag "language[]", language %> | |
9 | + <% end %> | |
10 | + | |
5 | 11 | <p> |
6 | - <%= f.label :collector_name, "Collector Name:" %> | |
7 | - <%= @metric_configuration.metric.origin %> | |
8 | - <%= hidden_field_tag "metric[origin]", @metric_origin %> | |
12 | + <%= f.label :origin, "Collector Name:" %> | |
13 | + <%= @metric.origin %> | |
14 | + <%= hidden_field_tag "metric[origin]", @metric.origin %> | |
9 | 15 | </p> |
10 | 16 | <p> |
11 | 17 | <%= f.label :metric_name, "Metric Name:" %> |
12 | - <%= @metric_configuration.metric.name %> | |
13 | - <%= hidden_field_tag "metric[name]", @metric_name %> | |
18 | + <%= @metric.name %> | |
19 | + <%= hidden_field_tag "metric[name]", @metric.name %> | |
20 | + </p> | |
21 | + <p> | |
22 | + <%= f.label :description, "Description:" %> | |
23 | + <%= @metric.description %> | |
24 | + <%= text_field_tag "metric[description]", @metric.description %> | |
14 | 25 | </p> |
15 | 26 | <p> |
16 | 27 | <%= f.label :code, "Code:" %> | ... | ... |
plugins/mezuro/views/mezuro_plugin_profile/new_metric_configuration.html.erb
... | ... | @@ -5,10 +5,9 @@ |
5 | 5 | <%= hidden_field_tag :scope, @metric.scope %> |
6 | 6 | |
7 | 7 | <% @metric.language.each do |language| %> |
8 | - <%= hidden_field_tag "language[]", language %> | |
8 | + <%= hidden_field_tag "language[]", language %> | |
9 | 9 | <% end %> |
10 | 10 | |
11 | - | |
12 | 11 | <p> |
13 | 12 | <%= f.label :origin, "Collector Name:" %> |
14 | 13 | <%= @metric.origin %> | ... | ... |