summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarius Balteanu <marius.balteanu@zitec.com>2023-11-13 17:35:51 +0000
committerMarius Balteanu <marius.balteanu@zitec.com>2023-11-13 17:35:51 +0000
commit2d864e35f622f77788851d0815b4946e153cf40c (patch)
tree0de216710b0b79f22e5a47fa99bdf67b495cdb3c
parent85867cd2756f6be85004b979000cf1a42c5eddb0 (diff)
downloadredmine-2d864e35f622f77788851d0815b4946e153cf40c.tar.gz
redmine-2d864e35f622f77788851d0815b4946e153cf40c.zip
Merged r22427 and r22428 to 5.0-stable (#39521).
git-svn-id: https://svn.redmine.org/redmine/branches/5.0-stable@22434 e93f8b46-1217-0410-a6f0-8f06a7374b81
-rw-r--r--app/views/issues/_edit.html.erb4
-rw-r--r--test/system/inline_autocomplete_test.rb19
2 files changed, 23 insertions, 0 deletions
diff --git a/app/views/issues/_edit.html.erb b/app/views/issues/_edit.html.erb
index d816ff6fc..219122d25 100644
--- a/app/views/issues/_edit.html.erb
+++ b/app/views/issues/_edit.html.erb
@@ -43,6 +43,10 @@
<%= call_hook(:view_issues_edit_notes_bottom, { :issue => @issue, :notes => @notes, :form => f }) %>
</fieldset>
<% end %>
+ <% if !@issue.attributes_editable? && User.current.allowed_to?(:add_issue_watchers, @issue.project) %>
+ <%= update_data_sources_for_auto_complete({users: watchers_autocomplete_for_mention_path(project_id: @issue.project, q: '', object_type: 'issue',
+ object_id: @issue.id)}) %>
+ <% end %>
<% if @issue.attachments_addable? %>
<fieldset id="add_attachments"><legend><%= l(:label_attachment_plural) %></legend>
<% if @issue.attachments.any? && @issue.safe_attribute?('deleted_attachment_ids') %>
diff --git a/test/system/inline_autocomplete_test.rb b/test/system/inline_autocomplete_test.rb
index e8d65fb15..8c1996054 100644
--- a/test/system/inline_autocomplete_test.rb
+++ b/test/system/inline_autocomplete_test.rb
@@ -218,4 +218,23 @@ class InlineAutocompleteSystemTest < ApplicationSystemTestCase
assert_equal '@dlopper ', find('#notes').value
end
+
+ def test_inline_autocomplete_for_users_on_issues_without_edit_issue_permission
+ role_developer = Role.find(2)
+ role_developer.remove_permission!(:edit_issues)
+ role_developer.add_permission!(:add_issue_watchers)
+
+ log_user('jsmith', 'jsmith')
+ visit '/issues/4/edit'
+
+ find('#issue_notes').click
+ fill_in 'issue[notes]', :with => '@'
+
+ within('.tribute-container') do
+ assert page.has_text? 'John Smith'
+ first('li').click
+ end
+
+ assert_equal '@jsmith ', find('#issue_notes').value
+ end
end