|
Moodle
2.2.1
http://www.collinsharper.com
|
00001 <?php 00002 // This file is part of Moodle - http://moodle.org/ 00003 // 00004 // Moodle is free software: you can redistribute it and/or modify 00005 // it under the terms of the GNU General Public License as published by 00006 // the Free Software Foundation, either version 3 of the License, or 00007 // (at your option) any later version. 00008 // 00009 // Moodle is distributed in the hope that it will be useful, 00010 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 // GNU General Public License for more details. 00013 // 00014 // You should have received a copy of the GNU General Public License 00015 // along with Moodle. If not, see <http://www.gnu.org/licenses/>. 00016 00028 defined('MOODLE_INTERNAL') || die(); 00029 00030 00037 class qbehaviour_interactive_renderer extends qbehaviour_renderer { 00038 public function controls(question_attempt $qa, question_display_options $options) { 00039 return $this->submit_button($qa, $options); 00040 } 00041 00042 public function feedback(question_attempt $qa, question_display_options $options) { 00043 if (!$qa->get_state()->is_active() || !$options->readonly) { 00044 return ''; 00045 } 00046 00047 $attributes = array( 00048 'type' => 'submit', 00049 'id' => $qa->get_behaviour_field_name('tryagain'), 00050 'name' => $qa->get_behaviour_field_name('tryagain'), 00051 'value' => get_string('tryagain', 'qbehaviour_interactive'), 00052 'class' => 'submit btn', 00053 ); 00054 if ($options->readonly !== qbehaviour_interactive::READONLY_EXCEPT_TRY_AGAIN) { 00055 $attributes['disabled'] = 'disabled'; 00056 } 00057 $output = html_writer::empty_tag('input', $attributes); 00058 if (empty($attributes['disabled'])) { 00059 $this->page->requires->js_init_call('M.core_question_engine.init_submit_button', 00060 array($attributes['id'], $qa->get_slot())); 00061 } 00062 return $output; 00063 } 00064 }