Merge pull request #10700 from nextcloud/fix/10516/sharepermissions

Fix share dialog sidebar in share views
This commit is contained in:
Morris Jobke 2018-08-20 17:14:12 +02:00 committed by GitHub
commit 6d749bf021
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 6 additions and 23 deletions

View file

@ -166,24 +166,7 @@
},
updateRow: function($tr, fileInfo, options) {
if(!fileInfo instanceof OCA.Sharing.SharedFileInfo) {
// recycle SharedFileInfo values if something tries to overwrite it
var oldModel = this.getModelForFile($tr);
if(_.isUndefined(fileInfo.recipientData) && oldModel.recipientData) {
fileInfo.recipientData = oldModel.recipientData;
}
if(_.isUndefined(fileInfo.recipients) && oldModel.recipientData) {
fileInfo.recipientData = oldModel.recipientData;
}
if(_.isUndefined(fileInfo.shares) && oldModel.shares) {
fileInfo.shares = oldModel.shares;
}
if(_.isUndefined(fileInfo.shareOwner) && oldModel.shareOwner) {
fileInfo.shareOwner = oldModel.shareOwner;
}
}
OCA.Files.FileList.prototype._createRow.updateRow(this, arguments);
// no-op, suppress re-rendering
},
reload: function() {
@ -328,11 +311,11 @@
* Converts the OCS API share response data to a file info
* list
* @param {Array} data OCS API share array
* @param {bool} sharedWithUser
* @return {Array.<OCA.Sharing.SharedFileInfo>} array of shared file info
*/
_makeFilesFromShares: function(data, sharedWithUser) {
/* jshint camelcase: false */
var self = this;
var files = data;
if (this._linksOnly) {
@ -447,8 +430,8 @@
// array of sorted names
data.mountType = 'shared';
delete data.recipientsCount;
if (self._sharedWithUser) {
// only for outgoing shres
if (sharedWithUser) {
// only for outgoing shares
delete data.shareTypes;
} else {
data.shareTypes = _.keys(data.shareTypes);

View file

@ -777,7 +777,7 @@
return {};
}
var permissions = this.get('possiblePermissions');
var permissions = this.fileInfoModel.get('permissions');
if(!_.isUndefined(data.reshare) && !_.isUndefined(data.reshare.permissions) && data.reshare.uid_owner !== OC.currentUser) {
permissions = permissions & data.reshare.permissions;
}

View file

@ -345,7 +345,7 @@ describe('OC.Share.ShareItemModel', function() {
}]));
fetchSharesDeferred.resolve(makeOcsResponse([]));
model.set('possiblePermissions', OC.PERMISSION_READ);
model.fileInfoModel.set('permissions', OC.PERMISSION_READ);
model.fetch();
// no resharing allowed