コード例 #1
0
 /**
  * {@inheritdoc}
  */
 public function defaultValuesFormSubmit(array $element, array &$form, array &$form_state)
 {
     $default_value = parent::defaultValuesFormSubmit($element, $form, $form_state);
     // Convert numeric IDs to UUIDs to ensure config deployability.
     $ids = array();
     foreach ($default_value as $delta => $properties) {
         $ids[] = $properties['target_id'];
     }
     $entities = \Drupal::entityManager()->getStorage('taxonomy_term')->loadMultiple($ids);
     foreach ($default_value as $delta => $properties) {
         unset($default_value[$delta]['target_id']);
         $default_value[$delta]['target_uuid'] = $entities[$properties['target_id']]->uuid();
     }
     return $default_value;
 }
コード例 #2
0
 /**
  * {@inheritdoc}
  */
 public function defaultValuesFormSubmit(array $element, array &$form, array &$form_state)
 {
     $default_value = parent::defaultValuesFormSubmit($element, $form, $form_state);
     // Convert numeric IDs to UUIDs to ensure config deployability.
     $ids = array();
     foreach ($default_value as $delta => $properties) {
         $ids[] = $properties['target_id'];
     }
     $entities = \Drupal::entityManager()->getStorage($this->getSetting('target_type'))->loadMultiple($ids);
     foreach ($default_value as $delta => $properties) {
         $uuid = $entities[$properties['target_id']]->uuid();
         // @todo Some entities do not have uuid. IE: Anonymous and admin user.
         //   Remove this special case once http://drupal.org/node/2050843
         //   has been fixed.
         if (!$uuid) {
             $uuid = $properties['target_id'] == '0' ? 'anonymous' : 'administrator';
         }
         unset($default_value[$delta]['target_id']);
         $default_value[$delta]['target_uuid'] = $uuid;
     }
     return $default_value;
 }
コード例 #3
0
 /**
  * {@inheritdoc}
  */
 public function defaultValuesFormSubmit(array $element, array &$form, FormStateInterface $form_state)
 {
     $default_value = parent::defaultValuesFormSubmit($element, $form, $form_state);
     // Convert numeric IDs to UUIDs to ensure config deployability.
     $ids = array();
     foreach ($default_value as $delta => $properties) {
         $ids[] = $properties['target_revision_id'];
     }
     $entities = array();
     foreach ($ids as $id) {
         $entities[$id] = \Drupal::entityManager()->getStorage($this->getSetting('target_type'))->loadRevision($id);
     }
     foreach ($default_value as $delta => $properties) {
         $default_value[$delta] = array('target_uuid' => $entities[$properties['target_revision_id']]->uuid(), 'target_revision_id' => $properties['target_revision_id']);
     }
     return $default_value;
 }