abstract class SystemConfigFormBase

Base class for implementing system configuration forms.

Hierarchy

Expanded class hierarchy of SystemConfigFormBase

25 files declare their use of SystemConfigFormBase
AccountSettingsForm.php in drupal/core/modules/user/lib/Drupal/user/AccountSettingsForm.php
Contains \Drupal\user\AccountSettingsForm.
AdvancedSettingsForm.php in drupal/core/modules/views_ui/lib/Drupal/views_ui/Form/AdvancedSettingsForm.php
Contains \Drupal\views_ui\Form\AdvancedSettingsForm.
BasicSettingsForm.php in drupal/core/modules/views_ui/lib/Drupal/views_ui/Form/BasicSettingsForm.php
Contains \Drupal\views_ui\Form\BasicSettingsForm.
BookSettingsForm.php in drupal/core/modules/book/lib/Drupal/book/BookSettingsForm.php
Contains \Drupal\book\BookSettingsForm.
CronForm.php in drupal/core/modules/system/lib/Drupal/system/Form/CronForm.php
Contains \Drupal\system\Form\CronForm.

... See full list

File

drupal/core/modules/system/lib/Drupal/system/SystemConfigFormBase.php, line 19
Contains \Drupal\system\SystemConfigFormBase.

Namespace

Drupal\system
View source
abstract class SystemConfigFormBase implements FormInterface, ControllerInterface {

  /**
   * Stores the configuration factory.
   *
   * @var \Drupal\Core\Config\ConfigFactory
   */
  protected $configFactory;

  /**
   * Constructs a \Drupal\system\SystemConfigFormBase object.
   *
   * @param \Drupal\Core\Config\ConfigFactory $config_factory
   *   The factory for configuration objects.
   * @param \Drupal\Core\Config\Context\ContextInterface $context
   *   The configuration context to use.
   */
  public function __construct(ConfigFactory $config_factory, ContextInterface $context) {
    $this->configFactory = $config_factory;
    $this->configFactory
      ->enterContext($context);
  }

  /**
   * {@inheritdoc}
   */
  public static function create(ContainerInterface $container) {
    return new static($container
      ->get('config.factory'), $container
      ->get('config.context.free'));
  }

  /**
   * Implements \Drupal\Core\Form\FormInterface::buildForm().
   */
  public function buildForm(array $form, array &$form_state) {
    $form['actions']['#type'] = 'actions';
    $form['actions']['submit'] = array(
      '#type' => 'submit',
      '#value' => t('Save configuration'),
      '#button_type' => 'primary',
    );

    // By default, render the form using theme_system_config_form().
    $form['#theme'] = 'system_config_form';
    return $form;
  }

  /**
   * Implements \Drupal\Core\Form\FormInterface::validateForm().
   */
  public function validateForm(array &$form, array &$form_state) {
  }

  /**
   * Implements \Drupal\Core\Form\FormInterface::submitForm().
   */
  public function submitForm(array &$form, array &$form_state) {
    drupal_set_message(t('The configuration options have been saved.'));
  }

}

Members

Namesort descending Modifiers Type Description Overrides
FormInterface::getFormID public function Returns a unique string identifying the form. 90
SystemConfigFormBase::$configFactory protected property Stores the configuration factory.
SystemConfigFormBase::buildForm public function Implements \Drupal\Core\Form\FormInterface::buildForm(). Overrides FormInterface::buildForm 24
SystemConfigFormBase::create public static function Instantiates a new instance of this controller. Overrides ControllerInterface::create 9
SystemConfigFormBase::submitForm public function Implements \Drupal\Core\Form\FormInterface::submitForm(). Overrides FormInterface::submitForm 24
SystemConfigFormBase::validateForm public function Implements \Drupal\Core\Form\FormInterface::validateForm(). Overrides FormInterface::validateForm 7
SystemConfigFormBase::__construct public function Constructs a \Drupal\system\SystemConfigFormBase object. 9