Bug(バグ) #3736
完了PC版のPCメールアドレス設定エラーが翻訳されていない
0%
説明
Overview (現象)¶
PC版のPCメールアドレス設定にて、既に別のメンバーにて登録されているメールアドレスを入力し送信した際のエラーメッセージが「invaild pc_address.」と表示される。
Causes (原因)¶
翻訳の設定がされていない
Way to fix (修正内容)¶
/path/to/OpenPNE3/i18n/messages.ja.xml
85行目辺りのmobileの場合の設定と同様に下記を追加する。
<trans-unit id=""> <source>Invalid pc_address.</source> <target>メールアドレスが無効です。</target> </trans-unit>
kaoru n さんが約10年前に更新
- ステータス を New(新規) から Pending Review(レビュー待ち) に変更
- 進捗率 を 0 から 50 に変更
https://github.com/openpne/OpenPNE3/pull/236
にてプルリクエストを行いました。
Shinichi Urabe さんがほぼ9年前に更新
- ステータス を Pending Review(レビュー待ち) から Rejected(差し戻し) に変更
携帯にもPCアドレス設定が有り、同様のエラーメッセージが表示されます
携帯の場合は半角カタカナでエラーを出す必要があります
kaoru n さんがほぼ9年前に更新
- ステータス を Accepted(着手) から Pending Review(レビュー待ち) に変更
- 進捗率 を 0 から 50 に変更
https://redmine.openpne.jp/issues/3736#note-4
のご指摘については、ご指摘内容も含めて下記の2パターンの翻訳に問題があるため、携帯版向けのチケットをそれぞれ作成しそちらで対応します。
(1) 携帯版の携帯メールアドレス設定にて、既に別のメンバーにて登録されているメールアドレスを入力し送信した際のエラーメッセージが全角カタカナで表示される。
(2) 携帯版のPCメールアドレス設定にて、既に別のメンバーにて登録されているメールアドレスを入力し送信した際のエラーメッセージが「invaild pc_address.」と表示される。
Youichi Kimura さんが8年以上前に更新
この不具合について英日の翻訳の問題として修正されていますが、そもそも「Invalid pc_address.」のように OpenPNE 内部で使用する設定名がエラーメッセージにそのまま使われていることが問題ではないかと思います。
このエラーメッセージは下記のコードによって出力されています。
source:lib/form/doctrine/MemberConfigForm.class.php@43190aa1#L232:
throw new sfValidatorError($validator, 'Invalid %name%.', array('name' => $name));
つまり本来は「Invalid pc_address.」や「Invalid mobile_address.」に対してではなく「Invalid %name%.
」に対して翻訳を行わなければなりませんが、例えばこれを「不正な %name% です
」と翻訳すると「不正な pc_address です」「不正な mobile_address です」と表示することになり、ユーザーに対して表示するエラーメッセージとしてはやはり適切ではないと思います。
一方で、類似の機能を持つ MemberProfileForm では下記のように「The inputted value is already exist.」(ja_JP では「すでに登録されています。」と表示される)が使用されており、識別名がそのままエラーメッセージとして使われることはありません。
source:lib/validator/opValidatorProfile.class.php@43190aa1#L55:
$isDuplicate = Doctrine::getTable('MemberProfile')->isDuplicatedProfileValue($profileId, $value['value'], $memberId);
if ($isDuplicate)
{
throw new sfValidatorError($this, 'The inputted value is already exist.');
}
よって、当チケットの修正としては Invalid pc_address.
や Invalid mobile_address.
に対する翻訳を追加するのではなく、MemberConfigForm が出力するエラーメッセージを MemberProfileForm と同一のものに合わせるのが適切ではないかと考えます。
Shinichi Urabe さんが7年以上前に更新
- 関連している Bug(バグ) #4000: MemberConfigFormのIsUnique制約に対するエラーメッセージが適切に出力されていない を追加