Backport(バックポート) #2364
ログインしてくださいというアラートが表示され続ける
開始日:
2011-08-16
期日:
2011-10-05
進捗率:
100%
説明
Overview (現象)¶
未ログイン状態で閲覧にログインが必要なページにアクセスすると「ログインしてください」というアラートが表示されるが、その後、閲覧にログインが不要なページ(例:Web全体に公開の日記)にアクセスするとアラートが表示されたままになってしまう。
閲覧にログインが不要なページなのにこのようなアラートが表示されるのは不適切であると考えられる。
再現バージョン¶
- OpenPNE3.7 masterブランチ
- OpenPNE3.6beta13-dev
- OpenPNE3.4.15-dev
再現手順¶
1.メンバーAで未ログインの状態でログイン必要なページにアクセスする
(例:未ログイン状態で diary/new にアクセスする)
2.ログインしてくださいというアラートが表示されることを確認する
3.手順3の状態でweb全体に公開されている日記にアクセスする
4.「ログインしてください」の表示がされたままになる
Causes (原因)¶
ログインアクション(member/login)において、「ログインしてください」メッセージを
$this->getUser()->setFlash()を利用してセットしているが
上記メソッドは次のアクションまでセットされたメッセージを保持するため
ログイン画面から別のページ(ログイン画面に再度アクセスした場合も含む)に行った場合でも
メッセージが表示され続けてしまっている
Way to fix (修正内容)¶
$this->getUser()->setFlash()の第3引数($persist)をfalseにする
関連するチケット
関係しているリビジョン
履歴
#1 Maki Takahashi が12年以上前に更新
- 対象バージョン を OpenPNE 3.7.0 から OpenPNE 3.4.16 に変更
#2 Shinichi Urabe が12年以上前に更新
- 期日 を 2011-10-05 にセット
- 担当者 を Mutsumi Imamura にセット
#3 Mutsumi Imamura が12年以上前に更新
- ステータス を New(新規) から Pending Review(レビュー待ち) に変更
- 進捗率 を 0 から 50 に変更
更新履歴 c768285165f6265fcb1de49f97f8e855d56c8d1c で適用されました。
#4 Mutsumi Imamura が12年以上前に更新
更新履歴 6d0f6beaa5900c5459c0925858b32eb0b66e37f3 で適用されました。
#5 Shinichi Urabe が12年以上前に更新
- ステータス を Pending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
- 進捗率 を 50 から 70 に変更
修正内容確認しました
#6 Fumie Toyooka が12年以上前に更新
- ステータス を Pending Testing(テスト待ち) から Fixed(完了) に変更
- 進捗率 を 70 から 100 に変更
テストOKです。