$maxUploadFilesize = OCP\Util::humanFileSize($setMaxSize);
}
}
- if(isset($_POST['maxZipInputSize'])) {
- $maxZipInputSize=$_POST['maxZipInputSize'];
- OCP\Config::setSystemValue('maxZipInputSize', OCP\Util::computerFileSize($maxZipInputSize));
- }
- if(isset($_POST['submitFilesAdminSettings'])) {
- OCP\Config::setSystemValue('allowZipDownload', isset($_POST['allowZipDownload']));
- }
}
-$maxZipInputSizeDefault = OCP\Util::computerFileSize('800 MB');
-$maxZipInputSize = OCP\Util::humanFileSize(OCP\Config::getSystemValue('maxZipInputSize', $maxZipInputSizeDefault));
-$allowZipDownload = intval(OCP\Config::getSystemValue('allowZipDownload', true));
OCP\App::setActiveNavigationEntry( "files_administration" );
// max possible makes only sense on a 32 bit system
$tmpl->assign( 'displayMaxPossibleUploadSize', PHP_INT_SIZE===4);
$tmpl->assign( 'maxPossibleUploadSize', OCP\Util::humanFileSize(PHP_INT_MAX));
-$tmpl->assign( 'allowZipDownload', $allowZipDownload);
-$tmpl->assign( 'maxZipInputSize', $maxZipInputSize);
return $tmpl->fetchPage();
--- /dev/null
+<?php
+
+// this drops the keys below, because they aren't needed anymore
+// core related
+if (version_compare(\OC_Config::getValue('version', '0.0.0'), '7.0.0', '<')) {
+ \OC_Config::deleteKey('allowZipDownload');
+ \OC_Config::deleteKey('maxZipInputSize');
+}
$tmpl->assign("encryptionInitStatus", $encryptionInitStatus);
$tmpl->assign('appNavigation', $nav);
$tmpl->assign('appContents', $contentItems);
-$tmpl->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true)));
$tmpl->printPage();
// To get rid of onClick()
switchPublicFolder();
});
-
- $('#allowZipDownload').bind('change', function() {
- if($('#allowZipDownload').attr('checked')) {
- $('#maxZipInputSize').removeAttr('disabled');
- } else {
- $('#maxZipInputSize').attr('disabled', 'disabled');
- }
- });
});
});
this.setDefault('dir', 'Open');
- var downloadScope;
- if ($('#allowZipDownload').val() == 1) {
- downloadScope = 'all';
- } else {
- downloadScope = 'file';
- }
- this.register(downloadScope, 'Download', OC.PERMISSION_READ, function () {
+ this.register('all', 'Download', OC.PERMISSION_READ, function () {
return OC.imagePath('core', 'actions/download');
}, function (filename, context) {
var dir = context.dir || context.fileList.getCurrentDirectory();
$tmpl = new OCP\Template('files', 'list', '');
$tmpl->assign('uploadLimit', $uploadLimit); // PHP upload limit
$tmpl->assign('publicUploadEnabled', $publicUploadEnabled);
-$tmpl->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true)));
$tmpl->printPage();
<?php endif;?>
<br/>
<?php endif;?>
- <input type="checkbox" name="allowZipDownload" id="allowZipDownload" value="1"
- title="<?php p($l->t( 'Needed for multi-file and folder downloads.' )); ?>"
- <?php if ($_['allowZipDownload']): ?> checked="checked"<?php endif; ?> />
- <label for="allowZipDownload"><?php p($l->t( 'Enable ZIP-download' )); ?></label><br/>
-
- <input type="text" name="maxZipInputSize" id="maxZipInputSize" style="width:180px;" value='<?php p($_['maxZipInputSize']) ?>'
- title="<?php p($l->t( '0 is unlimited' )); ?>"
- <?php if (!$_['allowZipDownload']): ?> disabled="disabled"<?php endif; ?> /><br />
- <em><?php p($l->t( 'Maximum input size for ZIP files' )); ?> </em><br />
-
<input type="hidden" value="<?php p($_['requesttoken']); ?>" name="requesttoken" />
<input type="submit" name="submitFilesAdminSettings" id="submitFilesAdminSettings"
value="<?php p($l->t( 'Save' )); ?>"/>
<label for="select_all_files"></label>
<a class="name sort columntitle" data-sort="name"><span><?php p($l->t( 'Name' )); ?></span><span class="sort-indicator"></span></a>
<span id="selectedActionsList" class="selectedActions">
- <?php if($_['allowZipDownload']) : ?>
- <a href="" class="download">
- <img class="svg" alt="Download"
- src="<?php print_unescaped(OCP\image_path("core", "actions/download.svg")); ?>" />
- <?php p($l->t('Download'))?>
- </a>
- <?php endif; ?>
+ <a href="" class="download">
+ <img class="svg" alt="Download"
+ src="<?php print_unescaped(OCP\image_path("core", "actions/download.svg")); ?>" />
+ <?php p($l->t('Download'))?>
+ </a>
</span>
</div>
</th>
<tfoot>
</tfoot>
</table>
-<input type="hidden" name="allowZipDownload" id="allowZipDownload" value="<?php p($_['allowZipDownload']); ?>" />
<input type="hidden" name="dir" id="dir" value="" />
<div id="editor"></div><!-- FIXME Do not use this div in your app! It is deprecated and will be removed in the future! -->
<div id="uploadsize-message" title="<?php p($l->t('Upload too large'))?>">
$folder->assign('uploadMaxHumanFilesize', OCP\Util::humanFileSize($maxUploadFilesize));
$folder->assign('freeSpace', $freeSpace);
$folder->assign('uploadLimit', $uploadLimit); // PHP upload limit
- $folder->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true)));
$folder->assign('usedSpacePercent', 0);
$folder->assign('trash', false);
$tmpl->assign('folder', $folder->fetchPage());
- $allowZip = OCP\Config::getSystemValue('allowZipDownload', true);
- $tmpl->assign('allowZipDownload', intval($allowZip));
- $tmpl->assign('showDownloadButton', intval($allowZip));
$tmpl->assign('downloadURL',
OCP\Util::linkToPublic('files') . $urlLinkIdentifiers . '&download&path=' . urlencode($getPath));
} else {
- $tmpl->assign('showDownloadButton', true);
$tmpl->assign('dir', $dir);
// Show file preview if viewer is available
src="<?php print_unescaped(image_path('', 'logo-wide.svg')); ?>" alt="<?php p($theme->getName()); ?>" /></a>
<div id="logo-claim" style="display:none;"><?php p($theme->getLogoClaim()); ?></div>
<div class="header-right">
- <?php if ($_['showDownloadButton']): ?>
<a href="<?php p($_['downloadURL']); ?>" id="download" class="button">
<img class="svg" alt="" src="<?php print_unescaped(OCP\image_path("core", "actions/download.svg")); ?>"/>
<?php p($l->t('Download'))?>
</a>
- <?php endif ?>
</div>
</div></header>
<div id="content">
$xsendfile = false;
}
} else {
- self::validateZipDownload($dir, $files);
$zip = new ZipStreamer(false);
}
OC_Util::obEnd();
}
}
- /**
- * checks if the selected files are within the size constraint. If not, outputs an error page.
- *
- * @param string $dir
- * @param array|string $files
- */
- static function validateZipDownload($dir, $files) {
- if (!OC_Config::getValue('allowZipDownload', true)) {
- $l = OC_L10N::get('lib');
- header("HTTP/1.0 409 Conflict");
- OC_Template::printErrorPage(
- $l->t('ZIP download is turned off.'),
- $l->t('Files need to be downloaded one by one.')
- . '<br/><a href="'.OCP\Util::linkTo('files', 'index.php', array('dir' => $dir)).'">' . $l->t('Back to Files') . '</a>'
- );
- exit;
- }
-
- $zipLimit = OC_Config::getValue('maxZipInputSize', OC_Helper::computerFileSize('800 MB'));
- if ($zipLimit > 0) {
- $totalsize = 0;
- if(!is_array($files)) {
- $files = array($files);
- }
- foreach ($files as $file) {
- $path = $dir . '/' . $file;
- if(\OC\Files\Filesystem::is_dir($path)) {
- foreach (\OC\Files\Filesystem::getDirectoryContent($path) as $i) {
- $totalsize += $i['size'];
- }
- } else {
- $totalsize += \OC\Files\Filesystem::filesize($path);
- }
- }
- if ($totalsize > $zipLimit) {
- $l = OC_L10N::get('lib');
- header("HTTP/1.0 409 Conflict");
- OC_Template::printErrorPage(
- $l->t('Selected files too large to generate zip file.'),
- $l->t('Please download the files separately in smaller chunks or kindly ask your administrator.')
- . '<br/><a href="'.OCP\Util::linkTo('files', 'index.php', array('dir' => $dir)).'">' . $l->t('Back to Files') . '</a>'
- );
- exit;
- }
- }
- }
-
/**
* set the maximum upload size limit for apache hosts using .htaccess
*