From 18d0e407118105eee2a91718e7dbaab4765576ce Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang Date: Sat, 9 Jan 2016 09:14:51 +0000 Subject: [PATCH] Merged r14985 (#21535). git-svn-id: http://svn.redmine.org/redmine/branches/3.2-stable@15023 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/controllers/custom_fields_controller.rb | 2 +- app/views/custom_fields/_index.html.erb | 3 +- test/ui/custom_fields_test_ui.rb | 38 +++++++++++++++++++++ 3 files changed, 41 insertions(+), 2 deletions(-) create mode 100644 test/ui/custom_fields_test_ui.rb diff --git a/app/controllers/custom_fields_controller.rb b/app/controllers/custom_fields_controller.rb index 169e93c29..aa9c6aff0 100644 --- a/app/controllers/custom_fields_controller.rb +++ b/app/controllers/custom_fields_controller.rb @@ -56,7 +56,7 @@ class CustomFieldsController < ApplicationController if @custom_field.update_attributes(params[:custom_field]) flash[:notice] = l(:notice_successful_update) call_hook(:controller_custom_fields_edit_after_save, :params => params, :custom_field => @custom_field) - redirect_to edit_custom_field_path(@custom_field) + redirect_back_or_default edit_custom_field_path(@custom_field) else render :action => 'edit' end diff --git a/app/views/custom_fields/_index.html.erb b/app/views/custom_fields/_index.html.erb index 858665e93..b0d3c277b 100644 --- a/app/views/custom_fields/_index.html.erb +++ b/app/views/custom_fields/_index.html.erb @@ -12,6 +12,7 @@ <% (@custom_fields_by_type[tab[:name]] || []).sort.each do |custom_field| -%> + <% back_url = custom_fields_path(:tab => tab[:name]) %> "> <%= link_to custom_field.name, edit_custom_field_path(custom_field) %> <%= l(custom_field.format.label) %> @@ -20,7 +21,7 @@ <%= checked_image custom_field.is_for_all? %> <%= l(:label_x_projects, :count => custom_field.projects.count) if custom_field.is_a? IssueCustomField and !custom_field.is_for_all? %> <% end %> - <%= reorder_links('custom_field', {:action => 'update', :id => custom_field}, :put) %> + <%= reorder_links('custom_field', {:action => 'update', :id => custom_field, :back_url => back_url}, :put) %> <%= delete_link custom_field_path(custom_field) %> diff --git a/test/ui/custom_fields_test_ui.rb b/test/ui/custom_fields_test_ui.rb new file mode 100644 index 000000000..7a2c39100 --- /dev/null +++ b/test/ui/custom_fields_test_ui.rb @@ -0,0 +1,38 @@ +# Redmine - project management software +# Copyright (C) 2006-2015 Jean-Philippe Lang +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +require File.expand_path('../base', __FILE__) + +class Redmine::UiTest::CustomFieldsTest < Redmine::UiTest::Base + fixtures :projects, :users, :email_addresses, :roles, :members, :member_roles, + :trackers, :projects_trackers, :enabled_modules, + :custom_fields, :custom_values, :custom_fields_trackers + + def test_reordering_should_redirect_to_index + assert_equal 1, UserCustomField.find(4).position + log_user 'admin', 'admin' + visit '/custom_fields' + + # click 'User' tab + page.first('a#tab-UserCustomField').click + # click 'Move down' link on the first row + page.first('td.reorder a:nth-child(3)').click + + assert_equal "/custom_fields?tab=UserCustomField", URI.parse(current_url).request_uri + assert_equal 2, UserCustomField.find(4).position + end +end -- 2.39.5