Revision 12673
Added by Jean-Philippe Lang over 11 years ago
trunk/app/controllers/issues_controller.rb | ||
---|---|---|
428 | 428 |
|
429 | 429 |
@priorities = IssuePriority.active |
430 | 430 |
@allowed_statuses = @issue.new_statuses_allowed_to(User.current, @issue.new_record?) |
431 |
@available_watchers = (@issue.project.users.sort + @issue.watcher_users).uniq |
|
431 |
@available_watchers = @issue.watcher_users |
|
432 |
if @issue.project.users.count <= 20 |
|
433 |
@available_watchers = (@available_watchers + @issue.project.users.sort).uniq |
|
434 |
end |
|
432 | 435 |
end |
433 | 436 |
|
434 | 437 |
def check_for_default_issue_status |
trunk/app/controllers/watchers_controller.rb | ||
---|---|---|
30 | 30 |
accept_api_auth :create, :destroy |
31 | 31 |
|
32 | 32 |
def new |
33 |
@users = users_for_new_watcher |
|
33 | 34 |
end |
34 | 35 |
|
35 | 36 |
def create |
... | ... | |
44 | 45 |
end |
45 | 46 |
respond_to do |format| |
46 | 47 |
format.html { redirect_to_referer_or {render :text => 'Watcher added.', :layout => true}} |
47 |
format.js |
|
48 |
format.js { @users = users_for_new_watcher }
|
|
48 | 49 |
format.api { render_api_ok } |
49 | 50 |
end |
50 | 51 |
end |
... | ... | |
66 | 67 |
end |
67 | 68 |
|
68 | 69 |
def autocomplete_for_user |
69 |
@users = User.active.sorted.like(params[:q]).limit(100).all |
|
70 |
if @watched |
|
71 |
@users -= @watched.watcher_users |
|
72 |
end |
|
70 |
@users = users_for_new_watcher |
|
73 | 71 |
render :layout => false |
74 | 72 |
end |
75 | 73 |
|
... | ... | |
106 | 104 |
format.js { render :partial => 'set_watcher', :locals => {:user => user, :watched => watchables} } |
107 | 105 |
end |
108 | 106 |
end |
107 |
|
|
108 |
def users_for_new_watcher |
|
109 |
users = [] |
|
110 |
if params[:q].blank? && @project.present? |
|
111 |
users = @project.users.sorted |
|
112 |
else |
|
113 |
users = User.active.sorted.like(params[:q]).limit(100) |
|
114 |
end |
|
115 |
if @watched |
|
116 |
users -= @watched.watcher_users |
|
117 |
end |
|
118 |
users |
|
119 |
end |
|
109 | 120 |
end |
trunk/app/views/watchers/_new.html.erb | ||
---|---|---|
17 | 17 |
:project_id => @project) }')" %> |
18 | 18 |
|
19 | 19 |
<div id="users_for_watcher"> |
20 |
<%= principals_check_box_tags( |
|
21 |
'watcher[user_ids][]', |
|
22 |
(watched ? |
|
23 |
watched.addable_watcher_users : User.active.limit(100).all) |
|
24 |
) %> |
|
20 |
<%= principals_check_box_tags('watcher[user_ids][]', users) %> |
|
25 | 21 |
</div> |
26 | 22 |
|
27 | 23 |
<p class="buttons"> |
trunk/app/views/watchers/create.js.erb | ||
---|---|---|
1 |
$('#ajax-modal').html('<%= escape_javascript(render(:partial => 'watchers/new', :locals => {:watched => @watched})) %>'); |
|
1 |
$('#ajax-modal').html('<%= escape_javascript(render(:partial => 'watchers/new', :locals => {:watched => @watched, :users => @users})) %>');
|
|
2 | 2 |
$('#watchers').html('<%= escape_javascript(render(:partial => 'watchers/watchers', :locals => {:watched => @watched})) %>'); |
trunk/app/views/watchers/new.js.erb | ||
---|---|---|
1 |
$('#ajax-modal').html('<%= escape_javascript(render :partial => 'watchers/new', :locals => {:watched => @watched}) %>'); |
|
1 |
$('#ajax-modal').html('<%= escape_javascript(render :partial => 'watchers/new', :locals => {:watched => @watched, :users => @users}) %>');
|
|
2 | 2 |
showModal('ajax-modal', '400px'); |
3 | 3 |
$('#ajax-modal').addClass('new-watcher'); |
Also available in: Unified diff
Don't display default watchers checkboxes on the new issue form when there are more than 20 members (#8562).