libdir.'/formslib.php'); class question_import_form extends moodleform { function definition() { global $COURSE; $mform =& $this->_form; $defaultcategory = $this->_customdata['defaultcategory']; $contexts = $this->_customdata['contexts']; //-------------------------------------------------------------------------------- $mform->addElement('header','fileformat', get_string('fileformat','quiz')); $fileformatnames = get_import_export_formats('import'); $radioarray = array(); foreach ($fileformatnames as $id => $fileformatname) { $radioarray[] = &MoodleQuickForm::createElement('radio','format','',$fileformatname,$id ); } $mform->addGroup($radioarray,'format', '', array('
'), false); $mform->addRule('format', null, 'required', null, 'client' ); $mform->setHelpButton('format', array('import', get_string('importquestions', 'quiz'), 'quiz')); //-------------------------------------------------------------------------------- $mform->addElement('header','general', get_string('general', 'form')); $mform->addElement('questioncategory', 'category', get_string('category','quiz'), compact('contexts')); $mform->setDefault('category', $defaultcategory); $mform->setHelpButton('category', array('importcategory', get_string('importcategory','quiz'), 'quiz')); $categorygroup = array(); $categorygroup[] =& $mform->createElement('checkbox', 'catfromfile', '', get_string('getcategoryfromfile', 'question')); $categorygroup[] =& $mform->createElement('checkbox', 'contextfromfile', '', get_string('getcontextfromfile', 'question')); $mform->addGroup($categorygroup, 'categorygroup', '', '', false); $mform->disabledIf('categorygroup', 'catfromfile', 'notchecked'); $mform->setDefault('catfromfile', 1); $mform->setDefault('contextfromfile', 1); $matchgrades = array(); $matchgrades['error'] = get_string('matchgradeserror','quiz'); $matchgrades['nearest'] = get_string('matchgradesnearest','quiz'); $mform->addElement('select', 'matchgrades', get_string('matchgrades','quiz'), $matchgrades); $mform->setHelpButton('matchgrades', array('matchgrades', get_string('matchgrades','quiz'), 'quiz')); $mform->setDefault('matchgrades', 'error'); $mform->addElement('selectyesno', 'stoponerror', get_string('stoponerror', 'quiz')); $mform->setDefault('stoponerror', 1); $mform->setHelpButton('stoponerror', array('stoponerror', get_string('stoponerror', 'quiz'), 'quiz')); //-------------------------------------------------------------------------------- $mform->addElement('header', 'importfileupload', get_string('importfileupload','quiz')); $this->set_upload_manager(new upload_manager('newfile', true, false, $COURSE, false, 0, false, true, false)); $mform->addElement('file', 'newfile', get_string('upload')); //-------------------------------------------------------------------------------- $mform->addElement('submit', 'submitbutton', get_string('uploadthisfile')); //-------------------------------------------------------------------------------- if (has_capability('moodle/course:managefiles', get_context_instance(CONTEXT_COURSE, $COURSE->id))){ $mform->addElement('header', 'importfilearea', get_string('importfilearea','quiz')); $mform->addElement('choosecoursefile', 'choosefile', get_string('choosefile','quiz')); //-------------------------------------------------------------------------------- $mform->addElement('submit', 'submitbutton', get_string('importfromthisfile','quiz')); } //-------------------------------------------------------------------------------- $mform->addElement('static', 'dummy', ''); $mform->closeHeaderBefore('dummy'); } function get_importfile_name(){ if ($this->is_submitted() and $this->is_validated()) { // return the temporary filename to process return $this->_upload_manager->files['newfile']['tmp_name']; }else{ return NULL; } } function get_importfile_realname(){ if ($this->is_submitted() and $this->is_validated()) { // return the temporary filename to process return $this->_upload_manager->files['newfile']['name']; }else{ return NULL; } } } ?>