Projekt

Allgemein

Profil

Aktionen

GX-Bug #61948

geschlossen

Beim Ändern einer Adresse kann es zu einer Fehlermeldung kommen, wenn das JavaScript für die Bundeslandauswahl noch nicht geladen ist.

Von Till Tepelmann vor etwa 5 Jahren hinzugefügt. Vor fast 3 Jahren aktualisiert.

Status:
Erledigt
Priorität:
Hoch
Zugewiesen an:
Ronald Loyko
Kategorie:
Checkout
Zielversion:
% erledigt:

100%

Geschätzter Aufwand:
Steps to reproduce:
Betroffene Versionen:
3.12.0.3
Release Notes Langtext:

Performance des JavaScripts im Adressbuch verbessert


Beschreibung

Beim Ändern einer Adresse kann es zu einer Fehlermeldung kommen, wenn das JavaScript für die Bundeslandauswahl noch nicht geladen ist.

System:

  • xampp Testsystem unter Windows 7
  • PHP 7.0

Reproduzierbar: bei schnellen Klicken ja

Aktionen:

  • Aufruf zum Ändern einer bestehenden Adresse aus dem Adressbuch oder innerhalb eines Auftrages, URL z.B.: address_book_process.php?edit=1

  • Wechsel des Landes von einem Land ohne Bundesstaat (z.B. Portugal) auf ein Land mit Bundesstaat (z.B. Vereinigte Staaten von Amerika)

  • Noch bevor die JavaScript-Aktion das Feld "Bundesland" mit einen Defaultwert füllen kann, wird der "Speichern"-Button ausgelöst.

  • Browser-Meldung: "Diese Seite funktioniert nicht vinobucks.de kann diese Anfrage momentan nicht verarbeiten.
    HTTP ERROR 500"

  • PHP Log:

    PHP Fatal error: Uncaught InvalidArgumentException: IntType: Invalid argument value given (expected numeric int got NULL): in \GXEngine\Shared\Types\IntType.inc.php:45
    Stack trace:
    #0 \GXEngine\Shared\Types\IdType.inc.php(47): IntType->__construct(NULL)
    #1 \system\classes\accounts\AddressBookProcessContentControl.inc.php(321): IdType->__construct(NULL)
    #2 \system\classes\accounts\AddressBookProcessContentControl.inc.php(212): AddressBookProcessContentControl->get_address_data_from_user_input()
    #3 \system\overloads\AddressBookProcessContentControl\DSGVOAddressBookProcessContentControl.inc.php(23): AddressBookProcessContentControl->process_update()
    #4 \system\classes\accounts\AddressBookProcessContentControl.inc.php(204): DSGVOAddressBookProcessContentControl->process_update()
    #5 \GXEngine\Shared\Types\IntType.inc.php on line 45
    

EDIT 24.04.2019

  1. Aktiviere unter Kunden > Kunden-Details "Bundesland"
  2. Lege einen Kunden im Shop an, Land egal, Bundesland egal
  3. Navigiere als Kunde zum Adressbuch
  4. Klicke bei Standardadresse auf "Bearbeiten"
  5. Beobachte: der Default-Eintag im Formularfeld Bundesland erscheint erst nach einem kurzen Moment (<0,5s)
  6. Merke Dir, wo auf dem Bildschirm der Speichern-Button ist, klicke auf Zurück
  7. Klicke wieder auf Bearbeiten und sofort auf Speichern, bevor das Bundesland-Feld ausgefüllt wird, viel Spaß!
  8. erwartetes Ergebnis: Adresse wird gespeichert
  9. tatsächliches Ergebnis: FATAL ERROR, siehe Screenshot

Dateien


Aktionen #1

Von Till Tepelmann vor etwa 5 Jahren aktualisiert

Aktionen #2

Von Ulrich Wenk vor etwa 5 Jahren aktualisiert

Aktionen #3

Von Jonatas Fischer vor fast 5 Jahren aktualisiert

  • Tags wurde auf Ready gesetzt

Suggested solution

The save button should be disabled when the request is triggered and enabled when request is finalized (with sucess or error)

Aktionen #4

Von Marvin Muxfeld vor fast 5 Jahren aktualisiert

  • Status wurde von Anerkannt zu In Bearbeitung geändert
  • Zugewiesen an wurde auf Marvin Muxfeld gesetzt
Aktionen #5

Von Marvin Muxfeld vor fast 5 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Testing geändert
  • Zugewiesen an wurde von Marvin Muxfeld zu Core-Entwickler geändert
Aktionen #6

Von Ronald Loyko vor fast 5 Jahren aktualisiert

  • Zugewiesen an wurde von Core-Entwickler zu Ronald Loyko geändert
Aktionen #7

Von Ronald Loyko vor fast 5 Jahren aktualisiert

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

Von Daniel Wu vor fast 5 Jahren aktualisiert

  • Zielversion wurde von 133 zu 3.13.1.0 beta2 geändert
Aktionen #9

Von Ulrich Wenk vor fast 5 Jahren aktualisiert

  • Release Notes Langtext aktualisiert (Vergleich)
Aktionen #10

Von Moritz Bunjes vor fast 3 Jahren aktualisiert

  • Tags Ready wurde gelöscht
Aktionen

Auch abrufbar als: Atom PDF