summaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
authorJean-Philippe Lang <jp_lang@yahoo.fr>2008-03-08 11:17:03 +0000
committerJean-Philippe Lang <jp_lang@yahoo.fr>2008-03-08 11:17:03 +0000
commit9b59ea7256580c2f0d8322b1f3f526d5f0628963 (patch)
tree31e60005cc8d8bb27ed3e491b86a38487cbedc7c /app
parent1830064918cdd134a48dbe9c702c20240177df57 (diff)
downloadredmine-9b59ea7256580c2f0d8322b1f3f526d5f0628963.tar.gz
redmine-9b59ea7256580c2f0d8322b1f3f526d5f0628963.zip
Version details view changes:
* display related issues on the version detail view * display total estimated and spent hours on the version detail view * fixed wiki headings size (same as r1168) git-svn-id: http://redmine.rubyforge.org/svn/trunk@1207 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app')
-rw-r--r--app/helpers/projects_helper.rb7
-rw-r--r--app/models/version.rb10
-rw-r--r--app/views/versions/show.rhtml35
3 files changed, 46 insertions, 6 deletions
diff --git a/app/helpers/projects_helper.rb b/app/helpers/projects_helper.rb
index a16377412..ffbf25e83 100644
--- a/app/helpers/projects_helper.rb
+++ b/app/helpers/projects_helper.rb
@@ -18,12 +18,7 @@
module ProjectsHelper
def link_to_version(version, options = {})
return '' unless version && version.is_a?(Version)
- link_to version.name, {:controller => 'projects',
- :action => 'roadmap',
- :id => version.project_id,
- :completed => (version.completed? ? 1 : nil),
- :anchor => version.name
- }, options
+ link_to h(version.name), { :controller => 'versions', :action => 'show', :id => version }, options
end
def format_activity_day(date)
diff --git a/app/models/version.rb b/app/models/version.rb
index 266346c7b..f9395c5d9 100644
--- a/app/models/version.rb
+++ b/app/models/version.rb
@@ -34,6 +34,16 @@ class Version < ActiveRecord::Base
effective_date
end
+ # Returns the total estimated time for this version
+ def estimated_hours
+ @estimated_hours ||= fixed_issues.sum(:estimated_hours).to_f
+ end
+
+ # Returns the total reported time for this version
+ def spent_hours
+ @spent_hours ||= TimeEntry.sum(:hours, :include => :issue, :conditions => ["#{Issue.table_name}.fixed_version_id = ?", id]).to_f
+ end
+
# Returns true if the version is completed: due date reached and no open issues
def completed?
effective_date && (effective_date <= Date.today) && (open_issues_count == 0)
diff --git a/app/views/versions/show.rhtml b/app/views/versions/show.rhtml
index 1c2a0be44..873354e0d 100644
--- a/app/views/versions/show.rhtml
+++ b/app/views/versions/show.rhtml
@@ -4,11 +4,46 @@
<h2><%= h(@version.name) %></h2>
+<div id="version-summary">
+<% if @version.estimated_hours > 0 || User.current.allowed_to?(:view_time_entries, @project) %>
+<fieldset><legend><%= l(:label_time_tracking) %></legend>
+<table>
+<tr>
+ <td width="130px" align="right"><%= l(:field_estimated_hours) %></td>
+ <td width="240px" class="total-hours"width="130px" align="right"><%= html_hours(lwr(:label_f_hour, @version.estimated_hours)) %></td>
+</tr>
+<% if User.current.allowed_to?(:view_time_entries, @project) %>
+<tr>
+ <td width="130px" align="right"><%= l(:label_spent_time) %></td>
+ <td width="240px" class="total-hours"><%= html_hours(lwr(:label_f_hour, @version.spent_hours)) %></td>
+</tr>
+<% end %>
+</table>
+</fieldset>
+<% end %>
+
<div id="status_by">
<%= render_issue_status_by(@version, params[:status_by]) if @version.fixed_issues.count > 0 %>
</div>
+</div>
+<div id="roadmap">
<%= render :partial => 'versions/overview', :locals => {:version => @version} %>
<%= render(:partial => "wiki/content", :locals => {:content => @version.wiki_page.content}) if @version.wiki_page %>
+<% issues = @version.fixed_issues.find(:all,
+ :include => [:status, :tracker],
+ :order => "#{Tracker.table_name}.position, #{Issue.table_name}.id") %>
+<% if issues.size > 0 %>
+<fieldset class="related-issues"><legend><%= l(:label_related_issues) %></legend>
+<ul>
+<% issues.each do |issue| -%>
+ <li><%= link = link_to_issue(issue)
+ issue.status.is_closed? ? content_tag("del", link) : link %>: <%=h issue.subject %></li>
+<% end -%>
+</ul>
+</fieldset>
+<% end %>
+</div>
+
<% html_title @version.name %>