You are here

function QuizQuestionsForm::_quiz_add_revision_checkbox in Quiz 6.x

Same name and namespace in other branches
  1. 8.6 src/Form/QuizQuestionsForm.php \Drupal\quiz\Form\QuizQuestionsForm::_quiz_add_revision_checkbox()
  2. 8.5 src/Form/QuizQuestionsForm.php \Drupal\quiz\Form\QuizQuestionsForm::_quiz_add_revision_checkbox()

Adds checkbox for creating new revision. Checks it by default if answers exists.

Parameters

$form: FAPI form(array).

$quiz: Quiz node(object).

1 call to QuizQuestionsForm::_quiz_add_revision_checkbox()
QuizQuestionsForm::buildForm in src/Form/QuizQuestionsForm.php
Handles "manage questions" tab.

File

src/Form/QuizQuestionsForm.php, line 309

Class

QuizQuestionsForm
Form to manage questions in a quiz.

Namespace

Drupal\quiz\Form

Code

function _quiz_add_revision_checkbox(&$form, $quiz) {
  $config = $this
    ->config('quiz.settings');
  if ($quiz
    ->hasAttempts()) {
    $results_url = Url::fromRoute('view.quiz_results.list', [
      'quiz' => $quiz
        ->id(),
    ])
      ->toString();
    $quiz_url = Url::fromRoute('entity.quiz.edit_form', [
      'quiz' => $quiz
        ->id(),
    ], [
      'query' => \Drupal::destination()
        ->getAsArray(),
    ])
      ->toString();
    $form['revision_help'] = [
      '#markup' => t('This quiz has been answered. To make changes to the quiz you must either <a href="@results_url">delete all results</a> or <a href="@quiz_url">create a new revision</a>.', [
        '@results_url' => $results_url,
        '@quiz_url' => $quiz_url,
      ]),
    ];
    $form['actions']['submit']['#access'] = FALSE;
  }
}