Index: app/views/issue_statuses/edit.rhtml =================================================================== --- app/views/issue_statuses/edit.rhtml (révision 1648) +++ app/views/issue_statuses/edit.rhtml (copie de travail) @@ -4,3 +4,66 @@ <%= render :partial => 'form' %> <%= submit_tag l(:button_save) %> <% end %> + +
+
+ +

<%= l(:label_workflow) %>

+<% + prev_role_name = nil + prev_tracker_id = nil + tracker = nil + workflows = @issue_status.workflows + + workflows.each_with_index do |w, i| + next_role = workflows[i].role.name + if i < (workflows.size - 1) + next_role_name = workflows[i+1].role.name + next_tracker_id = workflows[i+1].tracker_id + else + next_role_name = nil + next_tracker_id = nil + end + + if tracker.nil? || prev_tracker_id.nil? || (prev_tracker_id != w.tracker_id) + tracker = Tracker.find_by_id(w.tracker_id) + end + + # Begin of role block + if prev_role_name.nil? || (prev_role_name != w.role.name) +-%> +
+ <%= "#{l('label_role')} #{h(w.role.name)}" %> +<% + end + + # Begin of tracker block + if (prev_tracker_id != w.tracker_id) || (prev_role_name != w.role.name) +-%> +
+ <%= "#{l('label_tracker')} #{h(tracker.name)}" %> +<% + end + +-%> + <%= link_to "#{w.old_status.name} -> #{w.new_status.name}", {:controller => :workflows, :action => :edit, :role_id => w.role_id, :tracker_id => w.tracker_id, } %>
+<% + # End of tracker block + if (next_tracker_id != w.tracker_id) || (next_role_name != w.role.name) +-%> +
+<% + end + + # End of role block + if next_role_name != w.role.name + +-%> +
+<% + end + + prev_role_name = w.role.name + prev_tracker_id = w.tracker_id + end +-%>