Project

General

Profile

Actions

Backport(バックポート) #2042

closed

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

Added by Masato Nagasawa over 13 years ago. Updated over 13 years ago.

Status:
Fixed(完了)
Priority:
High(高め)
Target version:
Start date:
2010-11-09
Due date:
% Done:

100%

Estimated time:

Description

概要

管理画面にて英語版の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()];

Related issues 1 (0 open1 closed)

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

Actions
Actions #1

Updated by Masato Nagasawa over 13 years ago

  • Status changed from Accepted(着手) to Pending Review(レビュー待ち)
  • % Done changed from 0 to 50

更新履歴 09db901ab72a967bf46ec8a3ab1a380b7e2a5977 で適用されました。

Actions #2

Updated by Masato Nagasawa over 13 years ago

  • Target version changed from OpenPNE 3.4.12 to OpenPNE 3.4.13
Actions #3

Updated by Masato Nagasawa over 13 years ago

更新履歴 1e0fd6cf0a714e1e182b558786107581b1a47de1 で適用されました。

Actions #4

Updated by Masato Nagasawa over 13 years ago

  • Status changed from Pending Review(レビュー待ち) to New(新規)
  • Assignee deleted (Masato Nagasawa)

3.4.12 では取り込みを行わないので、一旦取り消します。

Actions #5

Updated by Masato Nagasawa over 13 years ago

  • Status changed from New(新規) to Accepted(着手)
  • Assignee set to Masato Nagasawa
Actions #6

Updated by Masato Nagasawa over 13 years ago

  • Status changed from Accepted(着手) to Pending Review(レビュー待ち)

更新履歴 0bea76c049f291538a170f0a2526cab5107ec0f8 で適用されました。

Actions #7

Updated by Yuma Sakata over 13 years ago

テストOKです。

Actions #8

Updated by Minoru Takai over 13 years ago

  • Subject changed from Notification of Registration URLのテンプレートを編集して招待メールを送信しても編集が反映されない to Notification of Registration URLのテンプレートを編集する際、英語版が日本語版として保存される

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

Actions #9

Updated by Minoru Takai over 13 years ago

  • Status changed from Pending Review(レビュー待ち) to Pending Testing(テスト待ち)
  • % Done changed from 50 to 70

コードチェックをしました。なお、メール周りは 3.4 系以前 と 3.5 系以降 でテンプレートの所在などの実装が異なっていますが、この問題についてはその実装の差異に影響されない(修正内容も同様でよい)ものと言えそうです。

修正方針は(元チケットで評価されているとおり)問題なく、コーディング規約等の観点からも修正内容は問題ありません。

Actions #10

Updated by Minoru Takai over 13 years ago

  • Status changed from Pending Testing(テスト待ち) to Fixed(完了)
  • % Done changed from 70 to 100

note-7 でも行なわれていますが、動作チェックも行いました。

修正前の動作確認

  • 管理画面上の操作で、英語版を編集した後に、
    • (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) に相当する動作についても、想定通りの動作となることが予想できる

修正は適切に行なわれていると判断し、チケットをクローズします。

Actions

Also available in: Atom PDF