Project

General

Profile

Bug(バグ) #1453

文言設定で指定の言語がない場合Fatalエラーとなる

Added by Shogo Kawahara over 9 years ago. Updated about 4 years ago.

Status:
Fixed(完了)
Priority:
Normal(通常)
Assignee:
Target version:
Start date:
2010-07-29
Due date:
% Done:

100%

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

Description

Overview (概要)

文言設定で指定の言語がない場合Fatalエラーとなる


再現手順

  • OpenPNE.ymlのsupported_languagesに新たな言語を追加
  • ログイン画面で新たな言語に切り替え
  • ログイン
  • Fatal error

Causes

指定言語で文言設定を行っていないとFatalエラーとなります。

文言設定がない場合は、Englishの文言設定を行うなどの対処は必要かと思います。


Related issues

Related to OpenPNE 3 - Bug(バグ) #1787: [仕様バグ] サイドバナーで切り替える言語設定が保持されない Fixed(完了) 2010-11-16
Related to OpenPNE 3 - Backport(バックポート) #3449: 文言設定で指定の言語がない場合Fatalエラーとなる Fixed(完了) 2010-07-29
Related to OpenPNE 3 - Task(タスク) #3403: OpenPNE の既存のテストコードが正常に動作するように修正を行う Invalid(無効) 2012-02-02
Related to OpenPNE 3 - Backport(バックポート) #3469: 文言設定で指定の言語がない場合Fatalエラーとなる Invalid(無効) 2010-07-29

Associated revisions

Revision cae4f98c (diff)
Added by Itsuro Tajima about 9 years ago

(fixes #1453) fixed to treat as English User when the language is not supported

History

#1 Updated by Shogo Kawahara over 9 years ago

  • Priority changed from Normal(通常) to Low(低め)

#2 Updated by Shogo Kawahara about 9 years ago

  • Priority changed from Low(低め) to Normal(通常)

#3 Updated by Rimpei Ogawa about 9 years ago

  • 3.6 で発生するか set to Yes

#4 Updated by Itsuro Tajima about 9 years ago

  • Status changed from New(新規) to Accepted(着手)
  • Assignee set to Itsuro Tajima

i18nではなく、sns_termの問題のようです。

#5 Updated by Itsuro Tajima about 9 years ago

現状では、対応している言語はOpenPNEプロジェクトの実装によってあらかじめ決まっており、利用者がsuppoerted_languagesを編集する必要、利益がそもそもないと考えられます。このため、
■suppoerted_languagesを、OpenPNE.ymlから隔離する
■OpenPNE.ymlに「Do not change this line」などの注釈を加える
などの対策で、ユーザーに無用な混乱を起こすのを避ける方が望ましいのではないかと検討しています。

#6 Updated by Itsuro Tajima about 9 years ago

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

http://github.com/openpne/OpenPNE3/commit/cae4f98c95d3e7a817d831bd6231f3aceabe8ed4
でコミットしました。

方針としては
■文言設定があるかどうかを調べるため、SnsTermTableに'member'がないかどうか調べる
・SnsTermTableはcountで言語を指定しない結果を返す
・SnsTermTableは個別の文言単位でしかアクセスできない
ため、このような判定形式になりました。もしユーザーがbackendから文言を設定しようとした場合、memberだけでなく他の文言も設定しないとバリデーションで弾かれるため、memberが存在して、他の文言が存在しないということは、通常の場合ありえません。このため、memberだけを見ても大丈夫だと判断しました。

■文言設定がなかった場合、cultureを英語(en)に設定
これはチケットの通りの対処です。

■その他
opI18N.class.php
に1b01151702b51846de0a15b486d5ade3b9f24b6cで追加されていた不要な行を削除しました。

#7 Updated by Itsuro Tajima about 9 years ago

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

#8 Updated by Masato Nagasawa over 8 years ago

  • Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)

説明に修正内容の記述をお願いします。
また、3.4でこの問題が発生しないか確認をお願いします。

#9 Updated by Yuya Watanabe over 7 years ago

  • 3.6 で発生するか changed from Yes to No (いいえ)
  • 3.4 で発生するか set to Unknown (未調査)

このコミット以降の何らかの修正によって問題が発生しなくなっていています.
どのコミットの修正によって発生しなくなっている状態を調査し,本チケットの修正が妥当かを検討する必要があります.

#10 Updated by Shouta Kashiwagi over 7 years ago

このバグは、 856bb28d によって発生されなくなっています。
#1787 [仕様バグ] サイドバナーで切り替える言語設定が保持されない

#11 Updated by Yuma Sakata over 7 years ago

  • Status changed from Rejected(差し戻し) to Pending Testing(テスト待ち)
  • % Done changed from 50 to 70

#12 Updated by Yuma Sakata over 7 years ago

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

このバグは、 856bb28d によって発生されなくなっているため、テストOKとします。

#13 Updated by kaoru n about 4 years ago

  • 3.8 で発生するか set to Unknown (未調査)

Also available in: Atom PDF