Roadmap: more accurate completion percentage calculation (done ratio of open issues is now taken into account).
Issues and issues list: 'done ratio' field now displayed as a progress bar. git-svn-id: http://redmine.rubyforge.org/svn/trunk@908 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -14,44 +14,39 @@
|
||||
<p><strong><%=l(:label_roadmap_due_in)%> <%= distance_of_time_in_words Time.now, version.effective_date %> (<%= format_date(version.effective_date) %>)</strong></p>
|
||||
<% end %>
|
||||
<p><%=h version.description %></p>
|
||||
<% issues = version.fixed_issues.find(:all,
|
||||
:include => [:status, :tracker],
|
||||
:conditions => ["tracker_id in (#{@selected_tracker_ids.join(',')})"],
|
||||
:order => "#{Tracker.table_name}.position") unless @selected_tracker_ids.empty?
|
||||
issues ||= []
|
||||
|
||||
total = issues.size
|
||||
complete = issues.inject(0) {|c,i| i.status.is_closed? ? c + 1 : c }
|
||||
percentComplete = total == 0 ? 100 : (100.0 / total * complete).floor
|
||||
percentIncomplete = 100 - percentComplete
|
||||
%>
|
||||
<table class="progress">
|
||||
<tr>
|
||||
<% if percentComplete > 0 %>
|
||||
<td class="closed" style="width: <%= percentComplete %>%"></td>
|
||||
<% end; if percentIncomplete > 0 %>
|
||||
<td class="open" style="width: <%= percentIncomplete %>%"></td>
|
||||
<% end %>
|
||||
</tr>
|
||||
</table>
|
||||
<em><%= link_to(complete, :controller => 'issues', :action => 'index', :project_id => @project, :status_id => 'c', :fixed_version_id => version, :set_filter => 1) %> <%= lwr(:label_closed_issues, complete) %> (<%= percentComplete %>%)  
|
||||
<%= link_to((total - complete), :controller => 'issues', :action => 'index', :project_id => @project, :status_id => 'o', :fixed_version_id => version, :set_filter => 1) %> <%= lwr(:label_open_issues, total - complete)%> (<%= percentIncomplete %>%)</em>
|
||||
<br />
|
||||
<br />
|
||||
<%= render(:partial => "wiki/content", :locals => {:content => version.wiki_page.content}) if version.wiki_page %>
|
||||
<ul>
|
||||
<% if total == 0 %>
|
||||
<li><%=l(:label_roadmap_no_issues)%></li>
|
||||
<% else %>
|
||||
<% issues.each do |issue| %>
|
||||
<li>
|
||||
<%= link = link_to_issue(issue)
|
||||
issue.status.is_closed? ? content_tag("del", link) : link %>: <%=h issue.subject %>
|
||||
<%= content_tag "em", "(#{l(:label_closed_issues)})" if issue.status.is_closed? %>
|
||||
</li>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</ul>
|
||||
|
||||
<% if version.fixed_issues.count > 0 %>
|
||||
<%= progress_bar(version.completed_pourcent, :width => '40em', :legend => ('%0.0f%' % version.completed_pourcent)) %>
|
||||
<p class="progress-info">
|
||||
<%= link_to(version.closed_issues_count, :controller => 'issues', :action => 'index', :project_id => @project, :status_id => 'c', :fixed_version_id => version, :set_filter => 1) %>
|
||||
<%= lwr(:label_closed_issues, version.closed_issues_count) %>
|
||||
(<%= '%0.0f' % (version.closed_issues_count.to_f / version.fixed_issues.count * 100) %>%)
|
||||
 
|
||||
<%= link_to(version.open_issues_count, :controller => 'issues', :action => 'index', :project_id => @project, :status_id => 'o', :fixed_version_id => version, :set_filter => 1) %>
|
||||
<%= lwr(:label_open_issues, version.open_issues_count)%>
|
||||
(<%= '%0.0f' % (version.open_issues_count.to_f / version.fixed_issues.count * 100) %>%)
|
||||
</p>
|
||||
<%= render(:partial => "wiki/content", :locals => {:content => version.wiki_page.content}) if version.wiki_page %>
|
||||
<% issues = version.fixed_issues.find(:all,
|
||||
:include => [:status, :tracker],
|
||||
:conditions => ["tracker_id in (#{@selected_tracker_ids.join(',')})"],
|
||||
:order => "#{Tracker.table_name}.position") unless @selected_tracker_ids.empty?
|
||||
issues ||= []
|
||||
%>
|
||||
<ul>
|
||||
<% if issues.size > 0 %>
|
||||
<% issues.each do |issue| %>
|
||||
<li>
|
||||
<%= link = link_to_issue(issue)
|
||||
issue.status.is_closed? ? content_tag("del", link) : link %>: <%=h issue.subject %>
|
||||
<%= content_tag "em", "(#{l(:label_closed_issues)})" if issue.status.is_closed? %>
|
||||
</li>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</ul>
|
||||
<% else %>
|
||||
<p><em><%= l(:label_roadmap_no_issues) %></em></p>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
<% content_for :sidebar do %>
|
||||
|
||||
Reference in New Issue
Block a user