Adds routes for group users.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@7946 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
1ebe9640a6
commit
f680e7f8ac
|
@ -125,7 +125,7 @@ class GroupsController < ApplicationController
|
||||||
|
|
||||||
def remove_user
|
def remove_user
|
||||||
@group = Group.find(params[:id])
|
@group = Group.find(params[:id])
|
||||||
@group.users.delete(User.find(params[:user_id])) if request.post?
|
@group.users.delete(User.find(params[:user_id])) if request.delete?
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
format.html { redirect_to :controller => 'groups', :action => 'edit', :id => @group, :tab => 'users' }
|
format.html { redirect_to :controller => 'groups', :action => 'edit', :id => @group, :tab => 'users' }
|
||||||
format.js { render(:update) {|page| page.replace_html "tab-content-users", :partial => 'groups/users'} }
|
format.js { render(:update) {|page| page.replace_html "tab-content-users", :partial => 'groups/users'} }
|
||||||
|
|
|
@ -10,9 +10,7 @@
|
||||||
<tr id="user-<%= user.id %>" class="<%= cycle 'odd', 'even' %>">
|
<tr id="user-<%= user.id %>" class="<%= cycle 'odd', 'even' %>">
|
||||||
<td class="user"><%= link_to_user user %></td>
|
<td class="user"><%= link_to_user user %></td>
|
||||||
<td class="buttons">
|
<td class="buttons">
|
||||||
<%= link_to_remote l(:button_delete), { :url => { :controller => 'groups', :action => 'remove_user', :id => @group, :user_id => user },
|
<%= link_to_remote l(:button_delete), { :url => group_user_path(@group, :user_id => user), :method => :delete }, :class => 'icon icon-del' %>
|
||||||
:method => :post },
|
|
||||||
:class => 'icon icon-del' %>
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
@ -26,14 +24,15 @@
|
||||||
<div class="splitcontentright">
|
<div class="splitcontentright">
|
||||||
<% users = User.active.not_in_group(@group).all(:limit => 100) %>
|
<% users = User.active.not_in_group(@group).all(:limit => 100) %>
|
||||||
<% if users.any? %>
|
<% if users.any? %>
|
||||||
<% remote_form_for(:group, @group, :url => {:controller => 'groups', :action => 'add_users', :id => @group}, :method => :post) do |f| %>
|
<% remote_form_for(@group, :url => group_users_path(@group), :html => {:method => :post}) do |f| %>
|
||||||
<fieldset><legend><%=l(:label_user_new)%></legend>
|
<fieldset><legend><%=l(:label_user_new)%></legend>
|
||||||
|
|
||||||
<p><%= label_tag "user_search", l(:label_user_search) %><%= text_field_tag 'user_search', nil %></p>
|
<p><%= label_tag "user_search", l(:label_user_search) %><%= text_field_tag 'user_search', nil %></p>
|
||||||
<%= observe_field(:user_search,
|
<%= observe_field(:user_search,
|
||||||
:frequency => 0.5,
|
:frequency => 0.5,
|
||||||
:update => :users,
|
:update => :users,
|
||||||
:url => { :controller => 'groups', :action => 'autocomplete_for_user', :id => @group },
|
:url => autocomplete_for_user_group_path(@group),
|
||||||
|
:method => :get,
|
||||||
:with => 'q')
|
:with => 'q')
|
||||||
%>
|
%>
|
||||||
|
|
||||||
|
|
|
@ -221,7 +221,10 @@ ActionController::Routing::Routes.draw do |map|
|
||||||
map.connect 'attachments/:id/:filename', :controller => 'attachments', :action => 'show', :id => /\d+/, :filename => /.*/
|
map.connect 'attachments/:id/:filename', :controller => 'attachments', :action => 'show', :id => /\d+/, :filename => /.*/
|
||||||
map.connect 'attachments/download/:id/:filename', :controller => 'attachments', :action => 'download', :id => /\d+/, :filename => /.*/
|
map.connect 'attachments/download/:id/:filename', :controller => 'attachments', :action => 'download', :id => /\d+/, :filename => /.*/
|
||||||
|
|
||||||
map.resources :groups
|
map.resources :groups, :member => {:autocomplete_for_user => :get}
|
||||||
|
map.group_users 'groups/:id/users', :controller => 'groups', :action => 'add_users', :id => /\d+/, :conditions => {:method => :post}
|
||||||
|
map.group_user 'groups/:id/users/:user_id', :controller => 'groups', :action => 'remove_user', :id => /\d+/, :conditions => {:method => :delete}
|
||||||
|
|
||||||
map.resources :trackers, :except => :show
|
map.resources :trackers, :except => :show
|
||||||
map.resources :issue_statuses, :except => :show, :collection => {:update_issue_done_ratio => :post}
|
map.resources :issue_statuses, :except => :show, :collection => {:update_issue_done_ratio => :post}
|
||||||
|
|
||||||
|
|
|
@ -90,7 +90,7 @@ class GroupsControllerTest < ActionController::TestCase
|
||||||
|
|
||||||
def test_remove_user
|
def test_remove_user
|
||||||
assert_difference 'Group.find(10).users.count', -1 do
|
assert_difference 'Group.find(10).users.count', -1 do
|
||||||
post :remove_user, :id => 10, :user_id => '8'
|
delete :remove_user, :id => 10, :user_id => '8'
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -56,6 +56,11 @@ class RoutingTest < ActionController::IntegrationTest
|
||||||
should_route :post, "/documents/567/destroy", :controller => 'documents', :action => 'destroy', :id => '567'
|
should_route :post, "/documents/567/destroy", :controller => 'documents', :action => 'destroy', :id => '567'
|
||||||
end
|
end
|
||||||
|
|
||||||
|
context "groups" do
|
||||||
|
should_route :post, "/groups/567/users", :controller => 'groups', :action => 'add_users', :id => '567'
|
||||||
|
should_route :delete, "/groups/567/users/12", :controller => 'groups', :action => 'remove_user', :id => '567', :user_id => '12'
|
||||||
|
end
|
||||||
|
|
||||||
context "issues" do
|
context "issues" do
|
||||||
# REST actions
|
# REST actions
|
||||||
should_route :get, "/issues", :controller => 'issues', :action => 'index'
|
should_route :get, "/issues", :controller => 'issues', :action => 'index'
|
||||||
|
|
Loading…
Reference in New Issue