소스 검색

Limit the year to 4 digits in date input (#38231).

Patch by Go MAEDA.


git-svn-id: https://svn.redmine.org/redmine/trunk@22161 e93f8b46-1217-0410-a6f0-8f06a7374b81
tags/5.1.0
Go MAEDA 1 년 전
부모
커밋
0bb664e43c
2개의 변경된 파일23개의 추가작업 그리고 0개의 파일을 삭제
  1. 12
    0
      config/initializers/10-patches.rb
  2. 11
    0
      test/unit/initializers/patches_test.rb

+ 12
- 0
config/initializers/10-patches.rb 파일 보기

@@ -82,6 +82,13 @@ module ActionView
end
end

module FormHelper
alias :date_field_without_max :date_field
def date_field(object_name, method, options = {})
date_field_without_max(object_name, method, options.reverse_merge(max: '9999-12-31'))
end
end

module FormTagHelper
alias :select_tag_without_non_empty_blank_option :select_tag
def select_tag(name, option_tags = nil, options = {})
@@ -90,6 +97,11 @@ module ActionView
end
select_tag_without_non_empty_blank_option(name, option_tags, options)
end

alias :date_field_tag_without_max :date_field_tag
def date_field_tag(name, value = nil, options = {})
date_field_tag_without_max(name, value, options.reverse_merge(max: '9999-12-31'))
end
end

module FormOptionsHelper

+ 11
- 0
test/unit/initializers/patches_test.rb 파일 보기

@@ -21,6 +21,7 @@ require_relative '../../test_helper'

class PatchesTest < ActiveSupport::TestCase
include Redmine::I18n
include ActionView::Helpers::FormHelper

def setup
Setting.default_language = 'en'
@@ -37,4 +38,14 @@ class PatchesTest < ActiveSupport::TestCase
test "ActiveRecord::Base.human_attribute_name should default to humanized value if no translation has been found (useful for custom fields)" do
assert_equal 'Patch name', ActiveRecord::Base.human_attribute_name('Patch name')
end

test 'ActionView::Helpers::FormHelper.date_field should add max=9999-12-31 to limit year value to 4 digits by default' do
assert_include 'max="9999-12-31"', date_field('issue', 'start_date')
assert_include 'max="2099-12-31"', date_field('issue', 'start_date', max: '2099-12-31')
end

test 'ActionView::Helpers::FormTagHelper.date_field_tag should add max=9999-12-31 to limit year value to 4 digits by default' do
assert_include 'max="9999-12-31"', date_field_tag('start_date')
assert_include 'max="2099-12-31"', date_field_tag('issue', 'start_date', max: '2099-12-31')
end
end

Loading…
취소
저장