menu_link_content_revisions_ui-1.0.0/src/Form/MenuLinkContentRevisionsUiSettingsForm.php

src/Form/MenuLinkContentRevisionsUiSettingsForm.php
<?php

namespace Drupal\menu_link_content_revisions_ui\Form;

use Drupal\Core\Form\ConfigFormBase;
use Drupal\Core\Form\ConfigTarget;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\Form\RedundantEditableConfigNamesTrait;

/**
 * Form for configuring menu link content revisions UI settings.
 *
 * @package Drupal\menu_link_content_revisions_ui\Form
 */
class MenuLinkContentRevisionsUiSettingsForm extends ConfigFormBase {
  use RedundantEditableConfigNamesTrait;

  /**
   * {@inheritdoc}
   */
  protected function getEditableConfigNames() {
    return [
      'menu_link_content_revisions_ui.settings',
    ];
  }

  /**
   * {@inheritdoc}
   */
  public function getFormId() {
    return 'menu_link_content_revisions_ui_settings';
  }

  /**
   * {@inheritdoc}
   */
  public function buildForm(array $form, FormStateInterface $form_state) {
    $form['enable_auto_revisions'] = [
      '#type' => 'checkbox',
      '#title' => $this->t('Enable automatic revisions on every menu link content save.'),
      '#config_target' => new ConfigTarget(
        'menu_link_content_revisions_ui.settings',
        'enable_auto_revisions',
      ),
      '#description' => $this->t('Automatically create a new revision every time a menu link content item is saved. For menu links in node forms, only create a new revision if the menu link has changed. If not enabled, you will need another method to create revisions.'),
    ];
    $form['log_messages'] = [
      '#type' => 'fieldset',
      '#title' => $this->t('Customize Revision Log Messages'),
      '#description' => $this->t('If automatic revisions are enabled, customize the revision log messages.'),
      '#description_display' => 'before',
      '#collapsible' => TRUE,
      '#collapsed' => FALSE,
    ];
    $form['log_messages']['append_menu_link_status'] = [
      '#type' => 'checkbox',
      '#title' => $this->t('Append menu link status to log message.'),
      '#config_target' => new ConfigTarget(
        'menu_link_content_revisions_ui.settings',
        'append_menu_link_status',
      ),
      '#description' => $this->t('Append the menu link status to the revision log message - enabled or disabled.'),
    ];
    $form['log_messages']['node_add_message'] = [
      '#type' => 'textfield',
      '#title' => $this->t('Message when a new link is added via the node form.'),
      '#config_target' => new ConfigTarget(
        'menu_link_content_revisions_ui.settings',
        'node_add_message',
      ),
      '#maxlength' => 255,
      '#required' => TRUE,
    ];
    $form['log_messages']['node_update_message'] = [
      '#type' => 'textfield',
      '#title' => $this->t('Message when a link is updated via the node form.'),
      '#config_target' => new ConfigTarget(
        'menu_link_content_revisions_ui.settings',
        'node_update_message',
      ),
      '#maxlength' => 255,
      '#required' => TRUE,
    ];
    $form['log_messages']['menu_edit_message'] = [
      '#type' => 'textfield',
      '#title' => $this->t('Message when a link is updated in bulk on the menu form.'),
      '#config_target' => new ConfigTarget(
        'menu_link_content_revisions_ui.settings',
        'menu_edit_message',
      ),
      '#maxlength' => 255,
      '#required' => TRUE,
    ];
    $form['log_messages']['menu_link_add_message'] = [
      '#type' => 'textfield',
      '#title' => $this->t('Message when a new link is added via the menu link content form.'),
      '#config_target' => new ConfigTarget(
        'menu_link_content_revisions_ui.settings',
        'menu_link_add_message',
      ),
      '#maxlength' => 255,
      '#required' => TRUE,
    ];
    $form['log_messages']['menu_link_update_message'] = [
      '#type' => 'textfield',
      '#title' => $this->t('Message when a link is updated via the menu link content form.'),
      '#config_target' => new ConfigTarget(
        'menu_link_content_revisions_ui.settings',
        'menu_link_update_message',
      ),
      '#maxlength' => 255,
      '#required' => TRUE,
    ];

    return parent::buildForm($form, $form_state);
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc