プロジェクト

全般

プロフィール

Bug(バグ) #4104

管理画面 メール通知テンプレート設定 にてエラーメッセージが翻訳されない

kaoru nishizoe11ヶ月前に追加. 3ヶ月前に更新.

ステータス:
Pending Testing(テスト待ち)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2017-01-06
期日:
進捗率:

70%

3.6 で発生するか:
Unknown (未調査)
3.8 で発生するか:
Yes (はい)

説明

Overview (現象)

#2909 にて、文字数チェックを追加したがエラーメッセージが日本語に翻訳されない。

Causes (原因)

https://github.com/openpne/OpenPNE3/blob/master/apps/pc_backend/modules/mail/actions/actions.class.php#L69

$this->getUser()->setFlash('error', (string)$this->form->getErrorSchema(), false);

https://github.com/openpne/OpenPNE3/blob/master/apps/pc_backend/templates/layout.php#L44
<p id="flashError" class="flash"><?php echo __($sf_user->getFlash('error')) ?></p>

のようにフラッシュメッセージにてエラーメッセージを表示しようとしていた。
フラッシュメッセージにて表示する際に翻訳を試みているが、既に編集された文字列であるため翻訳されない。

Way to fix (修正内容)

下記のように renderGlobalErrors() または renderError() を使用して表示するように変更する。

--- a/apps/pc_backend/modules/mail/actions/actions.class.php
+++ b/apps/pc_backend/modules/mail/actions/actions.class.php
@@ -66,7 +66,6 @@ class mailActions extends sfActions
         $this->getUser()->setFlash('notice', 'Saved.');
         $this->redirect('@mail_template_specified?name='.$this->name);
       }
-      $this->getUser()->setFlash('error', (string)$this->form->getErrorSchema(), false);
     }
   }

--- a/apps/pc_backend/modules/mail/templates/templateSuccess.php
+++ b/apps/pc_backend/modules/mail/templates/templateSuccess.php
@@ -70,10 +70,14 @@
<?php echo __($rawConfig[$_currentTarget][$_currentKey]['caption']) ?>

<?php echo $form->renderFormTag(url_for('@mail_template_specified?name='.$name), array('method' => 'post')); ?>
+<?php echo $form->renderGlobalErrors() ?>
<?php echo $form->renderHiddenFields(); ?>
<?php if (isset($form['title'])): ?>
-<?php echo $form['title']->renderLabel() ?><?php echo $form['title']->render(array('class' => 'title')) ?>
+<?php echo $form['title']->renderLabel() ?>
+<?php echo $form['title']->renderError() ?>
+<?php echo $form['title']->render(array('class' => 'title')) ?>
<?php endif; ?>
+<?php echo $form['template']->renderError() ?>
<?php echo $form['template']->render(array('rows' => 30, 'cols' => 72)) ?>

<?php echo __('Save') ?>


子チケット

Backport(バックポート) #4110: 管理画面 メール通知テンプレート設定 にてエラーメッセージが翻訳されないFixed(完了)kaoru nishizoe

Backport(バックポート) #4111: 管理画面 メール通知テンプレート設定 にてエラーメッセージが翻訳されないFixed(完了)kaoru nishizoe


関連するチケット

関連している OpenPNE 3 - Bug(バグ) #2392: 管理画面:メール通知送信設定 で CSRFtoken の値が異常だった場合にエラーメッセージが表示されない Fixed(完了) 2011-09-05 2011-09-21
関連している OpenPNE 3 - Enhancement(機能追加・改善) #91: Add ability for email notifications (お知らせメールのための機能を追加する) Fixed(完了) 2009-10-13
関連している OpenPNE 3 - Bug(バグ) #2909: 管理画面:メール通知テンプレート設定にて、タイトルが長過ぎる場合にエラーにならず途中で切れて保存されてしまう Pending Testing(テスト待ち) 2017-01-06
関連している OpenPNE 3 - Bug(バグ) #4105: 管理画面 コミュニティカテゴリ設定 カテゴリ名称変更時のエラーメッセージが翻訳されない Pending Testing(テスト待ち) 2017-01-06
関連している OpenPNE 3 - Bug(バグ) #4106: 管理画面 メール通知送信設定 にてエラーメッセージが翻訳されない Won't fix(対応せず) 2017-01-06

履歴

#1 kaoru nishizoe11ヶ月前に更新

  • 説明 を更新 (diff)

#2 kaoru nishizoe11ヶ月前に更新

  • 関連している Bug(バグ) #2392: 管理画面:メール通知送信設定 で CSRFtoken の値が異常だった場合にエラーメッセージが表示されない を追加

#3 kaoru nishizoe11ヶ月前に更新

#4 kaoru nishizoe11ヶ月前に更新

  • 関連している Bug(バグ) #2909: 管理画面:メール通知テンプレート設定にて、タイトルが長過ぎる場合にエラーにならず途中で切れて保存されてしまう を追加

#5 kaoru nishizoe11ヶ月前に更新

  • 関連している Bug(バグ) #4105: 管理画面 コミュニティカテゴリ設定 カテゴリ名称変更時のエラーメッセージが翻訳されない を追加

#6 kaoru nishizoe11ヶ月前に更新

  • 関連している Bug(バグ) #4106: 管理画面 メール通知送信設定 にてエラーメッセージが翻訳されない を追加

#7 kaoru nishizoe11ヶ月前に更新

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

https://github.com/openpne/OpenPNE3/pull/413
にてプルリクエストを行いました。
レビューをお願いします。

#8 kaoru nishizoe8ヶ月前に更新

  • ステータスPending Review(レビュー待ち) から Rejected(差し戻し) に変更
  • 対象バージョンOpenPNE 3.9.0-old から OpenPNE 3.9.0 に変更

対象バージョン変更により修正内容の確認が必要であるため差し戻します。

#10 kaoru nishizoe5ヶ月前に更新

  • ステータスRejected(差し戻し) から Pending Review(レビュー待ち) に変更

https://github.com/openpne/OpenPNE3/pull/413
master向けに更新しました

#12 Rimpei Ogawa3ヶ月前に更新

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

レビューOKです。

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