diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2007-09-15 14:54:15 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2007-09-15 14:54:15 +0000 |
commit | 89b349818bfaee2669aab99df9e11de84c0f145c (patch) | |
tree | ca30567f7ce31b9ffdcf57053b6e0d097215d086 /app | |
parent | 4967f10356ea15f996376839a81e4f0e4947e53c (diff) | |
download | redmine-89b349818bfaee2669aab99df9e11de84c0f145c.tar.gz redmine-89b349818bfaee2669aab99df9e11de84c0f145c.zip |
Added 'Estimated hours' attribute on issues.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@731 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app')
-rw-r--r-- | app/models/issue.rb | 1 | ||||
-rw-r--r-- | app/views/issues/edit.rhtml | 1 | ||||
-rw-r--r-- | app/views/issues/show.rhtml | 31 | ||||
-rw-r--r-- | app/views/projects/add_issue.rhtml | 1 |
4 files changed, 20 insertions, 14 deletions
diff --git a/app/models/issue.rb b/app/models/issue.rb index 827c6f70e..23cc71f7c 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -42,6 +42,7 @@ class Issue < ActiveRecord::Base validates_presence_of :subject, :description, :priority, :tracker, :author, :status validates_length_of :subject, :maximum => 255 validates_inclusion_of :done_ratio, :in => 0..100 + validates_numericality_of :estimated_hours, :allow_nil => true validates_associated :custom_values, :on => :update # set default status for new issues diff --git a/app/views/issues/edit.rhtml b/app/views/issues/edit.rhtml index f131041ed..53ffd7f6c 100644 --- a/app/views/issues/edit.rhtml +++ b/app/views/issues/edit.rhtml @@ -18,6 +18,7 @@ <div class="splitcontentright"> <p><%= f.text_field :start_date, :size => 10 %><%= calendar_for('issue_start_date') %></p> <p><%= f.text_field :due_date, :size => 10 %><%= calendar_for('issue_due_date') %></p> +<p><%= f.text_field :estimated_hours, :size => 3 %> <%= l(:field_hours) %></p> <p><%= f.select :done_ratio, ((0..10).to_a.collect {|r| ["#{r*10} %", r*10] }) %></p> </div> diff --git a/app/views/issues/show.rhtml b/app/views/issues/show.rhtml index 59bf9eaed..6be93d483 100644 --- a/app/views/issues/show.rhtml +++ b/app/views/issues/show.rhtml @@ -6,34 +6,37 @@ <%= link_to_if_authorized l(:button_delete), {:controller => 'issues', :action => 'destroy', :id => @issue}, :confirm => l(:text_are_you_sure), :method => :post, :class => 'icon icon-del' %> </div> -<h2><%= @issue.tracker.name %> #<%= @issue.id %> - <%=h @issue.subject %></h2> - +<h2><%= @issue.tracker.name %> #<%= @issue.id %>: <%=h @issue.subject %></h2> + <p class="author"> + <%= l(:label_added_time_by, distance_of_time_in_words(Time.now, @issue.created_on), link_to_user(@issue.author)) %>. + <%= l(:label_updated_time, distance_of_time_in_words(Time.now, @issue.updated_on)) if @issue.created_on != @issue.updated_on %>. + </p> <div class="box"> <table width="100%"> <tr> <td style="width:15%"><b><%=l(:field_status)%> :</b></td><td style="width:35%"><%= @issue.status.name %></td> - <td style="width:15%"><b><%=l(:field_priority)%> :</b></td><td style="width:35%"><%= @issue.priority.name %></td> -</tr> -<tr> - <td><b><%=l(:field_assigned_to)%> :</b></td><td><%= @issue.assigned_to ? link_to_user(@issue.assigned_to) : "-" %></td> - <td><b><%=l(:field_category)%> :</b></td><td><%=h @issue.category ? @issue.category.name : "-" %></td> -</tr> -<tr> - <td><b><%=l(:field_author)%> :</b></td><td><%= link_to_user @issue.author %></td> - <td><b><%=l(:field_start_date)%> :</b></td><td><%= format_date(@issue.start_date) %></td> + <td style="width:15%"><b><%=l(:field_start_date)%> :</b></td><td style="width:35%"><%= format_date(@issue.start_date) %></td> </tr> <tr> - <td><b><%=l(:field_created_on)%> :</b></td><td><%= format_date(@issue.created_on) %></td> + <td><b><%=l(:field_priority)%> :</b></td><td><%= @issue.priority.name %></td> <td><b><%=l(:field_due_date)%> :</b></td><td><%= format_date(@issue.due_date) %></td> </tr> <tr> - <td><b><%=l(:field_updated_on)%> :</b></td><td><%= format_date(@issue.updated_on) %></td> + <td><b><%=l(:field_assigned_to)%> :</b></td><td><%= @issue.assigned_to ? link_to_user(@issue.assigned_to) : "-" %></td> <td><b><%=l(:field_done_ratio)%> :</b></td><td><%= @issue.done_ratio %> %</td> </tr> <tr> - <td><b><%=l(:field_fixed_version)%> :</b></td><td><%= @issue.fixed_version ? link_to_version(@issue.fixed_version) : "-" %></td> + <td><b><%=l(:field_category)%> :</b></td><td><%=h @issue.category ? @issue.category.name : "-" %></td> + <% if User.current.allowed_to?(:view_time_entries, @project) %> <td><b><%=l(:label_spent_time)%> :</b></td> <td><%= @issue.spent_hours > 0 ? (link_to lwr(:label_f_hour, @issue.spent_hours), {:controller => 'timelog', :action => 'details', :issue_id => @issue}, :class => 'icon icon-time') : "-" %></td> + <% end %> +</tr> +<tr> + <td><b><%=l(:field_fixed_version)%> :</b></td><td><%= @issue.fixed_version ? link_to_version(@issue.fixed_version) : "-" %></td> + <% if @issue.estimated_hours %> + <td><b><%=l(:field_estimated_hours)%> :</b></td><td><%= lwr(:label_f_hour, @issue.estimated_hours) %></td> + <% end %> </tr> <tr> <% n = 0 diff --git a/app/views/projects/add_issue.rhtml b/app/views/projects/add_issue.rhtml index 1793ef1d8..e19d00826 100644 --- a/app/views/projects/add_issue.rhtml +++ b/app/views/projects/add_issue.rhtml @@ -19,6 +19,7 @@ <div class="splitcontentright"> <p><%= f.text_field :start_date, :size => 10 %><%= calendar_for('issue_start_date') %></p> <p><%= f.text_field :due_date, :size => 10 %><%= calendar_for('issue_due_date') %></p> +<p><%= f.text_field :estimated_hours, :size => 3 %> <%= l(:field_hours) %></p> <p><%= f.select :done_ratio, ((0..10).to_a.collect {|r| ["#{r*10} %", r*10] }) %></p> </div> |