diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2007-03-25 12:59:48 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2007-03-25 12:59:48 +0000 |
commit | 887f11435b4d18ccb5d6e0e39893935f93c903c9 (patch) | |
tree | af341a2c536c0a283d18552f088898082791ffbb /app | |
parent | d7f1b873c8e8daec010ef729adf9a91070cdc0eb (diff) | |
download | redmine-887f11435b4d18ccb5d6e0e39893935f93c903c9.tar.gz redmine-887f11435b4d18ccb5d6e0e39893935f93c903c9.zip |
Patch #9530 Progress bars for roadmap versions (Nick Read)
Slightly edited and links to issues list added
git-svn-id: http://redmine.rubyforge.org/svn/trunk@379 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app')
-rw-r--r-- | app/views/projects/roadmap.rhtml | 51 |
1 files changed, 37 insertions, 14 deletions
diff --git a/app/views/projects/roadmap.rhtml b/app/views/projects/roadmap.rhtml index 38e5fbd15..19a3032b0 100644 --- a/app/views/projects/roadmap.rhtml +++ b/app/views/projects/roadmap.rhtml @@ -17,21 +17,44 @@ <% @versions.each do |version| %> <h3 class="icon22 icon22-package"><%= version.name %></h3> - <p><%= format_date(version.effective_date) %><br /> - <%=h version.description %></p> - <ul> - <% version.fixed_issues.find(:all, + <p><%=h version.description %></p> + <p><strong><%=l(:label_roadmap_due_in)%> <%= distance_of_time_in_words Time.now, version.effective_date %> (<%= format_date(version.effective_date) %>)</strong></p> + <% issues = version.fixed_issues.find(:all, :include => :status, :conditions => ["tracker_id in (#{@selected_tracker_ids.join(',')})"], - :order => "position").each do |issue| %> - <li> - <%= - link = link_to("#{issue.tracker.name} ##{issue.id}", :controller => 'issues', :action => 'show', :id => 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 %> + :order => "position") + + total = issues.size + complete = issues.inject(0) {|c,i| i.status.is_closed? ? c + 1 : c } + percentComplete = total == 0 ? 100 : (100 / 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 => 'projects', :action => 'list_issues', :id => @project, :status_id => 'c', :fixed_version_id => version, :set_filter => 1) %> <%= lwr(:label_closed_issues, complete) %> (<%= percentComplete %>%)   + <%= link_to((total - complete), :controller => 'projects', :action => 'list_issues', :id => @project, :status_id => 'o', :fixed_version_id => version, :set_filter => 1) %> <%= lwr(:label_open_issues, total - complete)%> (<%= percentIncomplete %>%)</em> + <br /> + <br /> + <ul> + <% if total == 0 %> + <li><%=l(:label_roadmap_no_issues)%></li> + <% else %> + <% issues.each do |issue| %> + <li> + <%= link = link_to("#{issue.tracker.name} ##{issue.id}", :controller => 'issues', :action => 'show', :id => 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> <% end %> -</div>
\ No newline at end of file +</div> |