GX-Bug #61948
geschlossenBeim Ändern einer Adresse kann es zu einer Fehlermeldung kommen, wenn das JavaScript für die Bundeslandauswahl noch nicht geladen ist.
100%
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
- Aktiviere unter Kunden > Kunden-Details "Bundesland"
- Lege einen Kunden im Shop an, Land egal, Bundesland egal
- Navigiere als Kunde zum Adressbuch
- Klicke bei Standardadresse auf "Bearbeiten"
- Beobachte: der Default-Eintag im Formularfeld Bundesland erscheint erst nach einem kurzen Moment (<0,5s)
- Merke Dir, wo auf dem Bildschirm der Speichern-Button ist, klicke auf Zurück
- Klicke wieder auf Bearbeiten und sofort auf Speichern, bevor das Bundesland-Feld ausgefüllt wird, viel Spaß!
- erwartetes Ergebnis: Adresse wird gespeichert
- tatsächliches Ergebnis: FATAL ERROR, siehe Screenshot
Dateien
Von Till Tepelmann vor mehr als 5 Jahren aktualisiert
- Beschreibung aktualisiert (Vergleich)
Von Ulrich Wenk vor mehr als 5 Jahren aktualisiert
- Datei bundesland_schnell_speichern.JPG bundesland_schnell_speichern.JPG wurde hinzugefügt
- Beschreibung aktualisiert (Vergleich)
- Status wurde von Gemeldet zu Anerkannt geändert
Von Jonatas Fischer vor mehr als 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)
Von Marvin Muxfeld vor mehr als 5 Jahren aktualisiert
- Status wurde von Anerkannt zu In Bearbeitung geändert
- Zugewiesen an wurde auf Marvin Muxfeld gesetzt
Von Marvin Muxfeld vor mehr als 5 Jahren aktualisiert
- Status wurde von In Bearbeitung zu Testing geändert
- Zugewiesen an wurde von Marvin Muxfeld zu Core-Entwickler geändert
Von Ronald Loyko vor mehr als 5 Jahren aktualisiert
- Zugewiesen an wurde von Core-Entwickler zu Ronald Loyko geändert
Von Ronald Loyko vor mehr als 5 Jahren aktualisiert
- Status wurde von Testing zu Erledigt geändert
- % erledigt wurde von 0 zu 100 geändert
Von Daniel Wu vor mehr als 5 Jahren aktualisiert
- Zielversion wurde von 133 zu 3.13.1.0 beta2 geändert
Von Ulrich Wenk vor mehr als 5 Jahren aktualisiert
- Release Notes Langtext aktualisiert (Vergleich)