From 32bf0f03efdcdfaa6314095979c82bc69f2931e8 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang Date: Fri, 15 Feb 2013 08:48:51 +0000 Subject: [PATCH] Use a textarea instead of an input for the default value of long text custom fields (#13176). git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@11396 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/views/custom_fields/_form.html.erb | 10 ++++++-- public/stylesheets/application.css | 2 ++ .../custom_fields_controller_test.rb | 24 +++++++++++++++++++ 3 files changed, 34 insertions(+), 2 deletions(-) diff --git a/app/views/custom_fields/_form.html.erb b/app/views/custom_fields/_form.html.erb index ca8ebaf49..1157ab9fc 100644 --- a/app/views/custom_fields/_form.html.erb +++ b/app/views/custom_fields/_form.html.erb @@ -27,8 +27,14 @@

<% end %> -<% unless @custom_field.format_in? 'user', 'version' %> -

<%= @custom_field.field_format == 'bool' ? f.check_box(:default_value) : f.text_field(:default_value) %>

+<% case @custom_field.field_format %> +<% when 'bool' %> +

<%= f.check_box(:default_value) %>

+<% when 'text' %> +

<%= f.text_area(:default_value, :rows => 8) %>

+<% when 'user', 'version' %> +<% else %> +

<%= f.text_field(:default_value) %>

<% end %> <%= call_hook(:view_custom_fields_form_upper_box, :custom_field => @custom_field, :form => f) %> diff --git a/public/stylesheets/application.css b/public/stylesheets/application.css index 56f97d066..7b3c22f2a 100644 --- a/public/stylesheets/application.css +++ b/public/stylesheets/application.css @@ -454,6 +454,8 @@ table.fields_permissions td.readonly {background:#ddd;} table.fields_permissions td.required {background:#d88;} textarea#custom_field_possible_values {width: 99%} +textarea#custom_field_default_value {width: 99%} + input#content_comments {width: 99%} p.pagination {margin-top:8px; font-size: 90%} diff --git a/test/functional/custom_fields_controller_test.rb b/test/functional/custom_fields_controller_test.rb index 66f7202bf..c8193c5d4 100644 --- a/test/functional/custom_fields_controller_test.rb +++ b/test/functional/custom_fields_controller_test.rb @@ -56,6 +56,30 @@ class CustomFieldsControllerTest < ActionController::TestCase end end + def test_default_value_should_be_an_input_for_string_custom_field + get :new, :type => 'IssueCustomField', :custom_field => {:field_format => 'string'} + assert_response :success + assert_select 'input[name=?]', 'custom_field[default_value]' + end + + def test_default_value_should_be_a_textarea_for_text_custom_field + get :new, :type => 'IssueCustomField', :custom_field => {:field_format => 'text'} + assert_response :success + assert_select 'textarea[name=?]', 'custom_field[default_value]' + end + + def test_default_value_should_be_a_checkbox_for_bool_custom_field + get :new, :type => 'IssueCustomField', :custom_field => {:field_format => 'bool'} + assert_response :success + assert_select 'input[name=?][type=checkbox]', 'custom_field[default_value]' + end + + def test_default_value_should_not_be_present_for_user_custom_field + get :new, :type => 'IssueCustomField', :custom_field => {:field_format => 'user'} + assert_response :success + assert_select '[name=?]', 'custom_field[default_value]', 0 + end + def test_new_js get :new, :type => 'IssueCustomField', :custom_field => {:field_format => 'list'}, :format => 'js' assert_response :success -- 2.39.5