Commit 23d371753b1be6b42b8226584ee340296db8994a
Committed by
Alessandro Palmeira
1 parent
87eafae0
Exists in
staging
and in
42 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 %> | ... | ... |