プロジェクト

全般

プロフィール

Backport(バックポート) #4111

Bug(バグ) #4104: 管理画面 メール通知テンプレート設定 にてエラーメッセージが翻訳されない

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

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

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

100%


説明

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') ?>

履歴

#1 kaoru nishizoe11ヶ月前に更新

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

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

#2 Shinichi Urabe8ヶ月前に更新

Bug チケットレビュー後、バックポートのレビューを行います

#3 Rimpei Ogawa3ヶ月前に更新

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

レビューOKです。

#4 kaoru nishizoe3ヶ月前に更新

  • 対象バージョンOpenPNE 3.8.x から OpenPNE 3.8.25 に変更

#5 kaoru nishizoe2ヶ月前に更新

  • ステータスPending Testing(テスト待ち) から Pending Merge(マージ待ち) に変更
  • 進捗率70 から 80 に変更

#6 kaoru nishizoe2ヶ月前に更新

  • ステータスPending Merge(マージ待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率80 から 70 に変更

#7 kaoru nishizoe2ヶ月前に更新

  • ステータスPending Testing(テスト待ち) から Pending Merge(マージ待ち) に変更
  • 進捗率70 から 80 に変更

試験行いました。
問題ありません。

#8 kaoru nishizoe2ヶ月前に更新

  • ステータスPending Merge(マージ待ち) から Fixed(完了) に変更
  • 進捗率80 から 100 に変更

マージしました

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