プロジェクト

全般

プロフィール

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

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

Hidenori Goto13年以上前に追加. 約4年前に更新.

ステータス:
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

0001-fixed-opMailSend-sendTemplateMail.patch 表示 (2.11 KB) Hidenori Goto, 2010-09-27 18:22

履歴

#1 kaoru n約4年前に更新

  • 対象バージョンOpenPNE 3.10.x にセット

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