Merge branch 'MDL-32639-master' of git://github.com/FMCorz/moodle

This commit is contained in:
Dan Poltawski
2013-01-08 14:46:14 +08:00
7 changed files with 62 additions and 33 deletions
+19 -6
View File
@@ -463,23 +463,36 @@ function file_rewrite_pluginfile_urls($text, $file, $contextid, $component, $fil
* @global stdClass $CFG
* @global stdClass $USER
* @param int $draftitemid the draft area item id.
* @param string $filepath path to the directory from which the information have to be retrieved.
* @return array with the following entries:
* 'filecount' => number of files in the draft area.
* 'filesize' => total size of the files in the draft area.
* 'foldercount' => number of folders in the draft area.
* (more information will be added as needed).
*/
function file_get_draft_area_info($draftitemid) {
function file_get_draft_area_info($draftitemid, $filepath = '/') {
global $CFG, $USER;
$usercontext = context_user::instance($USER->id);
$fs = get_file_storage();
$results = array();
$results = array(
'filecount' => 0,
'foldercount' => 0,
'filesize' => 0
);
// The number of files
$draftfiles = $fs->get_area_files($usercontext->id, 'user', 'draft', $draftitemid, 'id', false);
$results['filecount'] = count($draftfiles);
$results['filesize'] = 0;
if ($filepath != '/') {
$draftfiles = $fs->get_directory_files($usercontext->id, 'user', 'draft', $draftitemid, $filepath, true, true);
} else {
$draftfiles = $fs->get_area_files($usercontext->id, 'user', 'draft', $draftitemid, 'id', true);
}
foreach ($draftfiles as $file) {
if ($file->is_directory()) {
$results['foldercount'] += 1;
} else {
$results['filecount'] += 1;
}
$results['filesize'] += $file->get_filesize();
}