tmgmt-8.x-1.x-dev/translators/tmgmt_local/src/Form/LocalTaskUnassignForm.php

translators/tmgmt_local/src/Form/LocalTaskUnassignForm.php
<?php

namespace Drupal\tmgmt_local\Form;

use Drupal\Core\Entity\ContentEntityConfirmFormBase;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\StringTranslation\TranslatableMarkup;
use Drupal\tmgmt_local\Entity\LocalTask;
use Drupal\views\Views;

/**
 * Unassign task confirmation form.
 */
class LocalTaskUnassignForm extends ContentEntityConfirmFormBase {

  /**
   * {@inheritdoc}
   */
  public function getQuestion() {
    return new TranslatableMarkup('Are you sure you want to unassign from the translation task @label?', ['@label' => $this->getEntity()->label()]);
  }

  /**
   * {@inheritdoc}
   */
  public function getCancelUrl() {
    $view = Views::getView('tmgmt_local_task_overview');
    $view->initDisplay();
    return $view->getUrl();
  }

  /**
   * {@inheritdoc}
   */
  public function getConfirmText() {
    return t('Unassign');
  }

  /**
   * {@inheritdoc}
   */
  public function submitForm(array &$form, FormStateInterface $form_state) {
    /** @var LocalTask $entity */
    $entity = $this->getEntity();

    $entity->unassign();
    $entity->save();

    $this->messenger()->addStatus(t('Unassigned from translation local task @label.', array('@label' => $entity->label())));

    $view = Views::getView('tmgmt_local_task_overview');
    $view->initDisplay();
    $form_state->setRedirect($view->getUrl()->getRouteName());
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc