diff --git a/lib/classes/admission/UserFilterField.class.php b/lib/classes/admission/UserFilterField.class.php index 72a091785379cdf09a9288c2f458c534889b738f..36ed57cea30e9664e864bb3d8927c42e9fa4161d 100644 --- a/lib/classes/admission/UserFilterField.class.php +++ b/lib/classes/admission/UserFilterField.class.php @@ -313,8 +313,13 @@ class UserFilterField $parameters = [$userId]; // Additional requirements given... if (is_array($additional)) { + + // Don't use the same database field twice as this can only get ugly. + $usedFields = [$this->userDataDbField]; + foreach ($additional as $a_condition) { - if ($a_condition->id != $this->id && $this->userDataDbTable == $a_condition->userDataDbTable) { + if ($a_condition->id != $this->id && $this->userDataDbTable == $a_condition->userDataDbTable && + !in_array($a_condition->userDataDbField, $usedFields)) { $query .= " AND `" . $a_condition->userDataDbField . "` " . $a_condition->compareOperator . "?"; $parameters[] = $a_condition->value; }