diff --git a/app/models/issue.rb b/app/models/issue.rb index ac3b40bf1..2f0438a6c 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -216,7 +216,10 @@ class Issue < ApplicationRecord # Returns true if user or current user is allowed to add notes to the issue def notes_addable?(user=User.current) - user_tracker_permission?(user, :add_issue_notes) + return false unless user_tracker_permission?(user, :add_issue_notes) + return false if !tracker.allow_comments_on_closed_issues && closed? && !closing? + + true end # Returns true if user or current user is allowed to delete the issue diff --git a/app/models/tracker.rb b/app/models/tracker.rb index f693d15f5..c90316492 100644 --- a/app/models/tracker.rb +++ b/app/models/tracker.rb @@ -74,6 +74,7 @@ class Tracker < ApplicationRecord 'name', 'default_status_id', 'is_in_roadmap', + 'allow_comments_on_closed_issues', 'core_fields', 'position', 'custom_field_ids', diff --git a/app/views/issues/edit.js.erb b/app/views/issues/edit.js.erb index e95336824..1c19284c2 100644 --- a/app/views/issues/edit.js.erb +++ b/app/views/issues/edit.js.erb @@ -5,6 +5,7 @@ replaceIssueFormWith('<%= escape_javascript(render :partial => 'form') %>'); $('#log_time').hide(); <% end %> +<% byebug %> <% if @issue.notes_addable? %> $('#add_notes').show(); $('#add_attachments').show(); diff --git a/app/views/trackers/_form.html.erb b/app/views/trackers/_form.html.erb index 7e3929d3f..416f99121 100644 --- a/app/views/trackers/_form.html.erb +++ b/app/views/trackers/_form.html.erb @@ -11,6 +11,7 @@ :required => true %>
<%= f.check_box :is_in_roadmap %>
+<%= f.check_box :allow_comments_on_closed_issues %>
<%= f.text_area :description, :rows => 4 %>
diff --git a/config/locales/en.yml b/config/locales/en.yml index 819846e1a..7b106ed1e 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -425,6 +425,7 @@ en: field_estimated_remaining_hours: Estimated remaining time field_last_activity_date: Last activity field_thousands_delimiter: Thousands delimiter + field_allow_comments_on_closed_issues: Allow comments on closed issues setting_app_title: Application title setting_welcome_text: Welcome text