Changeset View
Changeset View
Standalone View
Standalone View
src/applications/almanac/query/AlmanacQuery.php
| Show All 28 Lines | if ($has_properties && $this->needProperties) { | ||||
| foreach ($objects as $object) { | foreach ($objects as $object) { | ||||
| $object_properties = idx($properties, $object->getPHID(), array()); | $object_properties = idx($properties, $object->getPHID(), array()); | ||||
| $object_properties = mpull($object_properties, null, 'getFieldName'); | $object_properties = mpull($object_properties, null, 'getFieldName'); | ||||
| // Create synthetic properties for defaults on the object itself. | // Create synthetic properties for defaults on the object itself. | ||||
| $specs = $object->getAlmanacPropertyFieldSpecifications(); | $specs = $object->getAlmanacPropertyFieldSpecifications(); | ||||
| foreach ($specs as $key => $spec) { | foreach ($specs as $key => $spec) { | ||||
| if (empty($object_properties[$key])) { | if (empty($object_properties[$key])) { | ||||
| $default_value = $spec->getValueForTransaction(); | |||||
| $object_properties[$key] = id(new AlmanacProperty()) | $object_properties[$key] = id(new AlmanacProperty()) | ||||
| ->setObjectPHID($object->getPHID()) | ->setObjectPHID($object->getPHID()) | ||||
| ->setFieldName($key) | ->setFieldName($key) | ||||
| ->setFieldValue($spec->getValueForTransaction()); | ->setFieldValue($default_value); | ||||
| } | } | ||||
| } | } | ||||
| foreach ($object_properties as $property) { | foreach ($object_properties as $property) { | ||||
| $property->attachObject($object); | $property->attachObject($object); | ||||
| } | } | ||||
| $object->attachAlmanacProperties($object_properties); | $object->attachAlmanacProperties($object_properties); | ||||
| Show All 11 Lines | |||||