/** * Virtual entity additional field analyzer. * * @param \samsoncms\api\generator\metadata\VirtualMetadata $metadata Metadata instance for filling * @param int $fieldID Additional field identifier * @param array $fieldRow Additional field database row */ public function analyzeFieldRecord(&$metadata, $fieldID, array $fieldRow) { // Get camelCase and transliterated field name $fieldName = $this->fieldName($fieldRow['Name']); // TODO: Set default for additional field storing type accordingly. // Store field metadata $metadata->realNames[$fieldRow['Name']] = $fieldName; $metadata->fields[$fieldID] = $fieldName; $metadata->fieldNames[$fieldName] = $fieldID; $metadata->allFieldValueColumns[$fieldID] = Field::valueColumn($fieldRow[Field::F_TYPE]); $metadata->types[$fieldID] = Field::phpType($fieldRow['Type']); $metadata->allFieldCmsTypes[$fieldID] = (int) $fieldRow['Type']; $metadata->fieldDescriptions[$fieldID] = $fieldRow['Description'] . ', ' . $fieldRow['Name'] . '#' . $fieldID; $metadata->fieldRawDescriptions[$fieldID] = $fieldRow['Description']; }