diff --git a/plugins/mezuro/controllers/mezuro_plugin_profile_controller.rb b/plugins/mezuro/controllers/mezuro_plugin_profile_controller.rb
index 1f54390..5ca8a15 100644
--- a/plugins/mezuro/controllers/mezuro_plugin_profile_controller.rb
+++ b/plugins/mezuro/controllers/mezuro_plugin_profile_controller.rb
@@ -80,17 +80,16 @@ class MezuroPluginProfileController < ProfileController
def new_range
@metric_name = params[:metric_name]
@configuration_name = params[:configuration_name]
- @range_beginning = params[:range_beginning]
-
- if(@range_beginning != nil) then
+ end
+
+ def edit_range
+ @metric_name = params[:metric_name]
+ @configuration_name = params[:configuration_name]
+ @beginning_id = params[:beginning_id]
- metric_configuration_client = Kalibro::Client::MetricConfigurationClient.new
- metric_configuration = metric_configuration_client.metric_configuration(@configuration_name, @metric_name)
-
- metric_configuration.ranges.each do |r|
- @range = r if r.beginning == @range_beginning.to_f
- end
- end
+ metric_configuration_client = Kalibro::Client::MetricConfigurationClient.new
+ metric_configuration = metric_configuration_client.metric_configuration(@configuration_name, @metric_name)
+ @range = metric_configuration.ranges.find{ |range| range.beginning == @beginning_id.to_f }
end
def create_range
@@ -99,57 +98,38 @@ class MezuroPluginProfileController < ProfileController
metric_name = params[:metric_name]
beginning_id = params[:beginning_id]
metric_configuration_client = Kalibro::Client::MetricConfigurationClient.new
- metric_configuration = metric_configuration_client.metric_configuration(configuration_name, metric_name)
-
- if( beginning_id == "") then #When nothing is passed as beginning_id, this range is new
- metric_configuration.add_range(@range)
- metric_configuration_client.save(metric_configuration, configuration_name)
- else #else, this is a range to edit
- #First search range
- index = 0
- metric_configuration.ranges.each do |r|
- break if r.beginning == beginning_id.to_f
- index = index + 1
- end
- #Then edit and save
- metric_configuration.ranges[index] = new_range_instance
- Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, configuration_name)
- end
+ metric_configuration = metric_configuration_client.metric_configuration(configuration_name, metric_name)
+ metric_configuration.add_range(@range)
+ metric_configuration_client.save(metric_configuration, configuration_name)
end
-=begin
- this commented lines and views/mezuro_plugin_profile/edit_range.html.erb should be removed
-
- def edit_range
- @configuration_name = params[:configuration_name]
- @metric_name = params[:metric_name]
- @range_beginning = params[:range_beginning]
-
+ def update_range
+ metric_name = params[:metric_name]
+ configuration_name = params[:configuration_name]
+ beginning_id = params[:beginning_id]
metric_configuration_client = Kalibro::Client::MetricConfigurationClient.new
- metric_configuration = metric_configuration_client.metric_configuration(@configuration_name, @metric_name)
-
- metric_configuration.ranges.each do |r|
- @range = r if r.beginning == @range_beginning.to_f
- end
+ metric_configuration = metric_configuration_client.metric_configuration(configuration_name, metric_name)
+ index = metric_configuration.ranges.index{ |range| range.beginning == beginning_id.to_f }
+ metric_configuration.ranges[index] = new_range_instance
+ Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, configuration_name)
+ formatted_configuration_name = configuration_name.gsub(/\s/, '+')
+ formatted_metric_name = metric_name.gsub(/\s/, '+')
+ redirect_to "/profile/#{profile.identifier}/plugins/mezuro/edit_metric_configuration?configuration_name=#{formatted_configuration_name}&metric_name=#{formatted_metric_name}"
end
- def update_range
- @configuration_name = params[:configuration_name]
+ def remove_range
+ configuration_name = params[:configuration_name]
metric_name = params[:metric_name]
- range_beginning = params[:beginning_id]
+ beginning_id = params[:range_beginning]
metric_configuration_client = Kalibro::Client::MetricConfigurationClient.new
- metric_configuration = metric_configuration_client.metric_configuration(@configuration_name, metric_name)
- index = 0
- metric_configuration.ranges.each do |r|
- break if r.beginning == range_beginning.to_f
- index = index + 1
- end
- #Here index points to the right range in metric_configuration.ranges[]
- metric_configuration.ranges[index] = new_range_instance
- Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, @configuration_name)
- redirect_to "/#{profile.identifier}/#{@configuration_name.downcase.gsub(/\s/, '-')}"
+ metric_configuration = metric_configuration_client.metric_configuration(configuration_name, metric_name)
+ metric_configuration.ranges.delete_if { |range| range.beginning == beginning_id.to_f }.inspect
+ Kalibro::Client::MetricConfigurationClient.new.save(metric_configuration, configuration_name)
+ formatted_configuration_name = configuration_name.gsub(/\s/, '+')
+ formatted_metric_name = metric_name.gsub(/\s/, '+')
+ #FIXME não está redirecionando
+ redirect "/profile/#{profile.identifier}/plugins/mezuro/edit_metric_configuration?configuration_name=#{formatted_configuration_name}&metric_name=#{formatted_metric_name}"
end
-=end
def remove_metric_configuration
configuration_name = params[:configuration_name]
diff --git a/plugins/mezuro/views/mezuro_plugin_profile/_edit_range.html.erb b/plugins/mezuro/views/mezuro_plugin_profile/_edit_range.html.erb
new file mode 100644
index 0000000..4ae3a7b
--- /dev/null
+++ b/plugins/mezuro/views/mezuro_plugin_profile/_edit_range.html.erb
@@ -0,0 +1,3 @@
+<% remote_form_for :range, :url => {:action =>"update_range", :controller => "mezuro_plugin_profile"}, :method => :get do |f| %>
+ <%= render :partial => "range_form", :locals => {:f => f, :metric_name => metric_name, :configuration_name => configuration_name, :beginning_id => beginning_id, :range => range } %>
+<% end %>
diff --git a/plugins/mezuro/views/mezuro_plugin_profile/_new_range.html.erb b/plugins/mezuro/views/mezuro_plugin_profile/_new_range.html.erb
index ed8f2ed..ec2cb9d 100644
--- a/plugins/mezuro/views/mezuro_plugin_profile/_new_range.html.erb
+++ b/plugins/mezuro/views/mezuro_plugin_profile/_new_range.html.erb
@@ -1,56 +1,3 @@
<% remote_form_for :range, :url => {:action =>"create_range", :controller => "mezuro_plugin_profile"}, :method => :get do |f| %>
- <%= hidden_field_tag :configuration_name, configuration_name %>
- <%= hidden_field_tag :metric_name, metric_name %>
- <%= hidden_field_tag :beginning_id, range_beginning %>
-
-
-
- <%= f.label :label, "Label:" %>
- |
-
- <%= f.text_field :label %>
- |
-
-
-
- <%= f.label :beginning, "Beginning:" %>
- |
-
- <%= f.text_field :beginning %>
- |
-
-
-
- <%= f.label :end, "End:" %>
- |
-
- <%= f.text_field :end %>
- |
-
-
-
- <%= f.label :grade, "Grade:" %>
- |
-
- <%= f.text_field :grade %>
- |
-
-
-
- <%= f.label :color, "Color:" %>
- |
-
- <%= f.text_field :color %>
- |
-
-
-
- <%= f.label :comments, "Comments:" %>
- |
-
- <%= f.text_field :comments %>
- |
-
-
- <%= f.submit "Save Range" %>
+ <%= render :partial => "range_form", :locals => {:f => f, :metric_name => metric_name, :configuration_name => configuration_name } %>
<% end %>
diff --git a/plugins/mezuro/views/mezuro_plugin_profile/_range.html.erb b/plugins/mezuro/views/mezuro_plugin_profile/_range.html.erb
index cc5c099..6f7ba84 100644
--- a/plugins/mezuro/views/mezuro_plugin_profile/_range.html.erb
+++ b/plugins/mezuro/views/mezuro_plugin_profile/_range.html.erb
@@ -12,7 +12,6 @@
<%=range.grade%>
|
-
- <%= link_to_remote "Edit", :url => {:action =>"new_range", :controller => "mezuro_plugin_profile", :configuration_name => params[:configuration_name], :metric_name => params[:metric_name], :range_beginning => range.beginning} %> |
+ <%= link_to_remote "Edit", :url => {:action =>"edit_range", :controller => "mezuro_plugin_profile", :configuration_name => params[:configuration_name], :metric_name => params[:metric_name], :beginning_id => range.beginning} %> |
+ <%= link_to "Remove", :action =>"remove_range", :controller => "mezuro_plugin_profile", :configuration_name => params[:configuration_name], :metric_name => params[:metric_name], :range_beginning => range.beginning %> |
diff --git a/plugins/mezuro/views/mezuro_plugin_profile/_range_form.html.erb b/plugins/mezuro/views/mezuro_plugin_profile/_range_form.html.erb
new file mode 100644
index 0000000..aeb0bb9
--- /dev/null
+++ b/plugins/mezuro/views/mezuro_plugin_profile/_range_form.html.erb
@@ -0,0 +1,54 @@
+<%= hidden_field_tag :configuration_name, configuration_name %>
+<%= hidden_field_tag :metric_name, metric_name %>
+<%= hidden_field_tag :beginning_id, beginning_id %>
+
+
+
+ <%= f.label :label, "Label:" %>
+ |
+
+ <%= f.text_field :label %>
+ |
+
+
+
+ <%= f.label :beginning, "Beginning:" %>
+ |
+
+ <%= f.text_field :beginning %>
+ |
+
+
+
+ <%= f.label :end, "End:" %>
+ |
+
+ <%= f.text_field :end %>
+ |
+
+
+
+ <%= f.label :grade, "Grade:" %>
+ |
+
+ <%= f.text_field :grade %>
+ |
+
+
+
+ <%= f.label :color, "Color:" %>
+ |
+
+ <%= f.text_field :color %>
+ |
+
+
+
+ <%= f.label :comments, "Comments:" %>
+ |
+
+ <%= f.text_field :comments %>
+ |
+
+
+<%= f.submit "Save Range" %>
diff --git a/plugins/mezuro/views/mezuro_plugin_profile/create_range.rjs b/plugins/mezuro/views/mezuro_plugin_profile/create_range.rjs
index ef31d1d..f0cf9ee 100644
--- a/plugins/mezuro/views/mezuro_plugin_profile/create_range.rjs
+++ b/plugins/mezuro/views/mezuro_plugin_profile/create_range.rjs
@@ -1,2 +1,2 @@
-page.visual_effect :toggle_slide, "new_range"
+page.visual_effect :toggle_slide, "range_form"
page.insert_html :bottom, "ranges", :partial => "range", :locals => {:range => @range}
diff --git a/plugins/mezuro/views/mezuro_plugin_profile/edit_metric_configuration.html.erb b/plugins/mezuro/views/mezuro_plugin_profile/edit_metric_configuration.html.erb
index 12667f8..2159e7a 100644
--- a/plugins/mezuro/views/mezuro_plugin_profile/edit_metric_configuration.html.erb
+++ b/plugins/mezuro/views/mezuro_plugin_profile/edit_metric_configuration.html.erb
@@ -74,5 +74,5 @@
<%= link_to_remote "New Range", :url => {:action =>"new_range", :controller => "mezuro_plugin_profile", :configuration_name => @configuration_name, :metric_name => @metric.name} %>
-
+
diff --git a/plugins/mezuro/views/mezuro_plugin_profile/edit_range.html.erb b/plugins/mezuro/views/mezuro_plugin_profile/edit_range.html.erb
deleted file mode 100644
index 1c7f47b..0000000
--- a/plugins/mezuro/views/mezuro_plugin_profile/edit_range.html.erb
+++ /dev/null
@@ -1,57 +0,0 @@
-<% remote_form_for :range, :url => {:action =>"update_range", :controller => "mezuro_plugin_profile"}, :method => :get do |f| %>
- <%= hidden_field_tag :configuration_name, @configuration_name %>
- <%= hidden_field_tag :metric_name, @metric_name %>
- <%= hidden_field_tag :beginning_id, @range_beginning %>
-
-
-
-
- <%= f.label :label, "Label:" %>
- |
-
- <%= f.text_field :label %>
- |
-
-
-
- <%= f.label :beginning, "Beginning:" %>
- |
-
- <%= f.text_field :beginning %>
- |
-
-
-
- <%= f.label :end, "End:" %>
- |
-
- <%= f.text_field :end %>
- |
-
-
-
- <%= f.label :grade, "Grade:" %>
- |
-
- <%= f.text_field :grade %>
- |
-
-
-
- <%= f.label :color, "Color:" %>
- |
-
- <%= f.text_field :color %>
- |
-
-
-
- <%= f.label :comments, "Comments:" %>
- |
-
- <%= f.text_field :comments %>
- |
-
-
- <%= f.submit "Save Range" %>
-<% end %>
diff --git a/plugins/mezuro/views/mezuro_plugin_profile/edit_range.rjs b/plugins/mezuro/views/mezuro_plugin_profile/edit_range.rjs
new file mode 100644
index 0000000..144b018
--- /dev/null
+++ b/plugins/mezuro/views/mezuro_plugin_profile/edit_range.rjs
@@ -0,0 +1,2 @@
+page.replace_html 'range_form', :partial => "edit_range", :locals => {:metric_name => @metric_name, :configuration_name => @configuration_name, :beginning_id => @beginning_id, :range => @range }
+page.visual_effect :slide_down, "range_form"
diff --git a/plugins/mezuro/views/mezuro_plugin_profile/new_range.rjs b/plugins/mezuro/views/mezuro_plugin_profile/new_range.rjs
index bcdda62..cd28b9e 100644
--- a/plugins/mezuro/views/mezuro_plugin_profile/new_range.rjs
+++ b/plugins/mezuro/views/mezuro_plugin_profile/new_range.rjs
@@ -1,2 +1,2 @@
-page.replace_html 'new_range', :partial => "new_range", :locals => {:metric_name => @metric_name, :configuration_name => @configuration_name, :range_beginning => @range_beginning}
-page.visual_effect :toggle_slide, "new_range"
+page.replace_html 'range_form', :partial => "new_range", :locals => {:metric_name => @metric_name, :configuration_name => @configuration_name }
+page.visual_effect :slide_down, "range_form"
diff --git a/plugins/mezuro/views/mezuro_plugin_profile/update_range.html.erb b/plugins/mezuro/views/mezuro_plugin_profile/update_range.html.erb
deleted file mode 100644
index 8c0e501..0000000
--- a/plugins/mezuro/views/mezuro_plugin_profile/update_range.html.erb
+++ /dev/null
@@ -1 +0,0 @@
-Update Range Action
diff --git a/plugins/mezuro/views/mezuro_plugin_profile/update_range.rjs b/plugins/mezuro/views/mezuro_plugin_profile/update_range.rjs
new file mode 100644
index 0000000..f0cf9ee
--- /dev/null
+++ b/plugins/mezuro/views/mezuro_plugin_profile/update_range.rjs
@@ -0,0 +1,2 @@
+page.visual_effect :toggle_slide, "range_form"
+page.insert_html :bottom, "ranges", :partial => "range", :locals => {:range => @range}
--
libgit2 0.21.2