From c5812590bc86eff0e5ee68bf8770724f88c6fc6e Mon Sep 17 00:00:00 2001
From: catch <catch56@gmail.com>
Date: Fri, 21 Oct 2022 12:44:02 +0100
Subject: [PATCH] Issue #2826592 by sourabh.singhal, jeffam, dhirendra.mishra,
 pk188, Manibharathi E R, krina.addweb, David_Rothstein, Berdir, shortspoken,
 ameymudras: No redirection to term view display page from term edit page

(cherry picked from commit fa7f5a0e568c3f85956862686915d1e0b2a654d6)
---
 core/modules/taxonomy/src/TermForm.php                  | 1 +
 core/modules/taxonomy/tests/src/Functional/TermTest.php | 6 ++++++
 2 files changed, 7 insertions(+)

diff --git a/core/modules/taxonomy/src/TermForm.php b/core/modules/taxonomy/src/TermForm.php
index 73f6e4d11e1d..c077b5147df5 100644
--- a/core/modules/taxonomy/src/TermForm.php
+++ b/core/modules/taxonomy/src/TermForm.php
@@ -201,6 +201,7 @@ public function save(array $form, FormStateInterface $form_state) {
       case SAVED_UPDATED:
         $this->messenger()->addStatus($this->t('Updated term %term.', ['%term' => $view_link]));
         $this->logger('taxonomy')->notice('Updated term %term.', ['%term' => $term->getName(), 'link' => $edit_link]);
+        $form_state->setRedirect('entity.taxonomy_term.canonical', ['taxonomy_term' => $term->id()]);
         break;
     }
 
diff --git a/core/modules/taxonomy/tests/src/Functional/TermTest.php b/core/modules/taxonomy/tests/src/Functional/TermTest.php
index 1804fbf377bf..0a372887e640 100644
--- a/core/modules/taxonomy/tests/src/Functional/TermTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/TermTest.php
@@ -348,6 +348,9 @@ public function testTermInterface() {
     $this->drupalGet('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/add');
     $this->submitForm($edit, 'Save');
 
+    // Ensure form redirected back to term add page.
+    $this->assertSession()->addressEquals('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/add');
+
     $terms = \Drupal::entityTypeManager()->getStorage('taxonomy_term')->loadByProperties([
       'name' => $edit['name[0][value]'],
     ]);
@@ -372,6 +375,9 @@ public function testTermInterface() {
     $this->drupalGet('taxonomy/term/' . $term->id() . '/edit');
     $this->submitForm($edit, 'Save');
 
+    // Ensure form redirected back to term view.
+    $this->assertSession()->addressEquals('taxonomy/term/' . $term->id());
+
     // Check that the term is still present at admin UI after edit.
     $this->drupalGet('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/overview');
     $this->assertSession()->pageTextContains($edit['name[0][value]']);
-- 
GitLab