Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

受注登録時に電話番号のバリデーションを効くように修正 #5464

Merged
merged 1 commit into from
Jul 22, 2022

Conversation

kiy0taka
Copy link
Contributor

@kiy0taka kiy0taka commented Jul 22, 2022

概要(Overview・Refs Issue)

受注登録画面で電話番号に15桁以上の数字を入れて登録するとシステムエラーになる。

PhoneNumberType では OptionsResolver#setDefaults を使用して制約を設定しているが、 OrderType では phone_number に対して NotBlank だけを設定している。PhoneNumberType のデフォルト制約と OrderTypeで追加している制約がマージされるのが望ましいが、現状は OrderType で設定した制約のみになっている。

$resolver->setDefaults([
'options' => ['constraints' => []],
'constraints' => $constraints,
'attr' => [
'placeholder' => 'common.phone_number_sample',
],
'trim' => true,
]);
}

->add('phone_number', PhoneNumberType::class, [
'required' => false,
'constraints' => [
new Assert\NotBlank(),
],
])

方針(Policy)

OptionsResolver#setNormalizerを使って制約がマージされるようにしました。

実装に関する補足(Appendix)

テスト(Test)

相談(Discussion)

他にも同様の箇所がありそうです。

マイナーバージョン互換性保持のための制限事項チェックリスト

  • 既存機能の仕様変更はありません
  • フックポイントの呼び出しタイミングの変更はありません
  • フックポイントのパラメータの削除・データ型の変更はありません
  • twigファイルに渡しているパラメータの削除・データ型の変更はありません
  • Serviceクラスの公開関数の、引数の削除・データ型の変更はありません
  • 入出力ファイル(CSVなど)のフォーマット変更はありません

レビュワー確認項目

  • 動作確認
  • コードレビュー
  • E2E/Unit テスト確認(テストの追加・変更が必要かどうか)
  • 互換性が保持されているか
  • セキュリティ上の問題がないか
    • 権限を超えた操作が可能にならないか
    • 不要なファイルアップロードがないか
    • 外部へ公開されるファイルや機能の追加ではないか
    • テンプレートでのエスケープ漏れがないか

@kiy0taka kiy0taka force-pushed the fix/order-phone-number-validation branch from a44dac3 to 36cbdeb Compare July 22, 2022 04:59
@codecov-commenter
Copy link

codecov-commenter commented Jul 22, 2022

Codecov Report

Merging #5464 (36cbdeb) into 4.1 (091b3b1) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##                4.1    #5464   +/-   ##
=========================================
  Coverage     68.58%   68.59%           
  Complexity     6162     6162           
=========================================
  Files           463      463           
  Lines         25308    25305    -3     
=========================================
- Hits          17358    17357    -1     
+ Misses         7950     7948    -2     
Flag Coverage Δ
E2E 57.94% <100.00%> (-0.01%) ⬇️
Unit 76.10% <100.00%> (-0.05%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
src/Eccube/Form/Type/PhoneNumberType.php 75.00% <100.00%> (+0.80%) ⬆️
src/Eccube/Entity/TaxRule.php 85.18% <0.00%> (-1.24%) ⬇️
...be/Service/PurchaseFlow/Processor/TaxProcessor.php 73.77% <0.00%> (+3.27%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 091b3b1...36cbdeb. Read the comment docs.

@chihiro-adachi chihiro-adachi added this to the 4.1.3 milestone Jul 22, 2022
@carkn
Copy link
Contributor

carkn commented Jul 22, 2022

@kiy0taka
確認しました。問題ないかと思います。
マージします。

@carkn carkn merged commit 25e7b1c into EC-CUBE:4.1 Jul 22, 2022
@Yangsin Yangsin modified the milestones: 4.1.3, 4.2.0 Apr 17, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants