TODO #20448

メールフォーム 和暦で入力値が一桁だと確認画面で値が空になってしまう

Added by 加藤 朗 over 1 year ago. Updated about 1 year ago.

Status:終了Start date:
Priority:通常Due date:
Assignee:-% Done:

100%

Category:-
Target version:4.0.11

Description

メールフィールド「和暦日付」を使用した際に、
選択肢平成1〜9年を選ぶと、確認画面で年の表示が消え、
書き直し画面に戻ると値が空になる。

※デフォルトの状態だと、平成10年以降しか選択できないが、
オプション
minYear|1966|maxYear|2003
等を使用すると選択が可能になるため、上記の問題が発生する。

原因:和暦文字列の正規表現が間違っている。

年号の判定が 0-9の文字2つで判定している
lib/Baser/View/Helper/BcTimeHalper.php 43行目

public $warekiRegex = '!^(?<nengo>[mtsh])-(?<year>[0-9]{2})([/\-])(?<month>0?[0-9]|1[0-2])([/\-])(?<day>[0-2][0-9]|3[01])$!';

↓↓
public $warekiRegex = '!^(?<nengo>[mtsh])-(?<year>[0-9]{1,2})([/\-])(?<month>0?[0-9]|1[0-2])([/\-])(?<day>[0-2][0-9]|3[01])$!';

Associated revisions

Revision 73bebc23
Added by katokaisya over 1 year ago

fix #20448 メールフォーム 和暦で入力値が一桁だと確認画面で値が空になってしまう問題を改善 (#868)

History

#1 Updated by 加藤 朗 over 1 year ago

  • Description updated (diff)

#2 Updated by 加藤 朗 over 1 year ago

  • Description updated (diff)

baser4系だけでなく、3系でも同様に発生します。

#3 Updated by 加藤 朗 over 1 year ago

こちら、実案件のbaserCMS3.0.14にて発生しており、
3系の最新の3.0.15
4系最新4.0.10.1
でも同様の状態です。

#4 Updated by 加藤 朗 over 1 year ago

https://github.com/baserproject/basercms/pull/868
にてプルリク送信済みです。

#5 Updated by Anonymous over 1 year ago

  • Status changed from 担当 to 解決
  • % Done changed from 0 to 100

更新履歴 basercms|commit:73bebc2342a46e9fabb01a7684ed7c5734fe4651 で適用されました。

#6 Updated by 江頭 竜二 about 1 year ago

  • Target version set to 4.0.11

#7 Updated by 江頭 竜二 about 1 year ago

  • Status changed from 解決 to 終了

Also available in: Atom PDF