public function ParagraphsTypeDeleteConfirm::buildForm in Paragraphs 8
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 EntityDeleteForm::buildForm
File
- src/
Form/ ParagraphsTypeDeleteConfirm.php, line 17
Class
- ParagraphsTypeDeleteConfirm
- Provides a form for Paragraphs type deletion.
Namespace
Drupal\paragraphs\FormCode
public function buildForm(array $form, FormStateInterface $form_state) {
$num_paragraphs = $this->entityTypeManager
->getStorage('paragraph')
->getQuery()
->condition('type', $this->entity
->id())
->count()
->execute();
if ($num_paragraphs) {
$caption = '<p>' . $this
->formatPlural($num_paragraphs, '%type Paragraphs type is used by 1 piece of content on your site. You can not remove this %type Paragraphs type until you have removed all from the content.', '%type Paragraphs type is used by @count pieces of content on your site. You may not remove %type Paragraphs type until you have removed all from the content.', [
'%type' => $this->entity
->label(),
]) . '</p>';
$form['#title'] = $this
->getQuestion();
$form['description'] = [
'#markup' => $caption,
];
// Optional to delete existing entities.
$form['delete_entities'] = [
'#type' => 'submit',
'#submit' => [
[
$this,
'deleteExistingEntities',
],
],
'#value' => $this
->formatPlural($num_paragraphs, 'Delete existing Paragraph', 'Delete all @count existing Paragraphs'),
];
return $form;
}
return parent::buildForm($form, $form_state);
}