Projekt

Allgemein

Profil

Aktionen

GX-Bug #51090

geschlossen

Nach dem Login zurück auf die vorher aufgerufene Seite

Von Torben Wark vor fast 7 Jahren hinzugefügt. Vor mehr als 2 Jahren aktualisiert.

Status:
Erledigt
Priorität:
Normal
Zugewiesen an:
Torben Wark
Kategorie:
Frontend
Zielversion:
% erledigt:

100%

Geschätzter Aufwand:
Steps to reproduce:
Betroffene Versionen:
3.10.0.0, 3.10.0.0 beta1, 3.10.0.1, 3.4.1.0, 3.4.1.1, 3.4.2.0, 3.4.2.0 beta1, 3.4.2.0 beta2, 3.4.3.0, 3.4.3.0 beta1, 3.5.1.0, 3.5.1.0 beta1, 3.5.1.0 beta2, 3.5.1.0 beta3, 3.5.1.0 beta4, 3.5.1.0 rc1, 3.5.1.1, 3.5.1.2, 3.5.2.0, 3.5.2.0 beta1, 3.5.2.0 beta2, 3.5.3.0, 3.5.3.0 beta1, 3.5.3.1, 3.6.0.0, 3.6.0.0 beta1, 3.6.0.1, 3.6.0.2, 3.6.1.0, 3.6.1.0 beta1, 3.6.1.0 beta2, 3.6.2.0, 3.6.2.0 beta1, 3.6.3.0, 3.6.3.0 beta1, 3.7.1.0, 3.7.1.0 RC1, 3.7.1.0 beta1, 3.7.1.0 beta2, 3.7.1.1, 3.7.1.2, 3.7.2.0, 3.7.2.0 beta1, 3.7.3.0, 3.7.3.0 beta1, 3.8.0.0, 3.8.0.0 beta1, 3.8.0.0 beta2, 3.8.0.0 beta3, 3.8.0.1, 3.8.0.2, 3.8.0.3, 3.8.0.4, 3.8.1.0, 3.8.1.0 beta1, 3.8.1.0 beta2, 3.8.1.0 beta3, 3.8.1.1, 3.8.1.2, 3.8.2.0, 3.8.2.1, 3.8.2.2, 3.8.3.0, 3.8.3.0 beta1, 3.8.3.1, 3.9.1.0, 3.9.1.0 beta1, 3.9.1.0 beta2, 3.9.1.0 beta3, 3.9.1.0 rc1, 3.9.1.0 rc2, 3.9.1.1, 3.9.1.2, 3.9.2.0, 3.9.2.0 beta1, 3.9.2.1, 3.9.2.2, 3.9.3.0, 3.9.3.0 beta1, 3.9.3.1
Release Notes Langtext:

Nach dem Login wird zurück auf die vorher aufgerufene Seite geleitet


Beschreibung

Wenn sich ein Kunde im Shop einloggt, landet er auf seiner Accountseite. Um hier dasShopping-Erlebnis zu beschleunigen, könnte es sinnvoll sein, den Kunden nach dem Login direkt auf die Seite zurückzuleiten, von der er den Login veranlasst hat. Dafür muss die LoginContentControl::proceed() angepasst werden. Hier finden sich folgende Zeilen:

if($_SESSION['cart']->count_contents() > 0)
                    {
                        if(isset($this->v_data_array['GET']['checkout_started'])
                           && $this->v_data_array['GET']['checkout_started'] == 1
                        )
                        {
                            $this->set_redirect_url(xtc_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));
                        }
                        else
                        {
                            $this->set_redirect_url(xtc_href_link(FILENAME_ACCOUNT, '', 'SSL'));
                        }
                    }
                    else
                    {
                        $this->set_redirect_url(xtc_href_link(FILENAME_DEFAULT));
                    }

Wenn man dies nun zu folgendem ändert, hat man das gewünschte Verhalten:

if($_SESSION['cart']->count_contents() > 0)
                    {
                        if(isset($this->v_data_array['GET']['checkout_started'])
                           && $this->v_data_array['GET']['checkout_started'] == 1
                        )
                        {
                            $this->set_redirect_url(xtc_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));
                        }
                        else
                        {
                            $this->set_redirect_url(xtc_href_link($_SERVER['HTTP_REFERER'], '', 'SSL', true, true, true));
                        }
                    }
                    else
                    {
                        $this->set_redirect_url(xtc_href_link($_SERVER['HTTP_REFERER'], '', 'NONSSL', true, true, true));
                    }

Aktionen #1

Von Torben Wark vor fast 7 Jahren aktualisiert

Aktionen #2

Von Marco Bruchmann vor mehr als 6 Jahren aktualisiert

$_SERVER['HTTP_REFERER'] ist als Datenquelle möglicherweise keine gute Idee. Es gibt etliche Privacy-Tools (Browsererweiterungen, AV-Software, …), die das Senden des Referrer entweder ganz unterbinden oder den Referrer-URL irgendwie verstümmeln.

Aktionen #3

Von Marco Bruchmann vor mehr als 5 Jahren aktualisiert

  • Tags wurde auf MR gesetzt
  • Tracker wurde von GX-Feature zu GX-Bug geändert
  • Zielversion wurde von 58 zu 133 geändert
  • Betroffene Versionen 3.10.0.0, 3.10.0.0 beta1, 3.10.0.1, 3.4.1.1, 3.4.2.0, 3.4.2.0 beta1, 3.4.2.0 beta2, 3.4.3.0, 3.4.3.0 beta1, 3.5.1.0, 3.5.1.0 beta1, 3.5.1.0 beta2, 3.5.1.0 beta3, 3.5.1.0 beta4, 3.5.1.0 rc1, 3.5.1.1, 3.5.1.2, 3.5.2.0, 3.5.2.0 beta1, 3.5.2.0 beta2, 3.5.3.0, 3.5.3.0 beta1, 3.5.3.1, 3.6.0.0, 3.6.0.0 beta1, 3.6.0.1, 3.6.0.2, 3.6.1.0, 3.6.1.0 beta1, 3.6.1.0 beta2, 3.6.2.0, 3.6.2.0 beta1, 3.6.3.0, 3.6.3.0 beta1, 3.7.1.0, 3.7.1.0 RC1, 3.7.1.0 beta1, 3.7.1.0 beta2, 3.7.1.1, 3.7.1.2, 3.7.2.0, 3.7.2.0 beta1, 3.7.3.0, 3.7.3.0 beta1, 3.8.0.0, 3.8.0.0 beta1, 3.8.0.0 beta2, 3.8.0.0 beta3, 3.8.0.1, 3.8.0.2, 3.8.0.3, 3.8.0.4, 3.8.1.0, 3.8.1.0 beta1, 3.8.1.0 beta2, 3.8.1.0 beta3, 3.8.1.1, 3.8.1.2, 3.8.2.0, 3.8.2.1, 3.8.2.2, 3.8.3.0, 3.8.3.0 beta1, 3.8.3.1, 3.9.1.0, 3.9.1.0 beta1, 3.9.1.0 beta2, 3.9.1.0 beta3, 3.9.1.0 rc1, 3.9.1.0 rc2, 3.9.1.1, 3.9.1.2, 3.9.2.0, 3.9.2.0 beta1, 3.9.2.1, 3.9.2.2, 3.9.3.0, 3.9.3.0 beta1, 3.9.3.1 wurde hinzugefügt
Aktionen #4

Von Torben Wark vor mehr als 5 Jahren aktualisiert

  • Status wurde von Gemeldet zu Testing geändert
  • Zugewiesen an wurde auf Torben Wark gesetzt
  • Zielversion wurde von 133 zu 3.11.1.0 beta1 geändert
  • Release Notes Langtext aktualisiert (Vergleich)
Aktionen #5

Von Torben Wark vor mehr als 5 Jahren aktualisiert

  • Status wurde von Testing zu Erledigt geändert
  • % erledigt wurde von 0 zu 100 geändert
Aktionen #6

Von Moritz Bunjes vor mehr als 2 Jahren aktualisiert

  • Tags MR wurde gelöscht
Aktionen

Auch abrufbar als: Atom PDF