public function preGetData($object, $params = array())
{
$data = null;
if ($object instanceof Object\Concrete) {
$data = $object->{$this->getName()};
if ($this->getLazyLoading() and !in_array($this->getName(), $object->getO__loadedLazyFields())) {
//$data = $this->getDataFromResource($object->getRelationData($this->getName(),true,null));
$data = $this->load($object, array("force" => true));
$setter = "set" . ucfirst($this->getName());
if (method_exists($object, $setter)) {
$object->{$setter}($data);
}
}
} else {
if ($object instanceof Object\Localizedfield) {
$data = $params["data"];
} else {
if ($object instanceof Object\Fieldcollection\Data\AbstractData) {
$data = $object->{$this->getName()};
} else {
if ($object instanceof Object\Objectbrick\Data\AbstractData) {
$data = $object->{$this->getName()};
}
}
}
}
if (Object\AbstractObject::doHideUnpublished() and is_array($data)) {
$publishedList = array();
foreach ($data as $listElement) {
if (Element\Service::isPublished($listElement)) {
$publishedList[] = $listElement;
}
}
return $publishedList;
}
return is_array($data) ? $data : array();
}