public function dataFieldToArray(DataField $dataField) { $out = []; $dataFieldType = new CollectionItemFieldType(); /** @var DataFieldType $dataFieldType */ if (null != $dataField->getFieldType()) { $dataFieldType = $this->fieldTypePickerType->getDataFieldType($dataField->getFieldType()->getType()); } $dataFieldType->buildObjectArray($dataField, $out); /** @var DataField $child */ foreach ($dataField->getChildren() as $child) { //its a Collection Item if ($child->getFieldType() == null) { $subOut = []; foreach ($child->getChildren() as $grandchild) { $subOut = array_merge($subOut, $this->dataFieldToArray($grandchild)); } $out[$dataFieldType->getJsonName($dataField->getFieldType())][] = $subOut; } else { if (!$child->getFieldType()->getDeleted()) { if ($dataFieldType->isNested()) { $out[$dataFieldType->getJsonName($dataField->getFieldType())] = array_merge($out[$dataFieldType->getJsonName($dataField->getFieldType())], $this->dataFieldToArray($child)); } else { $out = array_merge($out, $this->dataFieldToArray($child)); } } } } return $out; }
/** * * {@inheritdoc} * */ public static function buildObjectArray(DataField $data, array &$out) { if (!$data->getFieldType()->getDeleted()) { if ($data->getFieldType()->getDisplayOptions()['multiple']) { $out[$data->getFieldType()->getName()] = $data->getArrayTextValue(); } else { parent::buildObjectArray($data, $out); } } }
/** * * {@inheritdoc} * */ public static function buildObjectArray(DataField $data, array &$out) { if (!$data->getFieldType()->getDeleted()) { /** * by default it serialize the text value. * It must be overrided. */ $out[$data->getFieldType()->getName()] = $data->getFloatValue(); } }
/** * * {@inheritdoc} * */ public static function buildObjectArray(DataField $data, array &$out) { if (!$data->getFieldType()->getDeleted()) { switch ($data->getFieldType()->getDisplayOptions()['encryption']) { case 'md5': $out[$data->getFieldType()->getName()] = md5($data->getTextValue()); break; default: $out[$data->getFieldType()->getName()] = sha1($data->getTextValue()); break; } } }
/** * Test if the requirment of the field is reached. * * @return boolean */ public function isMandatory(DataField &$dataField) { $isValidMadatory = TRUE; //Get FieldType mandatory option $restrictionOptions = $dataField->getFieldType()->getRestrictionOptions(); if (isset($restrictionOptions["mandatory"]) && true == $restrictionOptions["mandatory"]) { //Get rawData $rawData = $dataField->getRawData(); if (!isset($rawData) || empty($rawData) || $rawData === null) { $isValidMadatory = FALSE; $dataField->addMessage("Empty field"); } } return $isValidMadatory; }
/** * * {@inheritdoc} * */ public static function buildObjectArray(DataField $data, array &$out) { if (!$data->getFieldType()->getDeleted()) { $out[$data->getFieldType()->getName()] = []; } }
/** * {@inheritdoc} */ public static function buildObjectArray(DataField $data, array &$out) { if (!$data->getFieldType()->getDeleted()) { $format = $data->getFieldType()->getMappingOptions()['format']; $format = DateFieldType::convertJavaDateFormat($format); if (null !== $data->getRawData() && (!is_array($data->getRawData()) || count($data->getRawData()) !== 0)) { /**@var \DateTime $converted*/ $dateTime = \DateTime::createFromFormat(\DateTime::ISO8601, $data->getRawData()); $out[$data->getFieldType()->getName()] = $dateTime->format($format); } } }
/** * * {@inheritdoc} * */ public static function buildObjectArray(DataField $data, array &$out) { if ($data->getFieldType() == null) { $tmp = []; /** @var DataField $child */ foreach ($data->getChildren() as $child) { $className = $child->getFieldType()->getType(); $class = new $className(); $class->buildObjectArray($child, $tmp); } $out[] = $tmp; } else { if (!$data->getFieldType()->getDeleted()) { $out[$data->getFieldType()->getName()] = []; } } }
/** * {@inheritdoc} */ public static function buildObjectArray(DataField $data, array &$out) { if (!$data->getFieldType()->getDeleted()) { if ($data->getFieldType()->getMappingOptions()['nested']) { $out[$data->getFieldType()->getName()] = $data->getRawData(); } else { $rawData = $data->getRawData(); if (empty($rawData)) { $rawData = []; } $out = array_merge($out, $rawData); } } }
public function generateInputValues(DataField $dataField) { foreach ($dataField->getChildren() as $child) { $this->generateInputValues($child); } if (!empty($dataField->getFieldType()) && !empty($dataField->getFieldType()->getType())) { /**@var DataFieldType $dataFieldType*/ $dataFieldType = $this->formRegistry->getType($dataField->getFieldType()->getType())->getInnerType(); $dataFieldType->generateInput($dataField); } }
/** * {@inheritdoc} */ public static function buildObjectArray(DataField $data, array &$out) { if (!$data->getFieldType()->getDeleted()) { $format = $data->getFieldType()->getMappingOptions()['format']; $multidate = $data->getFieldType()->getDisplayOptions()['multidate']; $format = DateFieldType::convertJavaDateFormat($format); if ($multidate) { $dates = []; if (null !== $data->getRawData()) { foreach ($data->getRawData() as $dataValue) { /**@var \DateTime $converted*/ $dateTime = \DateTime::createFromFormat(\DateTime::ISO8601, $dataValue); $dates[] = $dateTime->format($format); } } } else { $dates = null; if (null !== $data->getRawData() && count($data->getRawData()) >= 1) { /**@var \DateTime $converted*/ $dateTime = \DateTime::createFromFormat(\DateTime::ISO8601, $data->getRawData()[0]); if ($dateTime) { $dates = $dateTime->format($format); } else { //TODO: at least a warning $dates = null; } } } $out[$data->getFieldType()->getName()] = $dates; } }