columnToFilter = $columnToFilter; if ((float) $minimumValue < (float) $maximumValue) { self::$minimumValue = $minimumValue; self::$maximumValue = $maximumValue; } } /** * Executes the filter an adjusts all columns to fit the defined range * * @param DataTable $table */ public function filter($table) { foreach ($table->getRows() as $row) { $value = $row->getColumn($this->columnToFilter); if ($value === false) { $value = $row->getMetadata($this->columnToFilter); if ($value !== false) { if ($value < (float) self::$minimumValue) { $row->setMetadata($this->columnToFilter, self::$minimumValue); } elseif ($value > (float) self::$maximumValue) { $row->setMetadata($this->columnToFilter, self::$maximumValue); } } continue; } if ($value !== false) { if ($value < (float) self::$minimumValue) { $row->setColumn($this->columnToFilter, self::$minimumValue); } elseif ($value > (float) self::$maximumValue) { $row->setColumn($this->columnToFilter, self::$maximumValue); } } } } }