Verified Commit a243c347 authored by Alex Pott's avatar Alex Pott
Browse files

Issue #3242538 by danflanagan8, mounir_abid, cilefen, DigitalFrontiersMedia,...

Issue #3242538 by danflanagan8, mounir_abid, cilefen, DigitalFrontiersMedia, super_romeo, smustgrave: Term creation fail with php 8 when override_selector = TRUE

(cherry picked from commit 86c4193f)
parent b9942ab2
Loading
Loading
Loading
Loading
+12 −8
Original line number Diff line number Diff line
@@ -63,6 +63,11 @@ public function form(array $form, FormStateInterface $form_state) {
          $options[$item->tid] = str_repeat('-', $item->depth) . $item->name;
        }
      }
    }
    else {
      $options = ['<' . $this->t('root') . '>'];
      $parent = [0];
    }

    $form['relations']['parent'] = [
      '#type' => 'select',
@@ -71,7 +76,6 @@ public function form(array $form, FormStateInterface $form_state) {
      '#default_value' => $parent,
      '#multiple' => TRUE,
    ];
    }

    $form['relations']['weight'] = [
      '#type' => 'textfield',
+25 −0
Original line number Diff line number Diff line
@@ -432,6 +432,31 @@ public function testTermInterface() {
    $this->assertSession()->pageTextNotContains('Save and go to list');
  }

  /**
   * Test UI with override_selector TRUE.
   */
  public function testTermSaveOverrideSelector() {
    $this->config('taxonomy.settings')->set('override_selector', TRUE)->save();

    // Create a Term.
    $edit = [
      'name[0][value]' => $this->randomMachineName(12),
      'description[0][value]' => $this->randomMachineName(100),
    ];
    // Create the term to edit.
    $this->drupalGet('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/add');
    $this->submitForm($edit, 'Save');
    $terms = \Drupal::entityTypeManager()->getStorage('taxonomy_term')->loadByProperties([
      'name' => $edit['name[0][value]'],
    ]);
    $term = reset($terms);
    $this->assertNotNull($term, 'Term found in database.');

    // The term appears on the vocab list page.
    $this->drupalGet('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/overview');
    $this->assertSession()->pageTextContains($term->getName());
  }

  /**
   * Save, edit and delete a term using the user interface.
   */