MDL-9380 Adding a Resource of Type directory leads to SQL errors, patch by Andrew Schmadeke

This commit is contained in:
skodak
2007-05-15 20:55:21 +00:00
parent 7bda2db46d
commit bf92014116
+38 -6
View File
@@ -6,6 +6,23 @@ function resource_directory($cmid=0) {
parent::resource_base($cmid);
}
function add_instance($resource) {
$this->_postprocess($resource);
return parent::add_instance($resource);
}
function update_instance($resource) {
$this->_postprocess($resource);
return parent::update_instance($resource);
}
function _postprocess(&$resource) {
if($resource->reference=='0')
$resource->reference = '';
$resource->popup = '';
$resource->alltext = '';
}
function display() {
global $CFG;
@@ -14,13 +31,13 @@ function display() {
parent::display();
/// Set up some shorthand variables
$cm = $this->cm;
$cm = $this->cm;
$course = $this->course;
$resource = $this->resource;
$resource = $this->resource;
require_once($CFG->libdir.'/filelib.php');
$subdir = optional_param('subdir','', PARAM_PATH);
$subdir = optional_param('subdir','', PARAM_PATH);
$resource->reference = clean_param($resource->reference, PARAM_PATH);
$formatoptions = new object();
@@ -150,19 +167,34 @@ function setup($form) {
global $CFG;
parent::setup($form);
$rawdirs = get_directory_list("$CFG->dataroot/{$this->course->id}", array($CFG->moddata, 'backupdata'), true, true, false);
$dirs = array();
foreach ($rawdirs as $rawdir) {
$dirs[$rawdir] = $rawdir;
}
include("$CFG->dirroot/mod/resource/type/directory/directory.html");
parent::setup_end();
}
function setup_elements(&$mform) {
global $CFG;
$rawdirs = get_directory_list($CFG->dataroot.'/'.$this->course->id, array($CFG->moddata, 'backupdata'), true, true, false);
$dirs = array();
$dirs[0]=get_string('maindirectory', 'resource');
foreach ($rawdirs as $rawdir) {
$dirs[$rawdir] = $rawdir;
}
$mform->addElement('select', 'reference', get_string('resourcetypedirectory', 'resource'), $dirs);
$mform->setDefault('windowpopup', 0);
}
?>
}
?>