summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean-Philippe Lang <jp_lang@yahoo.fr>2012-01-10 17:35:09 +0000
committerJean-Philippe Lang <jp_lang@yahoo.fr>2012-01-10 17:35:09 +0000
commit8eef72aa1a443a8cdc9d4c610e68fe408d5a1fcc (patch)
treedf8133e762edab7ead32818174f765f590e7de0d
parent4fc8c11cc06d3682f64f985e030ae6f57bd92be1 (diff)
downloadredmine-8eef72aa1a443a8cdc9d4c610e68fe408d5a1fcc.tar.gz
redmine-8eef72aa1a443a8cdc9d4c610e68fe408d5a1fcc.zip
Separated new/edit views for the timelog controller.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@8628 e93f8b46-1217-0410-a6f0-8f06a7374b81
-rw-r--r--app/controllers/timelog_controller.rb1
-rw-r--r--app/views/timelog/_form.html.erb14
-rw-r--r--app/views/timelog/edit.html.erb26
-rw-r--r--app/views/timelog/new.html.erb6
-rw-r--r--test/functional/timelog_controller_test.rb4
5 files changed, 25 insertions, 26 deletions
diff --git a/app/controllers/timelog_controller.rb b/app/controllers/timelog_controller.rb
index 13e147817..220954735 100644
--- a/app/controllers/timelog_controller.rb
+++ b/app/controllers/timelog_controller.rb
@@ -115,7 +115,6 @@ class TimelogController < ApplicationController
def new
@time_entry ||= TimeEntry.new(:project => @project, :issue => @issue, :user => User.current, :spent_on => User.current.today)
@time_entry.attributes = params[:time_entry]
- render :action => 'edit'
end
verify :method => :post, :only => :create, :render => {:nothing => true, :status => :method_not_allowed }
diff --git a/app/views/timelog/_form.html.erb b/app/views/timelog/_form.html.erb
new file mode 100644
index 000000000..9f7e28096
--- /dev/null
+++ b/app/views/timelog/_form.html.erb
@@ -0,0 +1,14 @@
+<%= error_messages_for 'time_entry' %>
+<%= back_url_hidden_field_tag %>
+
+<div class="box tabular">
+ <p><%= f.text_field :issue_id, :size => 6 %> <em><%= h("#{@time_entry.issue.tracker.name} ##{@time_entry.issue.id}: #{@time_entry.issue.subject}") if @time_entry.issue %></em></p>
+ <p><%= f.text_field :spent_on, :size => 10, :required => true %><%= calendar_for('time_entry_spent_on') %></p>
+ <p><%= f.text_field :hours, :size => 6, :required => true %></p>
+ <p><%= f.text_field :comments, :size => 100 %></p>
+ <p><%= f.select :activity_id, activity_collection_for_select_options(@time_entry), :required => true %></p>
+ <% @time_entry.custom_field_values.each do |value| %>
+ <p><%= custom_field_tag_with_label :time_entry, value %></p>
+ <% end %>
+ <%= call_hook(:view_timelog_edit_form_bottom, { :time_entry => @time_entry, :form => f }) %>
+</div>
diff --git a/app/views/timelog/edit.html.erb b/app/views/timelog/edit.html.erb
index 0f8a81e9e..e5586e19a 100644
--- a/app/views/timelog/edit.html.erb
+++ b/app/views/timelog/edit.html.erb
@@ -1,26 +1,6 @@
<h2><%= l(:label_spent_time) %></h2>
-<% labelled_form_for(:time_entry, @time_entry, :url => {
- :action => (@time_entry.new_record? ? 'create' : 'update'),
- :id => @time_entry,
- :project_id => @time_entry.project
- },
- :html => {:method => @time_entry.new_record? ? :post : :put}) do |f| %>
-<%= error_messages_for 'time_entry' %>
-<%= back_url_hidden_field_tag %>
-
-<div class="box tabular">
-<p><%= f.text_field :issue_id, :size => 6 %> <em><%= h("#{@time_entry.issue.tracker.name} ##{@time_entry.issue.id}: #{@time_entry.issue.subject}") if @time_entry.issue %></em></p>
-<p><%= f.text_field :spent_on, :size => 10, :required => true %><%= calendar_for('time_entry_spent_on') %></p>
-<p><%= f.text_field :hours, :size => 6, :required => true %></p>
-<p><%= f.text_field :comments, :size => 100 %></p>
-<p><%= f.select :activity_id, activity_collection_for_select_options(@time_entry), :required => true %></p>
-<% @time_entry.custom_field_values.each do |value| %>
- <p><%= custom_field_tag_with_label :time_entry, value %></p>
-<% end %>
-<%= call_hook(:view_timelog_edit_form_bottom, { :time_entry => @time_entry, :form => f }) %>
-</div>
-
-<%= submit_tag l(:button_save) %>
-
+<% labelled_form_for @time_entry, :url => project_time_entry_path(@time_entry.project, @time_entry) do |f| %>
+ <%= render :partial => 'form', :locals => {:f => f} %>
+ <%= submit_tag l(:button_save) %>
<% end %>
diff --git a/app/views/timelog/new.html.erb b/app/views/timelog/new.html.erb
new file mode 100644
index 000000000..fe6277738
--- /dev/null
+++ b/app/views/timelog/new.html.erb
@@ -0,0 +1,6 @@
+<h2><%= l(:label_spent_time) %></h2>
+
+<% labelled_form_for @time_entry, :url => project_time_entries_path(@time_entry.project) do |f| %>
+ <%= render :partial => 'form', :locals => {:f => f} %>
+ <%= submit_tag l(:button_save) %>
+<% end %>
diff --git a/test/functional/timelog_controller_test.rb b/test/functional/timelog_controller_test.rb
index 7a788aec5..09cf2b513 100644
--- a/test/functional/timelog_controller_test.rb
+++ b/test/functional/timelog_controller_test.rb
@@ -40,7 +40,7 @@ class TimelogControllerTest < ActionController::TestCase
@request.session[:user_id] = 3
get :new, :project_id => 1
assert_response :success
- assert_template 'edit'
+ assert_template 'new'
# Default activity selected
assert_tag :tag => 'option', :attributes => { :selected => 'selected' },
:content => 'Development'
@@ -50,7 +50,7 @@ class TimelogControllerTest < ActionController::TestCase
@request.session[:user_id] = 3
get :new, :project_id => 1
assert_response :success
- assert_template 'edit'
+ assert_template 'new'
assert_no_tag :tag => 'option', :content => 'Inactive Activity'
end