aboutsummaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorJulius Härtl <jus@bitgrid.net>2018-11-19 14:19:42 +0100
committerRoeland Jago Douma <roeland@famdouma.nl>2018-11-20 19:46:35 +0100
commitfb8aa31dbf961d23f508eecf1cb44c7dbbac1d70 (patch)
tree02b4da201381895dba656b9b61cf65f6a3a5cdf7 /apps
parent1bf742c462b238f441d1a6f115a3f489c98f8bb4 (diff)
downloadnextcloud-server-fb8aa31dbf961d23f508eecf1cb44c7dbbac1d70.tar.gz
nextcloud-server-fb8aa31dbf961d23f508eecf1cb44c7dbbac1d70.zip
Allow to hide download option for folders shared by link
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Diffstat (limited to 'apps')
-rw-r--r--apps/files/js/fileactions.js20
-rw-r--r--apps/files_sharing/js/public.js30
2 files changed, 41 insertions, 9 deletions
diff --git a/apps/files/js/fileactions.js b/apps/files/js/fileactions.js
index 5af558d77ba..10fedc88288 100644
--- a/apps/files/js/fileactions.js
+++ b/apps/files/js/fileactions.js
@@ -362,15 +362,17 @@
// remove previous
$tr.find('.action-menu').remove();
- var $el = this._renderInlineAction({
- name: 'menu',
- displayName: '',
- iconClass: 'icon-more',
- altText: t('files', 'Actions'),
- action: this._showMenuClosure
- }, false, context);
-
- $el.addClass('permanent');
+ if (this.actions.length > 0) {
+ var $el = this._renderInlineAction({
+ name: 'menu',
+ displayName: '',
+ iconClass: 'icon-more',
+ altText: t('files', 'Actions'),
+ action: this._showMenuClosure
+ }, false, context);
+
+ $el.addClass('permanent');
+ }
},
/**
diff --git a/apps/files_sharing/js/public.js b/apps/files_sharing/js/public.js
index c7169b3ce12..812da7ca5cb 100644
--- a/apps/files_sharing/js/public.js
+++ b/apps/files_sharing/js/public.js
@@ -50,6 +50,8 @@ OCA.Sharing.PublicApp = {
this.initialDir = $('#dir').val();
var token = $('#sharingToken').val();
+ var hideDownload = $('#hideDownload').val();
+
// file list mode ?
if ($el.find('#filestable').length) {
@@ -92,6 +94,9 @@ OCA.Sharing.PublicApp = {
]
}
);
+ if (hideDownload === 'true') {
+ this.fileList._allowSelection = false;
+ }
this.files = OCA.Files.Files;
this.files.initialize();
// TODO: move to PublicFileList.initialize() once
@@ -192,6 +197,27 @@ OCA.Sharing.PublicApp = {
return OC.generateUrl('/s/' + token + '/download') + '?' + OC.buildQueryString(params);
};
+ this.fileList._createRow = function(fileData) {
+ var $tr = OCA.Files.FileList.prototype._createRow.apply(this, arguments);
+ if (hideDownload === 'true') {
+ this.fileActions.currentFile = $tr.find('td');
+ var mime = this.fileActions.getCurrentMimeType();
+ var type = this.fileActions.getCurrentType();
+ var permissions = this.fileActions.getCurrentPermissions();
+ var action = this.fileActions.getDefault(mime, type, permissions);
+ if (action) {
+ // remove link href if there is a default action configured (disables downloading when trying to open in a new tab)
+ $tr.find('a.name').attr('href', '#');
+ }
+ delete this.fileActions.actions.all.Download;
+ }
+ return $tr;
+ };
+
+ this.fileList.isSelectedDownloadable = function () {
+ return hideDownload !== 'true';
+ };
+
this.fileList.getUploadUrl = function(fileName, dir) {
if (_.isUndefined(dir)) {
dir = this.getCurrentDirectory();
@@ -270,6 +296,10 @@ OCA.Sharing.PublicApp = {
e.preventDefault();
OC.redirect(FileList.getDownloadUrl());
});
+
+ if (hideDownload === 'true') {
+ this.fileList.$el.find('#headerSelection').remove();
+ }
}
$(document).on('click', '#directLink', function () {