⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 edit_shortanswer_form.php

📁 很棒的在线教学系统
💻 PHP
字号:
<?php  // $Id: edit_shortanswer_form.php,v 1.10.2.5 2009/02/19 01:09:33 tjhunt Exp $/** * Defines the editing form for the shortanswer question type. * * @copyright &copy; 2007 Jamie Pratt * @author Jamie Pratt me@jamiep.org * @license http://www.gnu.org/copyleft/gpl.html GNU Public License * @package questionbank * @subpackage questiontypes *//** * shortanswer editing form definition. */class question_edit_shortanswer_form extends question_edit_form {    /**     * Add question-type specific form fields.     *     * @param MoodleQuickForm $mform the form being built.     */    function definition_inner(&$mform) {        $menu = array(get_string('caseno', 'quiz'), get_string('caseyes', 'quiz'));        $mform->addElement('select', 'usecase', get_string('casesensitive', 'quiz'), $menu);        $mform->addElement('static', 'answersinstruct', get_string('correctanswers', 'quiz'), get_string('filloutoneanswer', 'quiz'));        $mform->closeHeaderBefore('answersinstruct');        $creategrades = get_grade_options();        $this->add_per_answer_fields($mform, get_string('answerno', 'qtype_shortanswer', '{no}'),                $creategrades->gradeoptions);    }    function set_data($question) {        if (isset($question->options)){            $answers = $question->options->answers;            if (count($answers)) {                $key = 0;                foreach ($answers as $answer){                    $default_values['answer['.$key.']'] = $answer->answer;                    $default_values['fraction['.$key.']'] = $answer->fraction;                    $default_values['feedback['.$key.']'] = $answer->feedback;                    $key++;                }            }            $default_values['usecase'] =  $question->options->usecase;            $question = (object)((array)$question + $default_values);        }        parent::set_data($question);    }    function validation($data, $files) {        $errors = parent::validation($data, $files);        $answers = $data['answer'];        $answercount = 0;        $maxgrade = false;        foreach ($answers as $key => $answer) {            $trimmedanswer = trim($answer);            if ($trimmedanswer !== ''){                $answercount++;                if ($data['fraction'][$key] == 1) {                    $maxgrade = true;                }            } else if ($data['fraction'][$key] != 0 || !html_is_blank($data['feedback'][$key])) {                $errors["answer[$key]"] = get_string('answermustbegiven', 'qtype_shortanswer');                $answercount++;            }        }        if ($answercount==0){            $errors['answer[0]'] = get_string('notenoughanswers', 'quiz', 1);        }        if ($maxgrade == false) {            $errors['fraction[0]'] = get_string('fractionsnomax', 'question');        }        return $errors;    }    function qtype() {        return 'shortanswer';    }}?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -