プロジェクト

全般

プロフィール

Backport(バックポート) #1771

完了

Notification of Registration URLのテンプレートを編集する際、英語版が日本語版として保存される

Mutsumi Imamura さんが約14年前に追加. 13年以上前に更新.

ステータス:
Fixed(完了)
優先度:
High(高め)
担当者:
対象バージョン:
開始日:
2010-11-09
期日:
2011-06-24
進捗率:

100%

予定工数:

説明

概要

管理画面にて英語版のNotification of Registration URLのテンプレートを編集し、SNSメンバーから招待メールを送信した場合、送信されたメールの内容に編集が反映されない。

追記

原因を見れば明らかですが、この問題は「英語のメールテンプレートが反映されない」という問題と同時に「英語のメールテンプレートが日本語版で使用される」という問題を発生させています。

  1. 管理画面の言語設定を英語にする
  2. 管理画面のメール設定のメール通知テンプレート設定ページにアクセスする
  3. Notification of Registration URLのテンプレートを編集する
  4. pc_frontend側にログインし言語設定を【日本語】にする
  5. SNSメンバーから招待メールを送信する
  6. 送信された招待メールの内容を確認する
  7. 【英語(あるいは上記で編集した)メールが届く】

再現方法

  1. 管理画面の言語設定を英語にする
  2. 管理画面のメール設定のメール通知テンプレート設定ページにアクセスする
  3. Notification of Registration URLのテンプレートを編集する
  4. pc_frontend側にログインし言語設定を英語にする
  5. SNSメンバーから招待メールを送信する
  6. 送信された招待メールの内容を確認する
  7. 編集が反映されていない

再現バージョン

  • OpenPNE 3.6beta7-dev
  • OpenPNE 3.6beta6

その他のバージョンについては未確認

原因

テンプレート保存時に "ja_JP" として保存していることが原因で、
どの言語を選択していても ja_JP のテンプレートとして保存されてしまう。

apps/pc_backend/modules/mail/actions/actions.class.php
$translation = $obj->Translation['ja_JP'];

修正内容

文字列リテラルから、sfDoctrineRecord::getDefaultCulture()に変更。

$translation = $obj->Translation[sfDoctrineRecord::getDefaultCulture()];

関連するチケット 1 (0件未完了1件完了)

関連している OpenPNE 3 - Bug(バグ) #2041: Notification of Registration URLのテンプレートを編集する際、英語版が日本語版として保存されるFixed(完了)Masato Nagasawa2010-11-09

操作

Kiwa Sakai さんがほぼ14年前に更新

  • 優先度Normal(通常) から High(高め) に変更

正常動作に支障のでる問題なので、優先度をhighに変更します。

Hidenori Goto さんがほぼ14年前に更新

以下のチケットが同様の内容ではないでしょうか。

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

Shingo Yamada さんが13年以上前に更新

  • 担当者Masato Nagasawa にセット

Masato Nagasawa さんが13年以上前に更新

  • ステータスNew(新規) から Accepted(着手) に変更

テンプレートのレコード notification_mail_translation のカラム lang が "ja_JP" となっていることが原因です。
試しに "en" に変更し招待メールを送ったところ、編集したテンプレートが使用されることを確認しました。

Masato Nagasawa さんが13年以上前に更新

  • ステータスAccepted(着手) から Pending Review(レビュー待ち) に変更
  • 進捗率0 から 50 に変更

テスト

区分 期待結果 結果
言語を英語にして、テンプレートを編集し招待メールを送信 英語で保存したテンプレートが使用される
言語を日本語にして、テンプレートを編集し招待メールを送信 日本語で保存したテンプレートが使用される

Masato Nagasawa さんが13年以上前に更新

  • 対象バージョンOpenPNE3.6beta9 にセット

Masato Nagasawa さんが13年以上前に更新

更新履歴 110304ca2a3e7f921bf1dec00ad9e69a20153993 で適用されました。

Masato Nagasawa さんが13年以上前に更新

  • 対象バージョンOpenPNE3.6beta9 から OpenPNE 3.6.0 に変更

Masato Nagasawa さんが13年以上前に更新

  • 対象バージョンOpenPNE 3.6.0 から OpenPNE3.6beta11 に変更

Naoya Tozuka さんが13年以上前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率50 から 70 に変更

変更点確認しました。問題ありません。

Minoru Takai さんが13年以上前に更新

  • 題名Notification of Registration URLのテンプレートを編集して招待メールを送信しても編集が反映されない から Notification of Registration URLのテンプレートを編集する際、英語版が日本語版として保存される に変更

問題を捉えきれていなかったため概要を追記しました。

Minoru Takai さんが13年以上前に更新

  • ステータスPending Testing(テスト待ち) から Fixed(完了) に変更
  • 進捗率70 から 100 に変更

動作テストを行いました。

以下は 3.4.x 向けの #2042 に示したものと同一ですが、3.6.x のソースコードを用いて同様のテストを行ったところ、3.4.x と同様に想定通りの結果となったため同一のものを示しておきます。

修正前の動作確認

  • 管理画面上の操作で、英語版を編集した後に、
    • (1) 【バグ】英語版を編集しようとすると、編集前の英語版テンプレートが表示される
    • (2) 【バグ】日本語版を編集しようとすると、編集した英語版のテンプレートが表示される
    • (3) 【バグ】メンバー画面で、日本語設定のまま招待メールを送ると、英語版のテンプレートで送信される
    • (4) 【バグ】メンバー画面で、英語設定のまま招待メールを送ると、編集前の英語版テンプレートで送信される
    • (5) 【バグ】データベースの notification_mail_translation テーブルを見ると lang: ja_JP として保存されている

当初、このチケットで問題とされたのは上記の (4) のみですが、これらは全て同じ原因によって引き起こされているため修正できているかどうかは、これらのいずれかが修正できているかどうかで評価することが可能です(もちろん上記5つが全て解消されていることの確認が重要であることには変わりありません)。

修正後の動作確認

  • 管理画面上の操作で、英語版を編集した後に、
    • (1) 英語版を編集しようとすると、編集した英語版テンプレートが表示される
    • (2) 日本語版を編集しようとすると、日本語版のテンプレートが表示される
    • (3) メンバー画面で、日本語設定のまま招待メールを送ると、日本語版のテンプレートで送信される
    • (4) メンバー画面で、英語設定のまま招待メールを送ると、編集が反映された英語版テンプレートで送信される
    • (5) データベースの notification_mail_translation テーブルを見ると lang: en として保存されている
  • 管理画面上の操作で、日本語版を編集した後に、
    • (6) データベースの notification_mail_translation テーブルを見ると lang: ja_JP として保存されている
      • (6) より (1)-(4) に相当する動作についても、想定通りの動作となることが予想できる

修正内容は適切と判断し、チケットをクローズします。

Kousuke Ebihara さんが13年以上前に更新

  • 期日2011-06-24 にセット

Shingo Yamada さんが13年以上前に更新

  • トラッカーBug(バグ) から Backport(バックポート) に変更

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