プロジェクト

全般

プロフィール

Enhancement(機能追加・改善) #1620

未完了

opMailSend::sendTemplateMailで、$params['subject']の扱いが適切でない

Hidenori Goto さんが約14年前に追加. ほぼ5年前に更新.

ステータス:
New(新規)
優先度:
Normal(通常)
担当者:
-
対象バージョン:
開始日:
2010-09-27
期日:
進捗率:

0%

予定工数:

説明

現象

1

lib/util/opMailSend.class.phpで、yamlテンプレートを使ってメールを送信する場合、yamlテンプレートにメールの件名も記述しているため、呼び出し側ではパラメーターを省略したいが、パラメーターを省略すると警告(Notice)が発生する。

Notice: Undefined index: subject in ***\lib\util\opMailSend.class.php on line ---

2

呼び出し側で$params['subject']を指定しても、メールの件名を変更できない。

修正案

  • $params['subject']が設定されていない場合を考慮する。
  • $params['subject']が設定されている場合はテンプレートよりも$params['subject']を優先する?(コアのポリシーによる)
  • 上で$params['subject']を優先するとした場合、$params['subject']が設定されていればテンプレートからの読み込みは行わない

パッチ

添付参照
($params['subject']が設定されている場合はこれを優先するという処理にしてあります)

また、このパッチでは最終的に$subjectが空だった場合もエラーにする(falseを返す)という処理も追加していますが、これは別チケットとして扱った方がよいのかもしれません。

関連

http://redmine.openpne.jp/issues/471


ファイル

他の形式にエクスポート: Atom PDF