[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/question/behaviour/interactive/ -> renderer.php (source)

   1  <?php
   2  // This file is part of Moodle - http://moodle.org/
   3  //
   4  // Moodle is free software: you can redistribute it and/or modify
   5  // it under the terms of the GNU General Public License as published by
   6  // the Free Software Foundation, either version 3 of the License, or
   7  // (at your option) any later version.
   8  //
   9  // Moodle is distributed in the hope that it will be useful,
  10  // but WITHOUT ANY WARRANTY; without even the implied warranty of
  11  // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12  // GNU General Public License for more details.
  13  //
  14  // You should have received a copy of the GNU General Public License
  15  // along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
  16  
  17  /**
  18   * Renderer for outputting parts of a question belonging to the interactive
  19   * behaviour.
  20   *
  21   * @package    qbehaviour
  22   * @subpackage interactive
  23   * @copyright  2009 The Open University
  24   * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  25   */
  26  
  27  
  28  defined('MOODLE_INTERNAL') || die();
  29  
  30  
  31  /**
  32   * Interactive behaviour renderer.
  33   *
  34   * @copyright  2009 The Open University
  35   * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  36   */
  37  class qbehaviour_interactive_renderer extends qbehaviour_renderer {
  38      public function controls(question_attempt $qa, question_display_options $options) {
  39          if ($options->readonly === qbehaviour_interactive::READONLY_EXCEPT_TRY_AGAIN) {
  40              return '';
  41          }
  42          return $this->submit_button($qa, $options);
  43      }
  44  
  45      public function feedback(question_attempt $qa, question_display_options $options) {
  46          if (!$qa->get_state()->is_active() || !$options->readonly) {
  47              return '';
  48          }
  49  
  50          $attributes = array(
  51              'type' => 'submit',
  52              'id' => $qa->get_behaviour_field_name('tryagain'),
  53              'name' => $qa->get_behaviour_field_name('tryagain'),
  54              'value' => get_string('tryagain', 'qbehaviour_interactive'),
  55              'class' => 'submit btn',
  56          );
  57          if ($options->readonly !== qbehaviour_interactive::READONLY_EXCEPT_TRY_AGAIN) {
  58              $attributes['disabled'] = 'disabled';
  59          }
  60          $output = html_writer::empty_tag('input', $attributes);
  61          if (empty($attributes['disabled'])) {
  62              $this->page->requires->js_init_call('M.core_question_engine.init_submit_button',
  63                      array($attributes['id'], $qa->get_slot()));
  64          }
  65          return $output;
  66      }
  67  }


Generated: Thu Aug 11 10:00:09 2016 Cross-referenced by PHPXref 0.7.1