/** * Return if any fields got changed. * * @since 1.20 * * @param IORMRow $object * @param boolean|array $excludeSummaryFields * When set to true, summary field changes are ignored. * Can also be an array of fields to ignore. * * @return boolean */ protected function fieldsChanged(IORMRow $object, $excludeSummaryFields = false) { $exclusionFields = array(); if ($excludeSummaryFields !== false) { $exclusionFields = is_array($excludeSummaryFields) ? $excludeSummaryFields : $this->table->getSummaryFields(); } foreach ($this->fields as $name => $value) { $excluded = $excludeSummaryFields && in_array($name, $exclusionFields); if (!$excluded && $object->getField($name) !== $value) { return true; } } return false; }