From 7f3a7e5e9febd5971f85ecf8598c43d9f0509b64 Mon Sep 17 00:00:00 2001 From: João M. M. da Silva + Diego Araújo Date: Tue, 29 Jan 2013 17:13:39 -0200 Subject: [PATCH] [Mezuro] Refactored redirects in controllers. --- plugins/mezuro/controllers/myprofile/mezuro_plugin_metric_configuration_controller.rb | 22 ++++++++++++++++------ plugins/mezuro/controllers/myprofile/mezuro_plugin_range_controller.rb | 24 ++++++++++++++++-------- plugins/mezuro/controllers/myprofile/mezuro_plugin_reading_controller.rb | 7 +++---- plugins/mezuro/controllers/profile/mezuro_plugin_repository_controller.rb | 15 ++++++++++++--- plugins/mezuro/test/functional/myprofile/mezuro_plugin_metric_configuration_controller_test.rb | 4 ++-- plugins/mezuro/test/functional/myprofile/mezuro_plugin_range_controller_test.rb | 18 +++++++++++------- plugins/mezuro/test/functional/profile/mezuro_plugin_module_result_controller_test.rb | 6 +++--- plugins/mezuro/test/functional/profile/mezuro_plugin_processing_controller_test.rb | 10 +++++----- plugins/mezuro/test/functional/profile/mezuro_plugin_repository_controller_test.rb | 1 + plugins/mezuro/views/mezuro_plugin_metric_configuration/edit_native.html.erb | 2 +- plugins/mezuro/views/mezuro_plugin_range/_form.html.erb | 2 ++ plugins/mezuro/views/mezuro_plugin_range/create.rjs | 2 +- plugins/mezuro/views/mezuro_plugin_reading/edit.html.erb | 4 ++-- plugins/mezuro/views/mezuro_plugin_reading/new.html.erb | 2 +- 14 files changed, 76 insertions(+), 43 deletions(-) diff --git a/plugins/mezuro/controllers/myprofile/mezuro_plugin_metric_configuration_controller.rb b/plugins/mezuro/controllers/myprofile/mezuro_plugin_metric_configuration_controller.rb index 5025f95..a3ec40a 100644 --- a/plugins/mezuro/controllers/myprofile/mezuro_plugin_metric_configuration_controller.rb +++ b/plugins/mezuro/controllers/myprofile/mezuro_plugin_metric_configuration_controller.rb @@ -15,13 +15,13 @@ class MezuroPluginMetricConfigurationController < MezuroPluginMyprofileControlle end def create_native + configuration_content = profile.articles.find(params[:id]) metric_configuration = Kalibro::MetricConfiguration.create(params[:metric_configuration]) if metric_configuration_has_errors? metric_configuration redirect_to_error_page metric_configuration.errors[0].message else - id = params[:id] - redirect_to "/myprofile/#{profile.identifier}/plugin/mezuro/metric_configuration/edit_native?id=#{id}&metric_configuration_id=#{metric_configuration.id}" + redirect_to(metric_configuration_url(configuration_content)) end end @@ -42,7 +42,7 @@ class MezuroPluginMetricConfigurationController < MezuroPluginMyprofileControlle if metric_configuration_has_errors? metric_configuration redirect_to_error_page metric_configuration.errors[0].message else - redirect_to "/#{profile.identifier}/#{@configuration_content.slug}" + redirect_to @configuration_content.view_url end end @@ -54,7 +54,7 @@ class MezuroPluginMetricConfigurationController < MezuroPluginMyprofileControlle if metric_configuration_has_errors? metric_configuration redirect_to_error_page metric_configuration.errors[0].message else - redirect_to "/#{profile.identifier}/#{configuration_content.slug}" + redirect_to configuration_content.view_url end end @@ -68,13 +68,13 @@ class MezuroPluginMetricConfigurationController < MezuroPluginMyprofileControlle end def create_compound + configuration_content = profile.articles.find(params[:id]) metric_configuration = Kalibro::MetricConfiguration.create(params[:metric_configuration]) if metric_configuration_has_errors? metric_configuration redirect_to_error_page metric_configuration.errors[0].message else - id = params[:id] - redirect_to "/myprofile/#{profile.identifier}/plugin/mezuro/metric_configuration/edit_compound?id=#{id}&metric_configuration_id=#{metric_configuration.id}" + redirect_to(metric_configuration_url(configuration_content)) end end @@ -105,4 +105,14 @@ class MezuroPluginMetricConfigurationController < MezuroPluginMyprofileControlle def configuration_content_has_errors? not @configuration_content.errors[:base].nil? end + + def metric_configuration_url configuration_content + url = configuration_content.view_url + url[:controller] = controller_name + url[:id] = configuration_content.id + url[:metric_configuration_id] = params[:metric_configuration][:id].to_i + url[:action] = (params[:metric_configuration][:metric][:compound] ? "edit_compound" : "edit_native") + url + end end + diff --git a/plugins/mezuro/controllers/myprofile/mezuro_plugin_range_controller.rb b/plugins/mezuro/controllers/myprofile/mezuro_plugin_range_controller.rb index 2f6e983..7c6d9eb 100644 --- a/plugins/mezuro/controllers/myprofile/mezuro_plugin_range_controller.rb +++ b/plugins/mezuro/controllers/myprofile/mezuro_plugin_range_controller.rb @@ -6,6 +6,8 @@ class MezuroPluginRangeController < MezuroPluginMyprofileController @content_id = params[:id].to_i @metric_configuration_id = params[:metric_configuration_id].to_i @reading_labels_and_ids = reading_labels_and_ids + @reading_group_id = params[:reading_group_id].to_i + @compound = params[:compound] end def edit @@ -18,6 +20,8 @@ class MezuroPluginRangeController < MezuroPluginMyprofileController def create metric_configuration_id = params[:metric_configuration_id].to_i + @reading_group_id = params[:reading_group_id].to_i + @compound = params[:compound] @range = Kalibro::Range.new params[:range] @range.save metric_configuration_id if !@range.errors.empty? @@ -35,19 +39,23 @@ class MezuroPluginRangeController < MezuroPluginMyprofileController end def remove - configuration_content_id = params[:id].to_i - metric_configuration_id = params[:metric_configuration_id].to_i - compound = params[:compound] + configuration_content = profile.articles.find(params[:id]) + Kalibro::Range.new({:id => params[:range_id].to_i}).destroy - if compound - redirect_to "/myprofile/#{profile.identifier}/plugin/mezuro/metric_configuration/edit_compound?id=#{configuration_content_id}&metric_configuration_id=#{metric_configuration_id}" - else - redirect_to "/myprofile/#{profile.identifier}/plugin/mezuro/metric_configuration/edit_native?id=#{configuration_content_id}&metric_configuration_id=#{metric_configuration_id}" - end + redirect_to(metric_configuration_url(configuration_content)) end private + def metric_configuration_url configuration_content + url = configuration_content.view_url + url[:controller] = "mezuro_plugin_metric_configuration" + url[:id] = configuration_content.id + url[:metric_configuration_id] = params[:metric_configuration_id].to_i + url[:action] = (params[:compound] ? "edit_compound" : "edit_native") + url + end + def reading_labels_and_ids array = Kalibro::Reading.readings_of(params[:reading_group_id].to_i).map { |reading| [reading.label, reading.id] } array.sort { |x,y| x.first.downcase <=> y.first.downcase } diff --git a/plugins/mezuro/controllers/myprofile/mezuro_plugin_reading_controller.rb b/plugins/mezuro/controllers/myprofile/mezuro_plugin_reading_controller.rb index 02c3253..8c8d361 100644 --- a/plugins/mezuro/controllers/myprofile/mezuro_plugin_reading_controller.rb +++ b/plugins/mezuro/controllers/myprofile/mezuro_plugin_reading_controller.rb @@ -11,11 +11,10 @@ class MezuroPluginReadingController < MezuroPluginMyprofileController def create reading_group_content = profile.articles.find(params[:id]) - reading = Kalibro::Reading.new params[:reading] if( reading.save(reading_group_content.reading_group_id) ) - redirect_to "/#{profile.identifier}/#{reading_group_content.name.downcase.gsub(/\s/, '-').gsub(/[^0-9A-Za-z\-]/, '')}" + redirect_to reading_group_content.view_url else redirect_to_error_page reading.errors[0].message end @@ -35,7 +34,7 @@ class MezuroPluginReadingController < MezuroPluginMyprofileController reading = Kalibro::Reading.new params[:reading] if( reading.save(reading_group_content.reading_group_id) ) - redirect_to "/profile/#{profile.identifier}/plugin/mezuro/reading/show/#{reading_group_content.id}?reading_id=#{reading.id}" + redirect_to reading_group_content.view_url else redirect_to_error_page reading.errors[0].message end @@ -46,7 +45,7 @@ class MezuroPluginReadingController < MezuroPluginMyprofileController reading = Kalibro::Reading.find params[:reading_id] reading.destroy if( reading.errors.empty? ) - redirect_to "/#{profile.identifier}/#{reading_group_content.name.downcase.gsub(/\s/, '-')}" + redirect_to reading_group_content.view_url else redirect_to_error_page reading.errors[0].message end diff --git a/plugins/mezuro/controllers/profile/mezuro_plugin_repository_controller.rb b/plugins/mezuro/controllers/profile/mezuro_plugin_repository_controller.rb index b94de3b..9fa12b5 100644 --- a/plugins/mezuro/controllers/profile/mezuro_plugin_repository_controller.rb +++ b/plugins/mezuro/controllers/profile/mezuro_plugin_repository_controller.rb @@ -25,7 +25,7 @@ class MezuroPluginRepositoryController < MezuroPluginProfileController if( repository.errors.empty? ) repository.process - redirect_to "/profile/#{profile.identifier}/plugin/mezuro/repository/show/#{project_content.id}?repository_id=#{repository.id}" + redirect_to(repository_url(project_content)) else redirect_to_error_page repository.errors[0].message end @@ -56,7 +56,7 @@ class MezuroPluginRepositoryController < MezuroPluginProfileController if( repository.errors.empty? ) repository.process - redirect_to "/profile/#{profile.identifier}/plugin/mezuro/repository/show/#{project_content.id}?repository_id=#{repository.id}" + redirect_to(repository_url(project_content)) else redirect_to_error_page repository.errors[0].message end @@ -76,10 +76,19 @@ class MezuroPluginRepositoryController < MezuroPluginProfileController repository = project_content.repositories.select{ |repository| repository.id.to_s == params[:repository_id] }.first repository.destroy if( repository.errors.empty? ) - redirect_to "/#{profile.identifier}/#{project_content.name.downcase.gsub(/\s/, '-')}" + redirect_to project_content.view_url else redirect_to_error_page repository.errors[0].message end end + def repository_url project_content + url = project_content.view_url + url[:controller] = controller_name + url[:id] = project_content.id + url[:repository_id] = params[:repository_id].to_i + url[:action] = "show" + url + end + end diff --git a/plugins/mezuro/test/functional/myprofile/mezuro_plugin_metric_configuration_controller_test.rb b/plugins/mezuro/test/functional/myprofile/mezuro_plugin_metric_configuration_controller_test.rb index b4c471c..b7dc3a7 100644 --- a/plugins/mezuro/test/functional/myprofile/mezuro_plugin_metric_configuration_controller_test.rb +++ b/plugins/mezuro/test/functional/myprofile/mezuro_plugin_metric_configuration_controller_test.rb @@ -117,14 +117,14 @@ class MezuroPluginMetricConfigurationControllerTest < ActionController::TestCase @native_metric_configuration.expects(:update_attributes).returns(true) #FIXME need .with(some_hash), should it mock the request?. get :update, :profile => @profile.identifier, :id => @configuration_content.id, :metric_configuration => @native_metric_configuration_hash assert_equal @configuration_content, assigns(:configuration_content) - assert_response 302 + assert_response :redirect end should 'remove' do Kalibro::MetricConfiguration.expects(:new).with({:id => @native_metric_configuration.id}).returns(@native_metric_configuration) @native_metric_configuration.expects(:destroy).returns() get :remove, :profile => @profile.identifier, :id => @configuration_content.id, :metric_configuration_id => @native_metric_configuration.id - assert_response 302 + assert_response :redirect end end diff --git a/plugins/mezuro/test/functional/myprofile/mezuro_plugin_range_controller_test.rb b/plugins/mezuro/test/functional/myprofile/mezuro_plugin_range_controller_test.rb index 9da7fb8..ba68a7e 100644 --- a/plugins/mezuro/test/functional/myprofile/mezuro_plugin_range_controller_test.rb +++ b/plugins/mezuro/test/functional/myprofile/mezuro_plugin_range_controller_test.rb @@ -34,11 +34,13 @@ class MezuroPluginRangeControllerTest < ActionController::TestCase should 'set correct attributes to create a new range' do Kalibro::Reading.expects(:readings_of).with(@metric_configuration.reading_group_id).returns([@reading]) - get :new, :profile => @profile.identifier, :id => @content.id, :metric_configuration_id => @metric_configuration.id, :reading_group_id => @metric_configuration.reading_group_id + get :new, :profile => @profile.identifier, :id => @content.id, :metric_configuration_id => @metric_configuration.id, :reading_group_id => @metric_configuration.reading_group_id, :compound => @metric_configuration.metric.compound assert_equal @content.id, assigns(:content_id) assert_equal @metric_configuration.id, assigns(:metric_configuration_id) assert_equal [[@reading.label,@reading.id]], assigns(:reading_labels_and_ids) - assert_response 200 + assert_equal @metric_configuration.reading_group_id, assigns(:reading_group_id) + assert_equal @metric_configuration.metric.compound, assigns(:compound) + assert_response :success end should 'set correct attributes to edit a range' do @@ -49,7 +51,7 @@ class MezuroPluginRangeControllerTest < ActionController::TestCase assert_equal @metric_configuration.id, assigns(:metric_configuration_id) assert_equal [[@reading.label,@reading.id]], assigns(:reading_labels_and_ids) assert_equal @range, assigns(:range) - assert_response 200 + assert_response :success end should 'test create instance range' do @@ -57,9 +59,11 @@ class MezuroPluginRangeControllerTest < ActionController::TestCase :metric_configuration_id => @metric_configuration.id, :range => @created_range.to_hash}).returns(:range_id => @range.id) Kalibro::Reading.expects(:find).with(@created_range.reading_id).returns(@reading) - get :create, :profile => @profile.identifier, :range => @created_range_hash, :metric_configuration_id => @metric_configuration.id + get :create, :profile => @profile.identifier, :range => @created_range_hash, :metric_configuration_id => @metric_configuration.id, :reading_group_id => @metric_configuration.reading_group_id, :compound => @metric_configuration.metric.compound assert_equal @range.id, assigns(:range).id - assert_response 200 + assert_equal @metric_configuration.reading_group_id, assigns(:reading_group_id) + assert_equal @metric_configuration.metric.compound, assigns(:compound) + assert_response :success end should 'test update range' do @@ -68,13 +72,13 @@ class MezuroPluginRangeControllerTest < ActionController::TestCase :range => @range.to_hash}).returns(:range_id => @range.id) get :update, :profile => @profile.identifier, :range => @range_hash, :metric_configuration_id => @metric_configuration.id assert_equal @range.id, assigns(:range).id - assert_response 200 + assert_response :success end should 'test remove range in native metric configuration' do Kalibro::Range.expects(:new).with({:id => @range.id}).returns(@range) @range.expects(:destroy).with().returns() get :remove, :profile => @profile.identifier, :id => @content.id, :metric_configuration_id => @metric_configuration.id, :range_id => @range.id, :compound => false - assert_response 302 + assert_response :redirect end end diff --git a/plugins/mezuro/test/functional/profile/mezuro_plugin_module_result_controller_test.rb b/plugins/mezuro/test/functional/profile/mezuro_plugin_module_result_controller_test.rb index 8cbe65c..6ef3bba 100644 --- a/plugins/mezuro/test/functional/profile/mezuro_plugin_module_result_controller_test.rb +++ b/plugins/mezuro/test/functional/profile/mezuro_plugin_module_result_controller_test.rb @@ -32,7 +32,7 @@ class MezuroPluginModuleResultControllerTest < ActionController::TestCase get :module_result, :profile => @profile.identifier, :module_result_id => @module_result_hash[:id] assert_equal @module_result_hash[:grade].to_f, assigns(:module_result).grade assert_equal @metric_result_hash[:value].to_f, assigns(:metric_results).first.value - assert_response 200 + assert_response :success #TODO assert_select('h5', 'Metric results for: Qt-Calculator (APPLICATION)') end @@ -42,7 +42,7 @@ class MezuroPluginModuleResultControllerTest < ActionController::TestCase returns({:date_metric_result => @date_metric_result_hash}) get :metric_result_history, :profile => @profile.identifier, :module_result_id => @module_result_hash[:id], :metric_name => metric_name assert_equal DateTime.parse(@date_metric_result_hash[:date]), assigns(:history).first.date - assert_response 200 + assert_response :success #TODO assert_select end @@ -51,7 +51,7 @@ class MezuroPluginModuleResultControllerTest < ActionController::TestCase returns({:date_module_result => @date_module_result_hash}) get :module_result_history, :profile => @profile.identifier, :module_result_id => @module_result_hash[:id] assert_equal DateTime.parse(@date_module_result_hash[:date]), assigns(:history).first.date - assert_response 200 + assert_response :success #TODO assert_select end diff --git a/plugins/mezuro/test/functional/profile/mezuro_plugin_processing_controller_test.rb b/plugins/mezuro/test/functional/profile/mezuro_plugin_processing_controller_test.rb index 9daea82..0fb8c96 100644 --- a/plugins/mezuro/test/functional/profile/mezuro_plugin_processing_controller_test.rb +++ b/plugins/mezuro/test/functional/profile/mezuro_plugin_processing_controller_test.rb @@ -21,14 +21,14 @@ class MezuroPluginProcessingControllerTest < ActionController::TestCase should 'render last processing state' do Kalibro::Processing.expects(:processing_of).with(@repository_id).returns(@processing) get :state, :profile => @profile.identifier, :repository_id => @repository_id - assert_response 200 + assert_response :success assert_equal @processing.state, @response.body end should 'render a processing state in a specific date' do Kalibro::Processing.expects(:processing_with_date_of).with(@repository_id, @processing.date).returns(@processing) get :state, :profile => @profile.identifier, :repository_id => @repository_id, :date => @processing.date - assert_response 200 + assert_response :success assert_equal @processing.state, @response.body end @@ -36,7 +36,7 @@ class MezuroPluginProcessingControllerTest < ActionController::TestCase Kalibro::Processing.expects(:request).with(:has_ready_processing, {:repository_id => @repository_id}).returns({:exists => false}) Kalibro::Processing.expects(:request).with(:last_processing, :repository_id => @repository_id).returns({:processing => @processing_with_error_hash}) get :processing, :profile => @profile.identifier, :repository_id => @repository_id - assert_response 200 + assert_response :success assert_equal @processing_with_error_hash[:state], assigns(:processing).state #TODO How to assert from view? assert_select('h3', 'ERROR') end @@ -45,7 +45,7 @@ class MezuroPluginProcessingControllerTest < ActionController::TestCase Kalibro::Processing.expects(:request).with(:has_ready_processing, {:repository_id => @repository_id}).returns({:exists => true}) Kalibro::Processing.expects(:request).with(:last_ready_processing, {:repository_id => @repository_id}).returns({:processing => @processing_hash}) get :processing, :profile => @profile.identifier, :repository_id => @repository_id - assert_response 200 + assert_response :success assert_select('h4', 'Last Result') end @@ -53,7 +53,7 @@ class MezuroPluginProcessingControllerTest < ActionController::TestCase Kalibro::Processing.expects(:request).with(:has_processing_after, {:repository_id => @repository_id, :date => @processing.date}).returns({:exists => true}) Kalibro::Processing.expects(:request).with(:first_processing_after, :repository_id => @repository_id, :date => @processing.date).returns({:processing => @processing_hash}) get :processing, :profile => @profile.identifier, :repository_id => @repository_id, :date => @processing.date - assert_response 200 + assert_response :success assert_select('h4', 'Last Result') end diff --git a/plugins/mezuro/test/functional/profile/mezuro_plugin_repository_controller_test.rb b/plugins/mezuro/test/functional/profile/mezuro_plugin_repository_controller_test.rb index d265094..bb4e4a0 100644 --- a/plugins/mezuro/test/functional/profile/mezuro_plugin_repository_controller_test.rb +++ b/plugins/mezuro/test/functional/profile/mezuro_plugin_repository_controller_test.rb @@ -103,6 +103,7 @@ class MezuroPluginRepositoryControllerTest < ActionController::TestCase assert_equal @configuration.name, assigns(:configuration_name) assert_equal @content.profile.identifier, assigns(:data_profile) assert_equal @content.id, assigns(:data_content) + assert_response :success end should 'destroy a repository' do diff --git a/plugins/mezuro/views/mezuro_plugin_metric_configuration/edit_native.html.erb b/plugins/mezuro/views/mezuro_plugin_metric_configuration/edit_native.html.erb index fefd1a0..176e45d 100644 --- a/plugins/mezuro/views/mezuro_plugin_metric_configuration/edit_native.html.erb +++ b/plugins/mezuro/views/mezuro_plugin_metric_configuration/edit_native.html.erb @@ -42,7 +42,7 @@
<% if owner %> - <%= link_to_remote "New Range", :url => {:action =>"new", :controller => "mezuro_plugin_range", :id => @configuration_content.id, :metric_configuration_id => @metric_configuration.id, :reading_group_id => @metric_configuration.reading_group_id} %> + <%= link_to_remote "New Range", :url => {:action =>"new", :controller => "mezuro_plugin_range", :id => @configuration_content.id, :metric_configuration_id => @metric_configuration.id, :reading_group_id => @metric_configuration.reading_group_id, :compound => @metric_configuration.metric.compound} %> <% end %> diff --git a/plugins/mezuro/views/mezuro_plugin_range/_form.html.erb b/plugins/mezuro/views/mezuro_plugin_range/_form.html.erb index ae44303..142fdc3 100644 --- a/plugins/mezuro/views/mezuro_plugin_range/_form.html.erb +++ b/plugins/mezuro/views/mezuro_plugin_range/_form.html.erb @@ -1,5 +1,7 @@ <%= hidden_field_tag :id, @content_id %> <%= hidden_field_tag :metric_configuration_id, @metric_configuration_id %> +<%= hidden_field_tag :reading_group_id, @reading_group_id %> +<%= hidden_field_tag :compound, @compound %> <%= f.hidden_field :id %> diff --git a/plugins/mezuro/views/mezuro_plugin_range/create.rjs b/plugins/mezuro/views/mezuro_plugin_range/create.rjs index 1df5f80..a4c68cf 100644 --- a/plugins/mezuro/views/mezuro_plugin_range/create.rjs +++ b/plugins/mezuro/views/mezuro_plugin_range/create.rjs @@ -1,6 +1,6 @@ if @error.nil? page.visual_effect :toggle_slide, "form" - page.insert_html :bottom, "ranges", :partial => "range", :locals => {:range => @range} + page.insert_html :bottom, "ranges", :partial => "range", :locals => {:range => @range, :reading_group_id => @reading_group_id, :compound => @compound} else page.alert @error end diff --git a/plugins/mezuro/views/mezuro_plugin_reading/edit.html.erb b/plugins/mezuro/views/mezuro_plugin_reading/edit.html.erb index 509d874..8c9b930 100644 --- a/plugins/mezuro/views/mezuro_plugin_reading/edit.html.erb +++ b/plugins/mezuro/views/mezuro_plugin_reading/edit.html.erb @@ -1,8 +1,8 @@ -

<%= link_to( @reading_group_name, homepage_url(@data_profile, @reading_group_name.downcase.gsub(/[^0-9A-Za-z\-]/, '')) ) %>

+

<%= link_to( @reading_group_name, homepage_url(@data_profile, @reading_group_name.downcase.gsub(/[^0-9A-Za-z\-]/, '-')) ) %>

-<% form_for :reading, :url => {:action =>"create", :controller => "mezuro_plugin_reading"}, :method => :get do |f| %> +<% form_for :reading, :url => {:action =>"update", :controller => "mezuro_plugin_reading"}, :method => :get do |f| %> <%= hidden_field_tag :id, @reading_group_content_id %> <%= f.hidden_field :id %> diff --git a/plugins/mezuro/views/mezuro_plugin_reading/new.html.erb b/plugins/mezuro/views/mezuro_plugin_reading/new.html.erb index 062af55..b197d7e 100644 --- a/plugins/mezuro/views/mezuro_plugin_reading/new.html.erb +++ b/plugins/mezuro/views/mezuro_plugin_reading/new.html.erb @@ -1,6 +1,6 @@ -

<%= link_to( @reading_group_name, homepage_url(@data_profile, @reading_group_name.downcase.gsub(/[^0-9A-Za-z\-]/, '')) ) %>

+

<%= link_to( @reading_group_name, homepage_url(@data_profile, @reading_group_name.downcase.gsub(/[^0-9A-Za-z\-]/, '-')) ) %>

<% form_for :reading, :url => {:action =>"create", :controller => "mezuro_plugin_reading"}, :method => :get do |f| %> <%= hidden_field_tag :id, @reading_group_content_id %> -- libgit2 0.21.2