diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2012-01-10 17:35:09 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2012-01-10 17:35:09 +0000 |
commit | 8eef72aa1a443a8cdc9d4c610e68fe408d5a1fcc (patch) | |
tree | df8133e762edab7ead32818174f765f590e7de0d | |
parent | 4fc8c11cc06d3682f64f985e030ae6f57bd92be1 (diff) | |
download | redmine-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.rb | 1 | ||||
-rw-r--r-- | app/views/timelog/_form.html.erb | 14 | ||||
-rw-r--r-- | app/views/timelog/edit.html.erb | 26 | ||||
-rw-r--r-- | app/views/timelog/new.html.erb | 6 | ||||
-rw-r--r-- | test/functional/timelog_controller_test.rb | 4 |
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 |