TODO #18683

setMessage を複数利用できるようにする

Added by 渕上 将和 over 1 year ago. Updated 5 months ago.

Status:終了Start date:
Priority:通常Due date:
Assignee:江頭 竜二% Done:

100%

Category:管理画面全般
Target version:4.1.6

Description

- setMessage を続けて2つ利用したい場合に、2つ目の内容でひとつ目が上書きされてしまうため
- 後方互換は保ち、過去のコードはそのまま利用できるようにしておくこと


Associated revisions

Revision e34ba8c6
Added by 江頭 竜二 5 months ago

fix #18683 setMessage を複数利用できる機能を追加 (#981)

  • fix #18683 setMessage を複数利用できるようにする

- setMessage を続けて2つ利用したい場合に、2つ目の内容でひとつ目が上書きされてしまうため
- キーを指定することで簡単に複数利用できるように調整
- 後方互換は保ち、過去のコードはそのまま利用できるように css 調整を入れた

BcMessageComponent として下記のメソッドを持つ
- setSuccess
- setError
- setWarning
- setInfo

History

#1 Updated by 渕上 将和 over 1 year ago

  • Target version deleted (4.0.7)

この件は、相談の上、setMessage をラッピングして、例として setSuccess, setError のように、複数の用途に分けるカタチとしたりするなど、もう少し調整の必要があることがわかった。

ちなみに、Cakeでは3種類、
/lib/Cake/View/Elements/Flash/default.ctp
/lib/Cake/View/Elements/Flash/error.ctp
/lib/Cake/View/Elements/Flash/success.ctp

Bootstrap では7種類のアラート分けがあることがわかった。
https://getbootstrap.com/docs/4.0/components/alerts/

#2 Updated by 権藤 隆行 over 1 year ago

ざっとみてて思ったことを書いてみます。

7種のうち下記は色分けだけの情報のため除外可能かと思います。
・ light alert
・dark alert

現在の管理画面のエラー設計としては「成功」「失敗」の2種類になっているとおもいますので、そこを継承する形で、primary、secondaryを除外した下記がいいかと思います。
・success alert (成功)
・danger alert(失敗)
・warning alert
・info alert

目的ですが、今回増やす原因となった情報はwarningにあたるかと思います。
success → 処理が正常に完了した情報
danger → 処理が正常に完了しなかった情報
warning → 動作に問題ないがが変更したほうがいい情報
info → 閲覧ページに強調表示したい情報

メソッド名としては、ControllerがsetMessageを保持しているので下記だと使いやすいなぁと思いました。
setSuccessMessage(String $message, $log = true)
setErrorMessage(String $message, $log = true)
setWarningMessage(String $message, $log = true)
setInfoMessage(String $message, $log = true)

短くする場合は messageSuccess()とかalertSuccess()とかですかねぇalertSuccessでなんかへんですが。

setSuccessやsetErrorだけではコントローラに存在する情報としてわかりにくいかと思います。

#3 Updated by 権藤 隆行 over 1 year ago

でも、複数flashメッセージを表示したいという機能要望には対応してないっすね。。

#4 Updated by 江頭 竜二 over 1 year ago

  • Target version set to 4.0.8

今回の 4.0.7 では設計まとめられそうにないので見送ります。

#5 Updated by 江頭 竜二 over 1 year ago

  • Target version changed from 4.0.8 to 4.0.9

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

  • Target version changed from 4.0.9 to 4.0.10

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

  • Target version changed from 4.0.10 to 4.0.11

4.0.10 、明日リリースで間に合わないので見送ります。

#8 Updated by 江頭 竜二 10 months ago

  • Target version changed from 4.0.11 to 4.1.4

#9 Updated by 永冨 隆之 8 months ago

  • Target version changed from 4.1.4 to 4.1.5

#10 Updated by 江頭 竜二 7 months ago

  • Assignee changed from 渕上 将和 to 江頭 竜二

もらいます

#11 Updated by 永冨 隆之 7 months ago

  • Target version changed from 4.1.5 to 4.1.6

#12 Updated by 江頭 竜二 5 months ago

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

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

#13 Updated by 永冨 隆之 5 months ago

  • Status changed from 解決 to 終了

Also available in: Atom PDF