function RevisionRevertForm::submitForm
Same name in other branches
- 11.x core/lib/Drupal/Core/Entity/Form/RevisionRevertForm.php \Drupal\Core\Entity\Form\RevisionRevertForm::submitForm()
Overrides FormInterface::submitForm
File
-
core/
lib/ Drupal/ Core/ Entity/ Form/ RevisionRevertForm.php, line 158
Class
- RevisionRevertForm
- Provides a form for reverting an entity revision.
Namespace
Drupal\Core\Entity\FormCode
public function submitForm(array &$form, FormStateInterface $form_state) {
$revisionId = $this->revision
->getRevisionId();
$revisionLabel = $this->revision
->label();
$bundleLabel = $this->getBundleLabel($this->revision);
if ($this->revision instanceof RevisionLogInterface) {
$originalRevisionTimestamp = $this->revision
->getRevisionCreationTime();
}
$this->revision = $this->prepareRevision($this->revision, $form_state);
if (isset($originalRevisionTimestamp)) {
$date = $this->dateFormatter
->format($originalRevisionTimestamp);
$this->messenger
->addMessage($this->t('@type %title has been reverted to the revision from %revision-date.', [
'@type' => $bundleLabel,
'%title' => $revisionLabel,
'%revision-date' => $date,
]));
}
else {
$this->messenger
->addMessage($this->t('@type %title has been reverted.', [
'@type' => $bundleLabel,
'%title' => $revisionLabel,
]));
}
$this->logger($this->revision
->getEntityType()
->getProvider())
->info('@type: reverted %title revision %revision.', [
'@type' => $this->revision
->bundle(),
'%title' => $revisionLabel,
'%revision' => $revisionId,
]);
$versionHistoryUrl = $this->revision
->toUrl('version-history');
if ($versionHistoryUrl->access($this->currentUser())) {
$form_state->setRedirectUrl($versionHistoryUrl);
}
if (!$form_state->getRedirect()) {
$canonicalUrl = $this->revision
->toUrl();
if ($canonicalUrl->access($this->currentUser())) {
$form_state->setRedirectUrl($canonicalUrl);
}
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.