Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

現在のカゴの中 [戻る]ボタン 購入手続きへ遷移することがある #803

Closed
seasoftjapan opened this issue Dec 20, 2023 · 1 comment · Fixed by #814
Closed
Assignees
Labels
Milestone

Comments

@seasoftjapan
Copy link
Contributor

seasoftjapan commented Dec 20, 2023

遷移先に、購入手続き画面を含めるべきではない。

  • 関与していそうな変更: ba4a323
    • コミットメッセージに #790 とあるが、正しくは #888 と思われる。
  • SC_CartSession::setPrevURL() SC_CartSession::getPrevURL() を使って解決する方向も良さそう。 断念した
    • 当該メソッドは購入手続きを除外する意図と思われるコードが実装されている。テストも実装されている様子。
    • ソースコメントに「TODO: SC_CartSession::setPrevURL()利用不可。」とある。→ 具体的な理由は分からない。
    • 現状、SC_CartSession::getPrevURL() は使われていない。
    • 現状、SC_CartSession::setPrevURL() は、各ブロックでも呼ばれている。これは抑えるべき。
    • エラー画面時は記録しない。コンストラクタで処理すると判定できないので、画面の書き込み処理と連動させる。

eccube2-weekly-20230822 ベースで運用するサイトから報告を受けた。
eccube2-weekly-20231219 で再現を確認した。

@seasoftjapan
Copy link
Contributor Author

REQUEST_URI を元ネタとしている、SC_CartSession::setPrevURL() SC_CartSession::getPrevURL() を使う方向を模索した。

$objCartSess->setPrevURL($_SERVER['REQUEST_URI']);

除外すべきものが多く、(それを含めて細かく制御可能だが) 込み入った実装となりそうで断念した。(関連: #805)

現状の「現在のカゴの中」画面でリファラーを元ネタとする処理をベースとする方向に転換した。

$this->lfGetCartPrevUrl($_SESSION, $_SERVER['HTTP_REFERER']);

リファラーを頼ることに些か疑問はあるが、極論このボタンは無くても主導線に支障ないので、割り切ろうと思う。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
1 participant