DataField::getDataFields filtert bei Veranstaltungen falsch nach der Kategorie
Beschreibung
Wenn man über die Funktion DataField::getDataFields
alle Datenfelder einer Veranstaltung nach Veranstaltungskategorie gefiltert haben möchte, bekommt man unter umständen mehr Datenfelder, als korrekt wären. In dem aktuellen Beispiel habe ich Kategorie 101 und bekomme auch alle Datenfelder, die der Kategorie 1 zugewiesen wurden. Das liegt an dem Bitwise & Operator in der entsprechenden Abfrage. Dieser Operator ist nur korrekt für Nutzerdatenfelder, bei Veranstaltungen ergibt das keinen Sinn, weil die Veranstaltungskategorie numerisch hochgezählt werden. Alle ungeraden Kategorien werden dabei dann zum Beispiel in einen Topf geworfen.
Reproduzierbarkeit
Ja, wenn man nach einer Kategorie mit ungerader ID filtert, bekommt man alle anderen mit ungeraden IDs. (Natürlich geht das auch bei anderen gemeinsamen Teilern.)