0
1

More than 3 years have passed since last update.

Redmineのチケット編集画面において開始日と期日の日付入力が行えない現象への暫定対処法

Last updated at Posted at 2019-10-05

Redmineのチケット編集画面で「開始日」と「期日」の日付入力が行えない現象に遭遇したため、その対処方法のメモです。
対処方法としては暫定的な方法になりますが、同じ状況の方の参考になればと思います。
※追記:どうやら OSX(10.9.5)+Firefox(69.0 64bit) の場合のみ発生するようで、OSバージョンが古いことが原因である可能性が高いです。

発生している現象

Redmineのチケット編集画面において、「開始日」と「期日」はポップアップ型のカレンダーで日付が選択できるはずであるが、カレンダーが表示されない。また、入力欄が操作できないため、日付の入力・変更が行えない。
img001.png

動作環境のバージョン

以下の環境で現象が再現することを確認済み。

  • CentOS-7
  • Ruby2.6.5p114
  • MariaDB 5.5.64
  • Redmine-4.0.4(2019/10/06時点での最新版)

対処方法(暫定対処)

チケット編集画面のViewを修正することで対応。日付入力欄は <input type="date" ... の形のHTMLタグが生成される実装になっているが、これを <input type="text" ... となるように修正した。

$ svn diff
Index: app/views/issues/_attributes.html.erb
===================================================================
--- app/views/issues/_attributes.html.erb       (revision 18597)
+++ app/views/issues/_attributes.html.erb       (working copy)
@@ -52,14 +52,14 @@

 <% if @issue.safe_attribute? 'start_date' %>
 <p id="start_date_area">
-  <%= f.date_field(:start_date, :size => 10, :required => @issue.required_attribute?('start_date')) %>
+  <%= f.date_field(:start_date, :size => 10, :required => @issue.required_attribute?('start_date')).to_str.sub(/type=.*?date"/, '').html_safe %>
   <%= calendar_for('issue_start_date') %>
 </p>
 <% end %>

 <% if @issue.safe_attribute? 'due_date' %>
 <p id="due_date_area">
-  <%= f.date_field(:due_date, :size => 10, :required => @issue.required_attribute?('due_date')) %>
+  <%= f.date_field(:due_date, :size => 10, :required => @issue.required_attribute?('due_date')).to_str.sub(/type=.*?date"/, '').html_safe %>
   <%= calendar_for('issue_due_date') %>
 </p>
 <% end %>

上記の暫定対応を加えた後にRedmineを再起動することで、「開始日」と「期日」の入力欄がテキストフィールドとして表示されるようになるため、YYYY-MM-DDの形式で日付の入力・編集ができるようになります。
img002.png

まとめ

Redmineのチケット編集画面で開始日と期日の変更ができない現象への対処方法を紹介しました。
Redmineのissuesには該当するものは見つけられなかったので、もしかしたら何か設定の不備に起因する現象なのかもしれません。

参考URL

0
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1