From ad9e486077f903397e7f11e9c28076036555f9b7 Mon Sep 17 00:00:00 2001
From: Etienne Massip
Date: Wed, 26 Oct 2011 18:00:56 +0000
Subject: [PATCH] Make queries resources fully conform to common behavior
(removed additonal routes) (#9108).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@7657 e93f8b46-1217-0410-a6f0-8f06a7374b81
---
app/views/issues/index.html.erb | 6 +++---
app/views/queries/edit.html.erb | 2 +-
app/views/queries/new.html.erb | 2 +-
config/routes.rb | 2 +-
test/integration/routing_test.rb | 3 ---
5 files changed, 6 insertions(+), 9 deletions(-)
diff --git a/app/views/issues/index.html.erb b/app/views/issues/index.html.erb
index beff2fef6..2fc163e90 100644
--- a/app/views/issues/index.html.erb
+++ b/app/views/issues/index.html.erb
@@ -1,7 +1,7 @@
<% if !@query.new_record? && @query.editable_by?(User.current) %>
- <%= link_to l(:button_edit), @query.project_id ? edit_project_query_path(:project_id => @query.project, :id => @query) : edit_query_path(@query), :class => 'icon icon-edit' %>
- <%= link_to l(:button_delete), @query.project_id ? project_query_path(:project_id => @query.project, :id => @query) : query_path(@query), :confirm => l(:text_are_you_sure), :method => :delete, :class => 'icon icon-del' %>
+ <%= link_to l(:button_edit), edit_query_path(@query), :class => 'icon icon-edit' %>
+ <%= link_to l(:button_delete), query_path(@query), :confirm => l(:text_are_you_sure), :method => :delete, :class => 'icon icon-del' %>
<% end %>
@@ -38,7 +38,7 @@
<%= link_to_function l(:button_apply), 'submit_query_form("query_form")', :class => 'icon icon-checked' %>
<%= link_to l(:button_clear), { :set_filter => 1, :project_id => @project }, :class => 'icon icon-reload' %>
<% if @query.new_record? && User.current.allowed_to?(:save_queries, @project, :global => true) %>
- <%= link_to_function l(:button_save), "$('query_form').action='#{ @project ? new_project_query_path(@project) : new_query_path }'; submit_query_form('query_form')", :class => 'icon icon-save' %>
+ <%= link_to_function l(:button_save), "$('query_form').action='#{ @project ? new_project_query_path : new_query_path }'; submit_query_form('query_form')", :class => 'icon icon-save' %>
<% end %>
<% end %>
diff --git a/app/views/queries/edit.html.erb b/app/views/queries/edit.html.erb
index 46a530f16..610ae01c3 100644
--- a/app/views/queries/edit.html.erb
+++ b/app/views/queries/edit.html.erb
@@ -1,6 +1,6 @@
<%= l(:label_query) %>
-<% form_tag(@query.project_id ? project_query_path(:project_id => @query.project, :id => @query) : query_path(@query), :onsubmit => 'selectAllOptions("selected_columns");', :method => :put) do %>
+<% form_tag(query_path(@query), :onsubmit => 'selectAllOptions("selected_columns");', :method => :put) do %>
<%= render :partial => 'form', :locals => {:query => @query} %>
<%= submit_tag l(:button_save) %>
<% end %>
diff --git a/app/views/queries/new.html.erb b/app/views/queries/new.html.erb
index b5809fb88..2ec7f6600 100644
--- a/app/views/queries/new.html.erb
+++ b/app/views/queries/new.html.erb
@@ -1,6 +1,6 @@
<%= l(:label_query_new) %>
-<% form_tag(@project ? project_queries_path(:project_id => @project) : queries_path, :onsubmit => 'selectAllOptions("selected_columns");') do %>
+<% form_tag(@project ? project_queries_path : queries_path, :onsubmit => 'selectAllOptions("selected_columns");') do %>
<%= render :partial => 'form', :locals => {:query => @query} %>
<%= submit_tag l(:button_save) %>
<% end %>
diff --git a/config/routes.rb b/config/routes.rb
index 8f0f39e48..f5814e0ac 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -156,7 +156,7 @@ ActionController::Routing::Routes.draw do |map|
project.resources :versions, :shallow => true, :collection => {:close_completed => :put}, :member => {:status_by => :post}
project.resources :news, :shallow => true
project.resources :time_entries, :controller => 'timelog', :path_prefix => 'projects/:project_id'
- project.resources :queries, :except => [:show]
+ project.resources :queries, :only => [:new, :create]
project.wiki_start_page 'wiki', :controller => 'wiki', :action => 'show', :conditions => {:method => :get}
project.wiki_index 'wiki/index', :controller => 'wiki', :action => 'index', :conditions => {:method => :get}
diff --git a/test/integration/routing_test.rb b/test/integration/routing_test.rb
index cfdc5389e..1f978c36e 100644
--- a/test/integration/routing_test.rb
+++ b/test/integration/routing_test.rb
@@ -222,13 +222,10 @@ class RoutingTest < ActionController::IntegrationTest
should_route :post, "/projects/redmine/queries", :controller => 'queries', :action => 'create', :project_id => 'redmine'
should_route :get, "/queries/1/edit", :controller => 'queries', :action => 'edit', :id => '1'
- should_route :get, "/projects/redmine/queries/1/edit", :controller => 'queries', :action => 'edit', :id => '1', :project_id => 'redmine'
should_route :put, "/queries/1", :controller => 'queries', :action => 'update', :id => '1'
- should_route :put, "/projects/redmine/queries/1", :controller => 'queries', :action => 'update', :id => '1', :project_id => 'redmine'
should_route :delete, "/queries/1", :controller => 'queries', :action => 'destroy', :id => '1'
- should_route :delete, "/projects/redmine/queries/1", :controller => 'queries', :action => 'destroy', :id => '1', :project_id => 'redmine'
end
context "repositories" do
--
2.39.5