
| Current Path : /var/www/html/12park/web/modules/contrib/webform/src/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : /var/www/html/12park/web/modules/contrib/webform/src/WebformOptionsDeleteForm.php |
<?php
namespace Drupal\webform;
use Drupal\webform\Form\WebformConfigEntityDeleteFormBase;
/**
* Provides a delete webform options form.
*/
class WebformOptionsDeleteForm extends WebformConfigEntityDeleteFormBase {
/**
* {@inheritdoc}
*/
public function getDescription() {
return [
'title' => [
'#markup' => $this->t('This action will…'),
],
'list' => [
'#theme' => 'item_list',
'#items' => [
$this->t('Remove configuration'),
$this->t('Affect any elements which use these options'),
],
],
];
}
/**
* {@inheritdoc}
*/
public function getDetails() {
/** @var \Drupal\webform\WebformOptionsInterface $webform_options */
$webform_options = $this->entity;
/** @var \Drupal\webform\WebformOptionsStorageInterface $webform_options_storage */
$webform_options_storage = $this->entityTypeManager->getStorage('webform_options');
$t_args = [
'%label' => $this->getEntity()->label(),
'@entity-type' => $this->getEntity()->getEntityType()->getSingularLabel(),
];
$details = [];
if ($used_by_elements = $webform_options_storage->getUsedByCompositeElements($webform_options)) {
$details['elements'] = [
'title' => [
'#markup' => $this->t('%label is used by the below composite element(s).', $t_args),
],
'list' => [
'#theme' => 'item_list',
'#items' => $used_by_elements,
],
];
}
if ($used_by_webforms = $webform_options_storage->getUsedByWebforms($webform_options)) {
$details['webform'] = [
'title' => [
'#markup' => $this->t('%label is used by the below webform(s).', $t_args),
],
'list' => [
'#theme' => 'item_list',
'#items' => $used_by_webforms,
],
];
}
if ($details) {
return [
'#type' => 'details',
'#title' => $this->t('Webforms affected'),
] + $details;
}
else {
return [];
}
}
}