Bug(バグ) #2783
完了携帯メールに署名が反映されない
100%
説明
Overview (現象)¶
携帯メールに署名が反映されない
Environment (再現バージョン)¶
OpenPNE3.4.20
Way to repro (再現手順)¶
1. SNS招待ページ(/member/invite)にアクセスする
2. SNS未登録の携帯メールアドレスに招待メール送信する
3. 携帯で受信したSNS招待メール確認する
4. 署名が反映されない
Causes (原因)¶
mail_template.yml では携帯版用の signature が定義されているものの、 templates/mail/mobile/ 以下には _signature.php がなかったことが原因である。
メールテンプレートは以下の順序で読み込まれる。
1. データベースからの読み込み (sfTemplateSwitchableLoaderDoctrine によって)
2. ファイルシステムからの読み込み (opNotificationMailTemplateLoaderFilesystem によって)
3.6 では mail_template.yml で定義されているテンプレートも読み込まれるが、 3.4 ではこのファイルは管理画面のメールテンプレート設定機能におけるデフォルト設定値でしかないため、テンプレートが未設定の状態でも反映させたいテンプレートが存在するのならば、テンプレートファイルとしても配置しておかなければならなかった。
Way to fix (修正内容)¶
- templates/mail/mobile/_signature.php の追加 (7cfa154754e5f4020775419497539b1fc54eb5b1)
- signature テンプレートのデフォルト設定が携帯向けの内容でなかった (携帯向けの signature はおそらく意図して追加したものではなかったと思われる) ので、携帯に適合するように修正した (23fc594d2e1fc10a0652870f05731c40fd7ab2d5)
備考¶
PCメールで署名が反映されることは確認済みです。
Yuya Watanabe さんが12年以上前に更新
メモ¶
携帯メール署名テンプレート設定 ( /pc_backend.php/mail/edit/mobile_signature )で保存をせずに招待メールを送信すると発生する.保存を行うと発生しなくなる.
下記部分で InvalidArgumentException が発生する.
エラーメッセージ: The template "mobile_signature" does not exist (renderer: notify_mail).
lib/util/sfOpenPNEMailSend.class.php 102 行目
100 try 101 { 102 return $view->render(); 103 } 104 catch (InvalidArgumentException $e) 105 { 106 if ($isOptional) 107 { 108 return ''; 109 } 110 111 throw $e; 112 }
Yuya Watanabe さんが12年以上前に更新
- ステータス を New(新規) から Accepted(着手) に変更
- 担当者 を Yuya Watanabe にセット
Kousuke Ebihara さんが12年以上前に更新
- ステータス を Accepted(着手) から Pending Review(レビュー待ち) に変更
- 進捗率 を 0 から 50 に変更
更新履歴 23fc594d2e1fc10a0652870f05731c40fd7ab2d5 で適用されました。
Yuya Watanabe さんが12年以上前に更新
- ステータス を Pending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
- 進捗率 を 50 から 70 に変更
Yuma Sakata さんが12年以上前に更新
- ステータス を Pending Testing(テスト待ち) から Fixed(完了) に変更
- 進捗率 を 70 から 100 に変更
テストOKです。