1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- <?php
- /**
- * @file
- * Field UI test module.
- */
- use Drupal\Core\Access\AccessResult;
- use Drupal\Core\Form\FormStateInterface;
- use Drupal\Core\Render\Element;
- use Drupal\Core\Field\FieldConfigInterface;
- /**
- * Implements hook_ENTITY_TYPE_access().
- */
- function field_ui_test_field_config_access(FieldConfigInterface $field) {
- return AccessResult::forbiddenIf($field->getName() == 'highlander');
- }
- /**
- * Implements hook_form_FORM_BASE_ID_alter().
- */
- function field_ui_test_form_entity_view_display_edit_form_alter(&$form, FormStateInterface $form_state) {
- $table = &$form['fields'];
- foreach (Element::children($table) as $name) {
- $table[$name]['parent_wrapper']['parent']['#options'] = ['indent' => 'Indent'];
- $table[$name]['parent_wrapper']['parent']['#default_value'] = 'indent';
- }
- $table['indent'] = [
- '#attributes' => ['class' => ['draggable', 'field-group'], 'id' => 'indent-id'],
- '#row_type' => 'group',
- '#region_callback' => 'field_ui_test_region_callback',
- '#js_settings' => ['rowHandler' => 'group'],
- 'human_name' => [
- '#markup' => 'Indent',
- '#prefix' => '<span class="group-label">',
- '#suffix' => '</span>',
- ],
- 'weight' => [
- '#type' => 'textfield',
- '#default_value' => 0,
- '#size' => 3,
- '#attributes' => ['class' => ['field-weight']],
- ],
- 'parent_wrapper' => [
- 'parent' => [
- '#type' => 'select',
- '#options' => ['indent' => 'Indent'],
- '#empty_value' => '',
- '#default_value' => '',
- '#attributes' => ['class' => ['field-parent']],
- '#parents' => ['fields', 'indent', 'parent'],
- ],
- 'hidden_name' => [
- '#type' => 'hidden',
- '#default_value' => 'indent',
- '#attributes' => ['class' => ['field-name']],
- ],
- ],
- ];
- }
- function field_ui_test_region_callback($row) {
- return 'content';
- }
|