/** * @param string $fileurl The file's location on the user's computer * @param string $linkrename If file existed already, this will store the renamed file if the user chooses to rename * @param string $rootdir target directory of uploaded file */ function fm_upload_file($fileurl, $linkrename, $rootdir = 0, $groupid = 0) { global $USER; if ($linkrename != NULL) { // renaming file and adding the extension $newfilename = clean_filename($linkrename . stristr($fileurl['name'], '.')); } else { $newfilename = clean_filename($fileurl['name']); } $folder = get_record('fmanager_folders', 'id', $rootdir); $folderlocation = $folder ? "{$folder->path}{$folder->name}" : ''; if (valid_uploaded_file($fileurl)) { if (!$newfilename) { error(get_string('errwierdfilename', 'block_file_manager', $fileurl['name'])); } else { if ($groupid == 0 && !($dir = make_upload_directory(fm_get_user_dir_space() . $folderlocation))) { error(get_string('errnodir', 'block_file_manager')); } else { if ($groupid != 0 && !($dir = make_upload_directory(fm_get_group_dir_space($groupid) . "{$folder->path}{$folder->name}"))) { error(get_string('errnodir', 'block_file_manager')); } else { if (file_exists("{$dir}/{$newfilename}")) { $newfilename = ''; // flags the link_manage that file existed already } else { if (move_uploaded_file($fileurl['tmp_name'], "{$dir}/{$newfilename}")) { chmod("{$dir}/{$newfilename}", 0755); } else { error(get_string('errserversave', 'block_file_manager'), "view.php?id={$id}&groupid={$groupid}&rootdir={$rootdir}"); } } } } } } else { error(get_string('errwierdfilename', 'block_file_manager', $fileurl['name'])); } return $newfilename; }
function block_exabis_eportfolio_add_attachment($entry, $newfile, $id) { // $entry is a full entry record, including course and bookmark // $newfile is a full upload array from $_FILES // If successful, this function returns the name of the file global $CFG; if (empty($newfile['name'])) { return ""; } $newfile_name = clean_filename($newfile['name']); if (valid_uploaded_file($newfile)) { if (!$newfile_name) { notify("This file had a wierd filename and couldn't be uploaded"); } else { if (!($dir = block_exabis_eportfolio_file_area($entry))) { notify("Attachment could not be stored"); $newfile_name = ""; } else { if (move_uploaded_file($newfile['tmp_name'], "{$dir}/{$newfile_name}")) { chmod("{$dir}/{$newfile_name}", $CFG->directorypermissions); block_exabis_eportfolio_delete_old_attachments($entry, $newfile_name); } else { notify("An error happened while saving the file on the server"); $newfile_name = ""; } } } } else { $newfile_name = ""; } return $newfile_name; }