function track_field_changes_form_alter in Track Field Changes 8
Same name and namespace in other branches
- 7 track_field_changes.module \track_field_changes_form_alter()
Implement hook_form_alter().
File
- ./
track_field_changes.module, line 396
Code
function track_field_changes_form_alter(&$form, \Drupal\Core\Form\FormStateInterface $form_state, $form_id) {
// If we're editing an entity...
if (!empty($form['#entity_type']) && ($entity_form = $form_state
->getFormObject()) && $entity_form instanceof \Drupal\Core\Entity\EntityForm) {
$entity = $entity_form
->getEntity();
$field_change_settings = \Drupal::config('track_field_changes.settings')
->get($entity
->getEntityTypeId() . '.' . $entity
->bundle());
if ($field_change_settings && $field_change_settings['enable_log']) {
$log = !$entity || $entity
->isNew() ? 'New ' . $form['type']['#value'] : '';
$form['track_field_changes'] = array(
'#type' => 'details',
'#title' => t('Track Field Information'),
'#collapsible' => TRUE,
'#collapsed' => TRUE,
'#group' => 'advanced',
'#weight' => 35,
);
$form['track_field_changes']['track_field_changes'] = array(
'#type' => 'textarea',
'#title' => t('Track field log message'),
'#rows' => 4,
'#default_value' => !empty($entity->track_field_changes) ? $entity->track_field_changes : $log,
'#description' => t('Provide an explanation of the changes you are making.'),
'#maxlength' => 256,
);
}
}
}