|
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 00027 defined('MOODLE_INTERNAL') || die(); 00028 00029 require_once($CFG->libdir.'/formslib.php'); 00030 00031 00038 class quiz_add_random_form extends moodleform { 00039 00040 protected function definition() { 00041 global $CFG, $DB; 00042 $mform =& $this->_form; 00043 00044 $contexts = $this->_customdata; 00045 00046 //-------------------------------------------------------------------------------- 00047 $mform->addElement('header', 'categoryheader', 00048 get_string('randomfromexistingcategory', 'quiz')); 00049 00050 $mform->addElement('questioncategory', 'category', get_string('category'), 00051 array('contexts' => $contexts->all(), 'top' => false)); 00052 00053 $mform->addElement('checkbox', 'includesubcategories', '', get_string('recurse', 'quiz')); 00054 00055 $mform->addElement('submit', 'existingcategory', get_string('addrandomquestion', 'quiz')); 00056 00057 //-------------------------------------------------------------------------------- 00058 $mform->addElement('header', 'categoryheader', 00059 get_string('randomquestionusinganewcategory', 'quiz')); 00060 00061 $mform->addElement('text', 'name', get_string('name'), 'maxlength="254" size="50"'); 00062 $mform->setType('name', PARAM_MULTILANG); 00063 00064 $mform->addElement('questioncategory', 'parent', get_string('parentcategory', 'question'), 00065 array('contexts' => $contexts->all(), 'top' => true)); 00066 $mform->addHelpButton('parent', 'parentcategory', 'question'); 00067 00068 $mform->addElement('submit', 'newcategory', 00069 get_string('createcategoryandaddrandomquestion', 'quiz')); 00070 00071 //-------------------------------------------------------------------------------- 00072 $mform->addElement('cancel'); 00073 $mform->closeHeaderBefore('cancel'); 00074 00075 $mform->addElement('hidden', 'addonpage', 0, 'id="rform_qpage"'); 00076 $mform->setType('addonpage', PARAM_SEQUENCE); 00077 $mform->addElement('hidden', 'cmid', 0); 00078 $mform->setType('cmid', PARAM_INT); 00079 $mform->addElement('hidden', 'returnurl', 0); 00080 $mform->setType('returnurl', PARAM_LOCALURL); 00081 } 00082 00083 public function validation($fromform, $files) { 00084 $errors = parent::validation($fromform, $files); 00085 00086 if (!empty($fromform['newcategory']) && trim($fromform['name']) == '') { 00087 $errors['name'] = get_string('categorynamecantbeblank', 'question'); 00088 } 00089 00090 return $errors; 00091 } 00092 } 00093