예제 #1
0
 /**
  * Generate the display of the formulation part of the question. This is the
  * area that contains the quetsion text, and the controls for students to
  * input their answers. Some question types also embed feedback, for
  * example ticks and crosses, in this area.
  *
  * @param question_attempt $qa the question attempt to display.
  * @param qbehaviour_renderer $behaviouroutput the renderer to output the behaviour
  *      specific parts.
  * @param qtype_renderer $qtoutput the renderer to output the question type
  *      specific parts.
  * @param question_display_options $options controls what should and should not be displayed.
  * @return HTML fragment.
  */
 protected function formulation(question_attempt $qa, qbehaviour_renderer $behaviouroutput, qtype_renderer $qtoutput, question_display_options $options)
 {
     $output = '';
     $output .= html_writer::empty_tag('input', array('type' => 'hidden', 'name' => $qa->get_control_field_name('sequencecheck'), 'value' => $qa->get_sequence_check_count()));
     $output .= $qtoutput->formulation_and_controls($qa, $options);
     if ($options->clearwrong) {
         $output .= $qtoutput->clear_wrong($qa);
     }
     $output .= html_writer::nonempty_tag('div', $behaviouroutput->controls($qa, $options), array('class' => 'im-controls'));
     return $output;
 }