From 447ca67d35bedc0265b90b63f324d8e22cf0814c Mon Sep 17 00:00:00 2001 From: toyomoyo Date: Wed, 20 Dec 2006 08:05:26 +0000 Subject: [PATCH] MDL-7861, adding new xhtml compatible import forms --- course/import/activities/import_form.php | 60 ++++++++++++++++++++++++ course/import/activities/index.php | 4 +- course/import/activities/mod.php | 42 +++++++---------- course/import/groups/import_form.php | 38 +++++++++++++++ course/import/groups/mod.php | 14 +++--- 5 files changed, 126 insertions(+), 32 deletions(-) create mode 100755 course/import/activities/import_form.php create mode 100755 course/import/groups/import_form.php diff --git a/course/import/activities/import_form.php b/course/import/activities/import_form.php new file mode 100755 index 0000000000..11eca53788 --- /dev/null +++ b/course/import/activities/import_form.php @@ -0,0 +1,60 @@ +libdir.'/formslib.php'); + +class activities_import_form_1 extends moodleform { + + function definition() { + + global $CFG; + $mform =& $this->_form; + $text = $this->_customdata['text']; + $options = $this->_customdata['options']; + $courseid = $this->_customdata['courseid']; + $mform->addElement('header', 'general', '');//fill in the data depending on page params + //later using set_defaults + $mform->addElement('select', 'fromcourse', $text, $options); + + // buttons + $submit_string = get_string('usethiscourse'); + $this->add_action_buttons(false, true, $submit_string); + + $mform->addElement('hidden', 'id'); + $mform->setType('id', PARAM_INT); + $mform->setConstants(array('id'=> $courseid)); + + } + + function validation($data) { + return true; + } + +} + +class activities_import_form_2 extends moodleform { + + function definition() { + + global $CFG; + $mform =& $this->_form; + $courseid = $this->_customdata['courseid']; + + $mform->addElement('header', 'general', '');//fill in the data depending on page params + //later using set_defaults + $mform->addElement('text', 'fromcoursesearch', get_string('searchcourses')); + + // buttons + $this->add_action_buttons(false, true, get_string('searchcourses')); + + $mform->addElement('hidden', 'id'); + $mform->setType('id', PARAM_INT); + $mform->setConstants(array('id'=> $courseid)); + + } + + function validation($data) { + return true; + } + +} +?> diff --git a/course/import/activities/index.php b/course/import/activities/index.php index 5bae0f1505..4c312d863e 100644 --- a/course/import/activities/index.php +++ b/course/import/activities/index.php @@ -22,7 +22,9 @@ require_login($course->id); $tocontext = get_context_instance(CONTEXT_COURSE, $id); - $fromcontext = get_context_instance(CONTEXT_COURSE, $fromcourse); + if ($fromcourse) { + $fromcontext = get_context_instance(CONTEXT_COURSE, $fromcourse); + } $syscontext = get_context_instance(CONTEXT_SYSTEM, SITEID); if (!has_capability('moodle/course:manageactivities', $tocontext)) { diff --git a/course/import/activities/mod.php b/course/import/activities/mod.php index 3230200722..69eeb7d11b 100644 --- a/course/import/activities/mod.php +++ b/course/import/activities/mod.php @@ -51,36 +51,31 @@ notify(get_string('courseimportnotaught')); return; // yay , this will pass control back to the file that included or required us. } - - $fm = '
'; - $submit = '
'; - - if (count($options) > 0) { - $table->data[] = array($fm.''.get_string('coursestaught').'', - choose_from_menu($options,"fromcourse","","choose","","0",true), - $submit); - } - - unset($options); - + + // quick forms + include_once('import_form.php'); + + $mform_post = new activities_import_form_1($CFG->wwwroot.'/course/import/activities/index.php', array('options'=>$options, 'courseid' => $course->id, 'text'=> get_string('coursestaught'))); + $mform_post ->display(); + + unset($options); $options = array(); + foreach ($cat_courses as $ccourse) { if ($ccourse->id != $course->id && $ccourse->id != SITEID) { $options[$ccourse->id] = $ccourse->fullname; } } $cat = get_record("course_categories","id",$course->category); - + if (count($options) > 0) { - $table->data[] = array($fm.''.get_string('coursescategory').' ('.$cat->name .')', - choose_from_menu($options,"fromcourse","","choose","","0",true), - $submit); + $mform_post = new activities_import_form_1($CFG->wwwroot.'/course/import/activities/index.php', array('options'=>$options, 'courseid' => $course->id, 'text' => get_string('coursescategory'))); + $mform_post ->display(); } if (!empty($creator)) { - $table->data[] = array($fm.''.get_string('searchcourses').'', - '', - ''); + $mform_post = new activities_import_form_2($CFG->wwwroot.'/course/import/activities/index.php', array('courseid' => $course->id)); + $mform_post ->display(); } if (!empty($fromcoursesearch) && !empty($creator)) { @@ -91,8 +86,7 @@ foreach ($courses as $scourse) { if ($course->id != $scourse->id) { $table->data[] = array('',$scourse->fullname, - '' - .get_string('usethiscourse')); + ''.get_string('usethiscourse').''); } } } @@ -100,7 +94,7 @@ $table->data[] = array('',get_string('noresults'),''); } } - - print_table($table); - + if (!empty($table)) { + print_table($table); + } ?> \ No newline at end of file diff --git a/course/import/groups/import_form.php b/course/import/groups/import_form.php new file mode 100755 index 0000000000..9c607032de --- /dev/null +++ b/course/import/groups/import_form.php @@ -0,0 +1,38 @@ +libdir.'/formslib.php'); + +class group_import_form extends moodleform { + + function definition() { + + global $CFG, $USER; + $mform =& $this->_form; + $maxuploadsize = $this->_customdata['maxuploadsize']; + $strimportgroups = get_string("importgroups"); + + $this->_upload_manager = new upload_manager('userfile', true, false, '', false, $maxuploadsize, true, true); + $this->set_max_file_size('', $maxuploadsize); + + $mform->addElement('header', 'general', '');//fill in the data depending on page params + //later using set_defaults + // buttons + + $mform->addElement('hidden', 'sesskey'); + $mform->setType('sesskey', PARAM_ALPHA); + $mform->setConstants(array('sesskey'=> $USER->sesskey)); + + $mform->addElement('file', 'userfile', ''); + $mform->setHelpButton('userfile', array('attachment', get_string('attachment', 'forum'), 'forum')); + + + $this->add_action_buttons(false, true, $strimportgroups); + + } + + function validation($data) { + return true; + } + +} +?> diff --git a/course/import/groups/mod.php b/course/import/groups/mod.php index 6e745979f2..ee960641ad 100644 --- a/course/import/groups/mod.php +++ b/course/import/groups/mod.php @@ -11,18 +11,18 @@ $strusers = get_string("users"); $strusersnew = get_string("usersnew"); $strimportgroups = get_string("importgroups"); - print_heading_with_help($strimportgroups, 'uploadgroups'); $maxuploadsize = get_max_upload_file_size(); echo '

'; print_simple_box_start('center','80%'); - echo '

'. - $strchoose.':'. - ''. - ''. - ''. - '

'; + + // use formslib + include_once('import_form.php'); + $mform_post = new group_import_form($CFG->wwwroot.'/course/import/groups/index.php?id='.$id, array('maxuploadsize'=>$maxuploadsize)); + $mform_post ->display(); + print_simple_box_end(); + echo '

'; ?> -- 2.39.5