]> source.dussan.org Git - redmine.git/commitdiff
Separated new/edit views for the timelog controller.
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Tue, 10 Jan 2012 17:35:09 +0000 (17:35 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Tue, 10 Jan 2012 17:35:09 +0000 (17:35 +0000)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@8628 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/controllers/timelog_controller.rb
app/views/timelog/_form.html.erb [new file with mode: 0644]
app/views/timelog/edit.html.erb
app/views/timelog/new.html.erb [new file with mode: 0644]
test/functional/timelog_controller_test.rb

index 13e147817cb52ea4cc913a4188b934d0f9b2dbd3..220954735e7868ac01a4242b42bb9959e5743a9d 100644 (file)
@@ -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 (file)
index 0000000..9f7e280
--- /dev/null
@@ -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>
index 0f8a81e9eda64967bae41511ccefdfc63bfad9af..e5586e19af6cf83b551cb143c68319f2a8dc7365 100644 (file)
@@ -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 (file)
index 0000000..fe62777
--- /dev/null
@@ -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 %>
index 7a788aec55f495f06fab1530ef646f3333e265af..09cf2b513fe260bbd6cb5d20f07707efc456f57a 100644 (file)
@@ -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