public function __isset($name)
{
$value = null;
$isState = false;
if (substr($name, 0, 3) == 'flt') {
$isState = true;
$name = strtolower(substr($name, 3, 1)) . substr($name, 4);
}
// If $name is a field name, get its value
if (!$isState && array_key_exists($name, $this->recordData)) {
$value = $this->getFieldValue($name);
} elseif (!$isState && array_key_exists($name, $this->aliasFields) && array_key_exists($this->aliasFields[$name], $this->recordData)) {
$name = $this->aliasFields[$name];
$value = $this->getFieldValue($name);
} elseif ($this->relationManager->isMagicProperty($name)) {
$value = $this->relationManager->{$name};
}
// As the core function isset, the property must exists AND must be NOT null
return $value !== null;
}