MDL-13766, filemanager, don't download empty draft area

This commit is contained in:
Dongsheng Cai 2010-05-03 06:36:23 +00:00
parent 63c9d714b8
commit 7210e88714
4 changed files with 15 additions and 4 deletions

View File

@ -154,6 +154,11 @@ case 'zip':
case 'downloaddir':
$zipper = new zip_packer();
$fs = get_file_storage();
$draftarea = file_get_draft_area_info($itemid);
if ($draftarea['filecount'] == 0) {
echo json_encode(false);
die;
}
$stored_file = $fs->get_file($user_context->id, $filearea, $itemid, $filepath, '.');
if ($filepath === '/') {

View File

@ -73,6 +73,7 @@ $string['disabled'] = 'Disabled';
$string['download'] = 'Download';
$string['downloadfolder'] = 'Download this folder';
$string['downloadsucc'] = 'The file has been downloaded successfully';
$string['draftareanofiles'] = 'Cannot be downloaed because there is no files attached';
$string['editrepositoryinstance'] = 'Edit repository instance';
$string['emptylist'] = 'Empty result';
$string['emptytype'] = 'Cannot create repository type: type name is empty';

View File

@ -219,10 +219,14 @@ M.form_filemanager.init = function(Y, options) {
action: 'downloaddir',
scope: scope,
callback: function(id, obj, args) {
scope.refresh(obj.filepath);
var win = window.open(obj.fileurl, 'fm-download-folder');
if (!win) {
alert(M.str.repository.popupblockeddownload);
if (obj) {
scope.refresh(obj.filepath);
var win = window.open(obj.fileurl, 'fm-download-folder');
if (!win) {
alert(M.str.repository.popupblockeddownload);
}
} else {
alert(M.str.repository.draftareanofiles);
}
}
});

View File

@ -2754,6 +2754,7 @@ function print_filemanager($options, $return = false) {
$PAGE->requires->string_for_js('confirmdeletefile', 'repository');
$PAGE->requires->string_for_js('nopathselected', 'repository');
$PAGE->requires->string_for_js('popupblockeddownload', 'repository');
$PAGE->requires->string_for_js('draftareanofiles', 'repository');
$PAGE->requires->string_for_js('path', 'moodle');
// language strings
$straddfile = get_string('add', 'repository') . '...';