summaryrefslogtreecommitdiffstats
path: root/apps/files_sharing/js/app.js
diff options
context:
space:
mode:
authorVincent Petry <pvince81@owncloud.com>2014-05-20 16:01:34 +0200
committerVincent Petry <pvince81@owncloud.com>2014-05-30 10:06:29 +0200
commitef59c69dc822c9ff69c564c41e0dfdce142b9cdf (patch)
treea99667ab22daba65cbbd77ac591fccac234f06eb /apps/files_sharing/js/app.js
parentfa32243d84e1801c379a5e8956ba2f3de236c718 (diff)
downloadnextcloud-server-ef59c69dc822c9ff69c564c41e0dfdce142b9cdf.tar.gz
nextcloud-server-ef59c69dc822c9ff69c564c41e0dfdce142b9cdf.zip
Distinguish legacy file actions from regular file actions
Legacy file actions are registered by legacy apps through window.FileActions.register(). These actions can only be used by the main file list ("all files") because legacy apps can only deal with a single list / container. New file actions of compatible apps must be registered through OCA.Files.fileActions. These will be used for other lists like the sharing overview. Fixed versions and sharing actions to use OCA.Files.fileActions, which makes them available in the sharing overview list.
Diffstat (limited to 'apps/files_sharing/js/app.js')
-rw-r--r--apps/files_sharing/js/app.js22
1 files changed, 14 insertions, 8 deletions
diff --git a/apps/files_sharing/js/app.js b/apps/files_sharing/js/app.js
index 57551237a34..7a71684f1a1 100644
--- a/apps/files_sharing/js/app.js
+++ b/apps/files_sharing/js/app.js
@@ -23,11 +23,11 @@ OCA.Sharing.App = {
$el,
{
scrollContainer: $('#app-content'),
- sharedWithUser: true
+ sharedWithUser: true,
+ fileActions: this._createFileActions()
}
);
- this._initFileActions(this._inFileList);
this._extendFileList(this._inFileList);
this._inFileList.appName = t('files_sharing', 'Shared with you');
this._inFileList.$el.find('#emptycontent').text(t('files_sharing', 'No files have been shared with you yet.'));
@@ -41,25 +41,31 @@ OCA.Sharing.App = {
$el,
{
scrollContainer: $('#app-content'),
- sharedWithUser: false
+ sharedWithUser: false,
+ fileActions: this._createFileActions()
}
);
- this._initFileActions(this._outFileList);
this._extendFileList(this._outFileList);
this._outFileList.appName = t('files_sharing', 'Shared with others');
this._outFileList.$el.find('#emptycontent').text(t('files_sharing', 'You haven\'t shared any files yet.'));
},
- _initFileActions: function(fileList) {
- var fileActions = OCA.Files.FileActions.clone();
+ _createFileActions: function() {
+ // inherit file actions from the files app
+ var fileActions = new OCA.Files.FileActions();
+ // note: not merging the legacy actions because legacy apps are not
+ // compatible with the sharing overview and need to be adapted first
+ fileActions.merge(OCA.Files.fileActions);
+
// when the user clicks on a folder, redirect to the corresponding
- // folder in the files app
+ // folder in the files app instead of opening it directly
fileActions.register('dir', 'Open', OC.PERMISSION_READ, '', function (filename, context) {
OCA.Files.App.setActiveView('files', {silent: true});
OCA.Files.App.fileList.changeDirectory(context.$file.attr('data-path') + '/' + filename, true, true);
});
- fileList.setFileActions(fileActions);
+ fileActions.setDefault('dir', 'Open');
+ return fileActions;
},
_extendFileList: function(fileList) {