abstract class WebformConfigEntityDeleteFormBase in Webform 8.5
Same name and namespace in other branches
- 6.x src/Form/WebformConfigEntityDeleteFormBase.php \Drupal\webform\Form\WebformConfigEntityDeleteFormBase
Provides a generic base class for a webform entity deletion form.
Copied from: \Drupal\Core\Entity\EntityConfirmFormBase.
Hierarchy
- class \Drupal\Core\Form\FormBase implements ContainerInjectionInterface, FormInterface uses DependencySerializationTrait, LoggerChannelTrait, MessengerTrait, LinkGeneratorTrait, RedirectDestinationTrait, UrlGeneratorTrait, StringTranslationTrait
- class \Drupal\Core\Entity\EntityForm implements EntityFormInterface
- class \Drupal\webform\Form\WebformConfigEntityDeleteFormBase implements WebformDeleteFormInterface uses EntityDeleteFormTrait, WebformDialogFormTrait
- class \Drupal\Core\Entity\EntityForm implements EntityFormInterface
Expanded class hierarchy of WebformConfigEntityDeleteFormBase
6 files declare their use of WebformConfigEntityDeleteFormBase
- WebformAccessGroupDeleteForm.php in modules/
webform_access/ src/ WebformAccessGroupDeleteForm.php - WebformAccessTypeDeleteForm.php in modules/
webform_access/ src/ WebformAccessTypeDeleteForm.php - WebformEntityDeleteForm.php in src/
WebformEntityDeleteForm.php - WebformImageSelectImagesDeleteForm.php in modules/
webform_image_select/ src/ WebformImageSelectImagesDeleteForm.php - WebformOptionsCustomDeleteForm.php in modules/
webform_options_custom/ src/ WebformOptionsCustomDeleteForm.php
File
- src/
Form/ WebformConfigEntityDeleteFormBase.php, line 15
Namespace
Drupal\webform\FormView source
abstract class WebformConfigEntityDeleteFormBase extends EntityForm implements WebformDeleteFormInterface {
use EntityDeleteFormTrait;
use WebformDialogFormTrait;
/**
* Display confirmation checkbox.
*
* @var bool
*/
protected $confirmCheckbox = TRUE;
/**
* {@inheritdoc}
*/
public function getBaseFormId() {
return $this->entity
->getEntityTypeId() . '_confirm_form';
}
/**
* {@inheritdoc}
*/
public function getQuestion() {
if ($this
->isDialog()) {
$t_args = [
'@entity-type' => $this
->getEntity()
->getEntityType()
->getSingularLabel(),
'@label' => $this
->getEntity()
->label(),
];
return $this
->t("Delete '@label' @entity-type?", $t_args);
}
else {
$t_args = [
'@entity-type' => $this
->getEntity()
->getEntityType()
->getSingularLabel(),
'%label' => $this
->getEntity()
->label(),
];
return $this
->t('Delete %label @entity-type?', $t_args);
}
}
/**
* {@inheritdoc}
*/
public function getWarning() {
$t_args = [
'@entity-type' => $this
->getEntity()
->getEntityType()
->getSingularLabel(),
'%label' => $this
->getEntity()
->label(),
];
return [
'#type' => 'webform_message',
'#message_type' => 'warning',
'#message_message' => $this
->t('Are you sure you want to delete the %label @entity-type?', $t_args) . '<br/>' . '<strong>' . $this
->t('This action cannot be undone.') . '</strong>',
];
}
/**
* {@inheritdoc}
*/
public function getDescription() {
return [];
}
/**
* {@inheritdoc}
*/
public function getDetails() {
return [];
}
/**
* {@inheritdoc}
*/
public function getConfirmInput() {
$t_args = [
'@entity-type' => $this
->getEntity()
->getEntityType()
->getSingularLabel(),
'%label' => $this
->getEntity()
->label(),
];
if ($this->confirmCheckbox) {
return [
'#type' => 'checkbox',
'#title' => $this
->t('Yes, I want to delete the %label @entity-type', $t_args),
'#required' => TRUE,
];
}
else {
return [];
}
}
/**
* {@inheritdoc}
*/
public function getConfirmText() {
return $this
->t('Delete');
}
/**
* {@inheritdoc}
*/
public function getCancelText() {
return $this
->t('Cancel');
}
/**
* {@inheritdoc}
*/
public function getFormName() {
return 'webform_config_entity_delete';
}
/**
* {@inheritdoc}
*/
public function buildForm(array $form, FormStateInterface $form_state) {
$form = parent::buildForm($form, $form_state);
$form['#attributes']['class'][] = 'confirmation';
$form['#theme'] = 'confirm_form';
$form[$this
->getFormName()] = [
'#type' => 'hidden',
'#value' => 1,
];
// Title.
$form['#title'] = $this
->getQuestion();
// Warning.
$form['warning'] = $this
->getWarning();
// Description.
$form['description'] = $this
->getDescription();
// Details and confirm input.
$details = $this
->getDetails();
$confirm_input = $this
->getConfirmInput();
if ($details) {
$form['details'] = $details;
}
if (!$details && $confirm_input) {
$form['hr'] = [
'#markup' => '<p><hr/></p>',
];
}
if ($confirm_input) {
$form['confirm'] = $confirm_input;
}
// Dialog.
return $this
->buildDialogConfirmForm($form, $form_state);
}
/**
* {@inheritdoc}
*/
protected function actions(array $form, FormStateInterface $form_state) {
return [
'submit' => [
'#type' => 'submit',
'#value' => $this
->getConfirmText(),
'#submit' => [
[
$this,
'submitForm',
],
],
],
'cancel' => ConfirmFormHelper::buildCancelLink($this, $this
->getRequest()),
];
}
/**
* {@inheritdoc}
*
* The save() method is not used in EntityConfirmFormBase. This overrides the
* default implementation that saves the entity.
*
* Confirmation forms should override submitForm() instead for their logic.
*/
public function save(array $form, FormStateInterface $form_state) {
}
/**
* {@inheritdoc}
*
* The delete() method is not used in EntityConfirmFormBase. This overrides
* the default implementation that redirects to the delete-form confirmation
* form.
*
* Confirmation forms should override submitForm() instead for their logic.
*/
public function delete(array $form, FormStateInterface $form_state) {
}
}
Members
Name![]() |
Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ConfigDependencyDeleteFormTrait:: |
protected | function | Adds form elements to list affected configuration entities. | |
ConfigDependencyDeleteFormTrait:: |
abstract protected | function | Translates a string to the current language or to a given language. | |
DependencySerializationTrait:: |
protected | property | An array of entity type IDs keyed by the property name of their storages. | |
DependencySerializationTrait:: |
protected | property | An array of service IDs keyed by property name used for serialization. | |
DependencySerializationTrait:: |
public | function | 1 | |
DependencySerializationTrait:: |
public | function | 2 | |
EntityDeleteFormTrait:: |
public | function | 3 | |
EntityDeleteFormTrait:: |
protected | function | Gets the message to display to the user after deleting the entity. | 3 |
EntityDeleteFormTrait:: |
abstract public | function | Gets the entity of this form. | |
EntityDeleteFormTrait:: |
protected | function | Returns the URL where the user should be redirected after deletion. | 5 |
EntityDeleteFormTrait:: |
protected | function | Logs a message about the deleted entity. | 2 |
EntityDeleteFormTrait:: |
abstract protected | function | Gets the logger for a specific channel. | |
EntityDeleteFormTrait:: |
public | function | 4 | |
EntityForm:: |
protected | property | The entity being used by this form. | 7 |
EntityForm:: |
protected | property | The entity type manager. | 3 |
EntityForm:: |
protected | property | The module handler service. | |
EntityForm:: |
protected | property | The name of the current operation. | |
EntityForm:: |
private | property | The entity manager. | |
EntityForm:: |
protected | function | Returns the action form element for the current entity form. | |
EntityForm:: |
public | function | Form element #after_build callback: Updates the entity with submitted data. | |
EntityForm:: |
public | function |
Builds an updated entity object based upon the submitted form values. Overrides EntityFormInterface:: |
2 |
EntityForm:: |
protected | function | Copies top-level form values to entity properties | 7 |
EntityForm:: |
public | function | Gets the actual form array to be built. | 30 |
EntityForm:: |
public | function |
Determines which entity will be used by this form from a RouteMatch object. Overrides EntityFormInterface:: |
1 |
EntityForm:: |
public | function |
Returns a unique string identifying the form. Overrides FormInterface:: |
10 |
EntityForm:: |
public | function |
Gets the operation identifying the form. Overrides EntityFormInterface:: |
|
EntityForm:: |
protected | function | Initialize the form state and the entity before the first form build. | 3 |
EntityForm:: |
protected | function | Prepares the entity object before the form is built first. | 3 |
EntityForm:: |
protected | function | Invokes the specified prepare hook variant. | |
EntityForm:: |
public | function | Process callback: assigns weights and hides extra fields. | |
EntityForm:: |
public | function |
Sets the form entity. Overrides EntityFormInterface:: |
|
EntityForm:: |
public | function |
Sets the entity manager for this form. Overrides EntityFormInterface:: |
|
EntityForm:: |
public | function |
Sets the entity type manager for this form. Overrides EntityFormInterface:: |
|
EntityForm:: |
public | function |
Sets the module handler for this form. Overrides EntityFormInterface:: |
|
EntityForm:: |
public | function |
Sets the operation for this form. Overrides EntityFormInterface:: |
|
EntityForm:: |
public | function | ||
EntityForm:: |
public | function | ||
FormBase:: |
protected | property | The config factory. | 1 |
FormBase:: |
protected | property | The request stack. | 1 |
FormBase:: |
protected | property | The route match. | |
FormBase:: |
protected | function | Retrieves a configuration object. | |
FormBase:: |
protected | function | Gets the config factory for this form. | 1 |
FormBase:: |
private | function | Returns the service container. | |
FormBase:: |
public static | function |
Instantiates a new instance of this class. Overrides ContainerInjectionInterface:: |
87 |
FormBase:: |
protected | function | Gets the current user. | |
FormBase:: |
protected | function | Gets the request object. | |
FormBase:: |
protected | function | Gets the route match. | |
FormBase:: |
protected | function |
Returns a redirect response object for the specified route. Overrides UrlGeneratorTrait:: |
|
FormBase:: |
public | function | Resets the configuration factory. | |
FormBase:: |
public | function | Sets the config factory for this form. | |
FormBase:: |
public | function | Sets the request stack object to use. | |
FormBase:: |
public | function |
Form validation handler. Overrides FormInterface:: |
62 |
LinkGeneratorTrait:: |
protected | property | The link generator. | 1 |
LinkGeneratorTrait:: |
protected | function | Returns the link generator. | |
LinkGeneratorTrait:: |
protected | function | Renders a link to a route given a route name and its parameters. | |
LinkGeneratorTrait:: |
public | function | Sets the link generator service. | |
LoggerChannelTrait:: |
protected | property | The logger channel factory service. | |
LoggerChannelTrait:: |
protected | function | Gets the logger for a specific channel. | |
LoggerChannelTrait:: |
public | function | Injects the logger channel factory. | |
MessengerTrait:: |
protected | property | The messenger. | 29 |
MessengerTrait:: |
public | function | Gets the messenger. | 29 |
MessengerTrait:: |
public | function | Sets the messenger. | |
RedirectDestinationTrait:: |
protected | property | The redirect destination service. | 1 |
RedirectDestinationTrait:: |
protected | function | Prepares a 'destination' URL query parameter for use with \Drupal\Core\Url. | |
RedirectDestinationTrait:: |
protected | function | Returns the redirect destination service. | |
RedirectDestinationTrait:: |
public | function | Sets the redirect destination service. | |
StringTranslationTrait:: |
protected | property | The string translation service. | 1 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
UrlGeneratorTrait:: |
protected | property | The url generator. | |
UrlGeneratorTrait:: |
protected | function | Returns the URL generator service. | |
UrlGeneratorTrait:: |
public | function | Sets the URL generator service. | |
UrlGeneratorTrait:: |
protected | function | Generates a URL or path for a specific route based on the given parameters. | |
WebformAjaxFormTrait:: |
protected | function | Queue announcement with Ajax response. | |
WebformAjaxFormTrait:: |
protected | function | Add Ajax support to a form. | |
WebformAjaxFormTrait:: |
protected | function | Create an AjaxResponse or WebformAjaxResponse object. | |
WebformAjaxFormTrait:: |
protected | function | Get announcements. | |
WebformAjaxFormTrait:: |
protected | function | Get default ajax callback settings. | 1 |
WebformAjaxFormTrait:: |
protected | function | Get redirect URL from the form's state. | |
WebformAjaxFormTrait:: |
protected | function | Get the form's Ajax wrapper id. | 1 |
WebformAjaxFormTrait:: |
protected | function | Determine if Ajax callback is callable. | |
WebformAjaxFormTrait:: |
protected | function | Is the current request for an Ajax modal/dialog. | |
WebformAjaxFormTrait:: |
protected | function | Is the current request for an off canvas dialog. | |
WebformAjaxFormTrait:: |
protected | function | Handle missing Ajax callback. | |
WebformAjaxFormTrait:: |
protected | function | Replace form via an Ajax response. | 1 |
WebformAjaxFormTrait:: |
protected | function | Reset announcements. | |
WebformAjaxFormTrait:: |
protected | function | Set announcements. | |
WebformAjaxFormTrait:: |
public | function | Submit form #ajax callback. | 1 |
WebformAjaxFormTrait:: |
public | function | Validate form #ajax callback. | 1 |
WebformConfigEntityDeleteFormBase:: |
protected | property | Display confirmation checkbox. | 2 |
WebformConfigEntityDeleteFormBase:: |
protected | function |
Returns an array of supported actions for the current entity form. Overrides EntityForm:: |
|
WebformConfigEntityDeleteFormBase:: |
public | function |
Form constructor. Overrides EntityForm:: |
|
WebformConfigEntityDeleteFormBase:: |
public | function | The delete() method is not used in EntityConfirmFormBase. This overrides the default implementation that redirects to the delete-form confirmation form. | |
WebformConfigEntityDeleteFormBase:: |
public | function |
Returns a string identifying the base form. Overrides EntityForm:: |
|
WebformConfigEntityDeleteFormBase:: |
public | function |
Returns a caption for the link which cancels the action. Overrides ConfirmFormInterface:: |
|
WebformConfigEntityDeleteFormBase:: |
public | function |
Returns confirm input to display. Overrides WebformDeleteFormInterface:: |
|
WebformConfigEntityDeleteFormBase:: |
public | function |
Returns a caption for the button that confirms the action. Overrides EntityDeleteFormTrait:: |
|
WebformConfigEntityDeleteFormBase:: |
public | function |
Returns additional text to display as a description. Overrides WebformDeleteFormInterface:: |
6 |
WebformConfigEntityDeleteFormBase:: |
public | function |
Returns details to display. Overrides WebformDeleteFormInterface:: |
3 |
WebformConfigEntityDeleteFormBase:: |
public | function |
Returns the internal name used to refer to the confirmation item. Overrides ConfirmFormInterface:: |
|
WebformConfigEntityDeleteFormBase:: |
public | function |
Returns the question to ask the user. Overrides EntityDeleteFormTrait:: |
|
WebformConfigEntityDeleteFormBase:: |
public | function |
Returns warning message to display. Overrides WebformDeleteFormInterface:: |
|
WebformConfigEntityDeleteFormBase:: |
public | function |
The save() method is not used in EntityConfirmFormBase. This overrides the
default implementation that saves the entity. Overrides EntityForm:: |
|
WebformDialogFormTrait:: |
protected | function | Add modal dialog support to a confirm form. | |
WebformDialogFormTrait:: |
protected | function | Build webform dialog delete link. | |
WebformDialogFormTrait:: |
protected | function | Add modal dialog support to a form. | |
WebformDialogFormTrait:: |
public | function |
Cancel form #ajax callback. Overrides WebformAjaxFormTrait:: |
1 |
WebformDialogFormTrait:: |
public | function | Close dialog. | |
WebformDialogFormTrait:: |
protected | function |
Returns if webform is using Ajax. Overrides WebformAjaxFormTrait:: |
1 |
WebformDialogFormTrait:: |
public | function |
Empty submit callback used to only have the submit button to use an #ajax submit callback. Overrides WebformAjaxFormTrait:: |
|
WebformDialogFormTrait:: |
public | function | Validate callback to clear validation errors. | 2 |