diff --git a/app/helpers/issues_helper.rb b/app/helpers/issues_helper.rb
index 566cd1d53..b6699b9ed 100644
--- a/app/helpers/issues_helper.rb
+++ b/app/helpers/issues_helper.rb
@@ -752,4 +752,15 @@ module IssuesHelper
issue.allowed_target_projects(User.current)
end
end
+
+ def form_and_issue_status_select_tag(issue, allowed_statuses)
+ if issue.safe_attribute?('status_id') && allowed_statuses.present?
+ form_for(issue, id: 'quickly-select-issue-status-form') do |f|
+ f.select(:status_id, options_for_select(allowed_statuses.map{|p| [p.name, p.id]}, issue.status.id), {},
+ {onchange: 'this.form.submit(); return false;', class: issue.closed? ? 'selected-status-closed' : 'selected-status-open', id: 'quickly-select-issue-status'})
+ end
+ else
+ issue.status.name
+ end
+ end
end
diff --git a/app/views/issues/show.html.erb b/app/views/issues/show.html.erb
index 3a4e1b40f..56ab2ef38 100644
--- a/app/views/issues/show.html.erb
+++ b/app/views/issues/show.html.erb
@@ -46,7 +46,7 @@
<%= issue_fields_rows do |rows|
- rows.left l(:field_status), @issue.status.name, :class => 'status'
+ rows.left l(:field_status), form_and_issue_status_select_tag(@issue, @allowed_statuses), :class => 'status'
rows.left l(:field_priority), @issue.priority.name, :class => 'priority'
unless @issue.disabled_core_fields.include?('assigned_to_id')
diff --git a/public/stylesheets/application.css b/public/stylesheets/application.css
index da96a7d8d..75ab7e21d 100644
--- a/public/stylesheets/application.css
+++ b/public/stylesheets/application.css
@@ -1461,7 +1461,7 @@ td.gantt_selected_column .gantt_hdr,.gantt_selected_column_container {
color: #fff;
background:#9DB9D5;
}
-.badge-status-open {
+.badge-status-open, #quickly-select-issue-status.selected-status-open {
color: #205D86;
border: 1px solid #205D86;
}
@@ -1469,7 +1469,7 @@ td.gantt_selected_column .gantt_hdr,.gantt_selected_column_container {
color: #696969;
border: 1px solid #696969;
}
-.badge-status-closed {
+.badge-status-closed, #quickly-select-issue-status.selected-status-closed {
color: #1D781D;
border: 1px solid #1D781D;
}