function theme_quiz_jumper in Quiz 8.4
Same name and namespace in other branches
- 6.4 quiz.pages.inc \theme_quiz_jumper()
- 7 quiz.pages.inc \theme_quiz_jumper()
- 7.4 quiz.pages.inc \theme_quiz_jumper()
@todo Please document this function.
See also
1 theme call to theme_quiz_jumper()
- theme_quiz_progress in ./
quiz.pages.inc - Theme a progress indicator for use during a quiz.
File
- ./
quiz.pages.inc, line 1049 - Page callback file for the quiz module.
Code
function theme_quiz_jumper($variables) {
$current = $variables['current'];
$num_questions = $variables['num_questions'];
$output = '<select name="quiz-jumper" class="form-select" id="quiz-jumper">';
for ($i = 1; $i <= $num_questions; $i++) {
$extra = $i == $current ? ' selected="selected"' : '';
$output .= '<option value="' . $i . '"' . $extra . '>' . $i . '</option>';
}
$output .= '</select><span id="quiz-jumper-no-js">' . $current . '</span>';
drupal_add_js('
(function ($) {
Drupal.behaviors.quizJumper = {
attach: function(context, settings) {
$("#quiz-jumper:not(.quizJumper-processed)", context).show().addClass("quizJumper-processed").change(function(){
$("[name=jump_to_question]").val($(this).val());
$("#edit-submit").trigger("click");
});
$("#quiz-jumper-no-js:not(.quizJumper-processed)").hide().addClass("quizJumper-processed");
}
};
})(jQuery);
', array(
'type' => 'inline',
'scope' => JS_DEFAULT,
));
return $output;
}