Added the ability to log time when changing an issue status.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@586 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
9c38458f8b
commit
e94e88e3ad
|
@ -105,6 +105,13 @@ class IssuesController < ApplicationController
|
||||||
:value => a.filename) unless a.new_record?
|
:value => a.filename) unless a.new_record?
|
||||||
} if params[:attachments] and params[:attachments].is_a? Array
|
} if params[:attachments] and params[:attachments].is_a? Array
|
||||||
|
|
||||||
|
# Log time
|
||||||
|
if logged_in_user.authorized_to(@project, "timelog/edit")
|
||||||
|
@time_entry ||= TimeEntry.new(:project => @project, :issue => @issue, :user => logged_in_user, :spent_on => Date.today)
|
||||||
|
@time_entry.attributes = params[:time_entry]
|
||||||
|
@time_entry.save
|
||||||
|
end
|
||||||
|
|
||||||
flash[:notice] = l(:notice_successful_update)
|
flash[:notice] = l(:notice_successful_update)
|
||||||
Mailer.deliver_issue_edit(journal) if Permission.find_by_controller_and_action(params[:controller], params[:action]).mail_enabled?
|
Mailer.deliver_issue_edit(journal) if Permission.find_by_controller_and_action(params[:controller], params[:action]).mail_enabled?
|
||||||
redirect_to :action => 'show', :id => @issue
|
redirect_to :action => 'show', :id => @issue
|
||||||
|
@ -115,6 +122,7 @@ class IssuesController < ApplicationController
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@assignable_to = @project.members.find(:all, :include => :user).collect{ |m| m.user }
|
@assignable_to = @project.members.find(:all, :include => :user).collect{ |m| m.user }
|
||||||
|
@activities = Enumeration::get_values('ACTI')
|
||||||
end
|
end
|
||||||
|
|
||||||
def destroy
|
def destroy
|
||||||
|
|
|
@ -8,10 +8,23 @@
|
||||||
<%= f.hidden_field :lock_version %>
|
<%= f.hidden_field :lock_version %>
|
||||||
|
|
||||||
<div class="box">
|
<div class="box">
|
||||||
|
<div class="splitcontentleft">
|
||||||
<p><label><%=l(:label_issue_status_new)%></label> <%= @new_status.name %></p>
|
<p><label><%=l(:label_issue_status_new)%></label> <%= @new_status.name %></p>
|
||||||
<p><%= f.select :assigned_to_id, (@issue.project.members.collect {|m| [m.name, m.user_id]}), :include_blank => true %></p>
|
<p><%= f.select :assigned_to_id, (@issue.project.members.collect {|m| [m.name, m.user_id]}), :include_blank => true %></p>
|
||||||
<p><%= f.select :done_ratio, ((0..10).to_a.collect {|r| ["#{r*10} %", r*10] }) %></p>
|
<p><%= f.select :done_ratio, ((0..10).to_a.collect {|r| ["#{r*10} %", r*10] }) %></p>
|
||||||
<p><%= f.select :fixed_version_id, (@project.versions.collect {|v| [v.name, v.id]}), { :include_blank => true } %></p>
|
<p><%= f.select :fixed_version_id, (@project.versions.collect {|v| [v.name, v.id]}), { :include_blank => true } %></p>
|
||||||
|
</div>
|
||||||
|
<div class="splitcontentright">
|
||||||
|
<% if authorize_for('timelog', 'edit') %>
|
||||||
|
<% fields_for :time_entry, @time_entry, { :builder => TabularFormBuilder, :lang => current_language} do |time_entry| %>
|
||||||
|
<p><%= time_entry.text_field :hours, :size => 6, :label => :label_spent_time %> <%= l(:field_hours) %></p>
|
||||||
|
<p><%= time_entry.text_field :comments, :size => 40 %></p>
|
||||||
|
<p><%= time_entry.select :activity_id, (@activities.collect {|p| [p.name, p.id]}) %></p>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="clear"></div>
|
||||||
|
|
||||||
<p><label for="notes"><%= l(:field_notes) %></label>
|
<p><label for="notes"><%= l(:field_notes) %></label>
|
||||||
<%= text_area_tag 'notes', @notes, :cols => 60, :rows => 10, :class => 'wiki-edit' %></p>
|
<%= text_area_tag 'notes', @notes, :cols => 60, :rows => 10, :class => 'wiki-edit' %></p>
|
||||||
|
|
Loading…
Reference in New Issue