MetaModels/attribute_checkbox

Toggle Icon in Backend Listview funktioniert nicht bei Icon Namen mit Leerzeichen

Closed this issue · 2 comments

Checklist before I submit this issue report

I confirm that:

My environment is:

Classic LAMP-System under CentOS 7.7

Key Value Comments
PHP version: 7.3.16
Contao version: 4.4.8
MetaModels version: 2.1.x
Installation via composer yes
Installed MetaModels packages bundle_all

Issue description

Wenn man für eigene Toggle-Icons einer Checkbox in der Backend-Listview von MetaModels Icons auswählt, die z.B. Leerzeichen im Namen haben, so funktioniert das Umschalten nicht mehr. Weder ändert sich das Icon, noch wird in der Datenbank der Wert geändert.

Steps to reproduce

  1. Neues Checkbox Feld erstellen und eigene Toggle-Icons definieren
  2. Als Toggle-Icons Dateien mit Leerzeichen im Dateinamen wählen
  3. Vollständigen Prozess durchführen, um die Checkbox in das Metamodel zu integrieren, so dass das Icon im Backend Listview angezeigt wird
  4. Auf das Icon klicken

Describe the behaviour of the application

Das Icon wechselt nicht und die Datenbank wird nicht aktualisiert. Es kommt KEIN JS-Fehler im Browser.

Describe the expected behaviour of the application

Icons sollte zwischen beiden Zuständen wechseln und die DB entsprechend aktualisiert werden.

Der Fehler ist mir zufällig aufgefallen. Normalerweise achte ich strikt darauf, dass Dateinamen KEINE Leerzeichen, Umlaute, Sonderzeichen etc. enthalten. Diesmal habe ich aus einer externen Quelle zwei PNG-Dateien für die Icons genommen und nicht auf die Dateinamen geachtet. Als dann das Togglen nicht klappte habe ich verzweifelt nach der Ursache gesucht, zumal ein anderes Toggle-Icon problemlos funktionierte. Bis mir das mit dem Dateinamen aufgefallen ist. Einfügen eines simplen Unterstrichs im Dateinamen löste das Problem.

Sorry, bin nicht sicher, ob das hier beim richtigen Modul steht (attribute_checkbox) oder ob es woanders hingehört (core, dc_general etc.). Bitte im Fall der Fälle verschieben, falls möglich.

Should solve itself when #23 is implemented.