public function ContentEntityDeleteForm::buildForm in Drupal 8
Same name and namespace in other branches
- 9 core/lib/Drupal/Core/Entity/ContentEntityDeleteForm.php \Drupal\Core\Entity\ContentEntityDeleteForm::buildForm()
Form constructor.
Parameters
array $form: An associative array containing the structure of the form.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
Return value
array The form structure.
Overrides ContentEntityConfirmFormBase::buildForm
2 calls to ContentEntityDeleteForm::buildForm()
- ContentTranslationDeleteForm::buildForm in core/modules/ content_translation/ src/ Form/ ContentTranslationDeleteForm.php 
- Form constructor.
- WorkspaceDeleteForm::buildForm in core/modules/ workspaces/ src/ Form/ WorkspaceDeleteForm.php 
- Form constructor.
2 methods override ContentEntityDeleteForm::buildForm()
- ContentTranslationDeleteForm::buildForm in core/modules/ content_translation/ src/ Form/ ContentTranslationDeleteForm.php 
- Form constructor.
- WorkspaceDeleteForm::buildForm in core/modules/ workspaces/ src/ Form/ WorkspaceDeleteForm.php 
- Form constructor.
File
- core/lib/ Drupal/ Core/ Entity/ ContentEntityDeleteForm.php, line 27 
Class
- ContentEntityDeleteForm
- Provides a generic base class for a content entity deletion form.
Namespace
Drupal\Core\EntityCode
public function buildForm(array $form, FormStateInterface $form_state) {
  $form = parent::buildForm($form, $form_state);
  /** @var \Drupal\Core\Entity\ContentEntityInterface $entity */
  $entity = $this
    ->getEntity();
  if ($entity
    ->isDefaultTranslation()) {
    if (count($entity
      ->getTranslationLanguages()) > 1) {
      $languages = [];
      foreach ($entity
        ->getTranslationLanguages() as $language) {
        $languages[] = $language
          ->getName();
      }
      $form['deleted_translations'] = [
        '#theme' => 'item_list',
        '#title' => $this
          ->t('The following @entity-type translations will be deleted:', [
          '@entity-type' => $entity
            ->getEntityType()
            ->getSingularLabel(),
        ]),
        '#items' => $languages,
      ];
      $form['actions']['submit']['#value'] = $this
        ->t('Delete all translations');
    }
  }
  else {
    $form['actions']['submit']['#value'] = $this
      ->t('Delete @language translation', [
      '@language' => $entity
        ->language()
        ->getName(),
    ]);
  }
  return $form;
}