diff options
author | Arthur Schiwon <blizzz@arthur-schiwon.de> | 2017-11-21 12:45:57 +0100 |
---|---|---|
committer | Arthur Schiwon <blizzz@arthur-schiwon.de> | 2017-11-23 13:32:14 +0100 |
commit | 077381c7b3aa220253a18ce3bbb946e4a46d8213 (patch) | |
tree | 8a4ca1104135a465b63f5a50738f9e225fa3fbfa /apps/files_sharing/js | |
parent | 9d95391ff14a1c753e8fda4ecaacc007572552f4 (diff) | |
download | nextcloud-server-077381c7b3aa220253a18ce3bbb946e4a46d8213.tar.gz nextcloud-server-077381c7b3aa220253a18ce3bbb946e4a46d8213.zip |
rip out obsolete recipientsDisplayName
also needs tests adjustements, and this also brings in natural sorting
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
Diffstat (limited to 'apps/files_sharing/js')
-rw-r--r-- | apps/files_sharing/js/share.js | 40 | ||||
-rw-r--r-- | apps/files_sharing/js/sharedfilelist.js | 17 |
2 files changed, 16 insertions, 41 deletions
diff --git a/apps/files_sharing/js/share.js b/apps/files_sharing/js/share.js index 9b794ca2d13..aa0803c491b 100644 --- a/apps/files_sharing/js/share.js +++ b/apps/files_sharing/js/share.js @@ -52,8 +52,7 @@ tr.attr('data-permissions', fileData.permissions | OC.PERMISSION_UPDATE); } } - if (fileData.recipientsDisplayName) { - tr.attr('data-share-recipients', fileData.recipientsDisplayName); + if (fileData.recipientData && !_.isEmpty(fileData.recipientData)) { tr.attr('data-share-recipient-data', JSON.stringify(fileData.recipientData)); } if (fileData.shareTypes) { @@ -78,8 +77,6 @@ fileInfo.shares.push({expiration: expirationTimestamp}); } - fileInfo.recipientsDisplayName = $el.attr('data-share-recipients') || undefined; - return fileInfo; }; @@ -219,14 +216,12 @@ var recipients = _.pluck(shareModel.get('shares'), 'share_with_displayname'); // note: we only update the data attribute because updateIcon() if (recipients.length) { - $tr.attr('data-share-recipients', OCA.Sharing.Util.formatRecipients(recipients)); var recipientData = _.mapObject(shareModel.get('shares'), function (share) { return {shareWith: share.share_with, shareWithDisplayName: share.share_with_displayname}; }); $tr.attr('data-share-recipient-data', JSON.stringify(recipientData)); } else { - $tr.removeAttr('data-share-recipients'); $tr.removeAttr('data-share-recipient-data'); } }, @@ -235,15 +230,15 @@ * Update the file action share icon for the given file * * @param $tr file element of the file to update - * @param {bool} hasUserShares true if a user share exists - * @param {bool} hasLinkShare true if a link share exists + * @param {boolean} hasUserShares true if a user share exists + * @param {boolean} hasLinkShare true if a link share exists * - * @return {bool} true if the icon was set, false otherwise + * @return {boolean} true if the icon was set, false otherwise */ _updateFileActionIcon: function($tr, hasUserShares, hasLinkShare) { // if the statuses are loaded already, use them for the icon // (needed when scrolling to the next page) - if (hasUserShares || hasLinkShare || $tr.attr('data-share-recipients') || $tr.attr('data-share-owner')) { + if (hasUserShares || hasLinkShare || $tr.attr('data-share-recipient-data') || $tr.attr('data-share-owner')) { OC.Share.markFileAsShared($tr, true, hasLinkShare); return true; } @@ -251,31 +246,6 @@ }, /** - * Formats a recipients array to be displayed. - * The first four recipients will be shown and the - * other ones will be shown as "+x" where "x" is the number of - * remaining recipients. - * - * @param {Array.<String>} recipients recipients array - * @param {int} count optional total recipients count (in case the array was shortened) - * @return {String} formatted recipients display text - */ - formatRecipients: function(recipients, count) { - var maxRecipients = 4; - var text; - if (!_.isNumber(count)) { - count = recipients.length; - } - // TODO: use natural sort - recipients = _.first(recipients, maxRecipients).sort(); - text = recipients.join(', '); - if (count > maxRecipients) { - text += ', +' + (count - maxRecipients); - } - return text; - }, - - /** * @param {Array} fileData * @returns {String} */ diff --git a/apps/files_sharing/js/sharedfilelist.js b/apps/files_sharing/js/sharedfilelist.js index fb4909e764e..ad6f70a6f1c 100644 --- a/apps/files_sharing/js/sharedfilelist.js +++ b/apps/files_sharing/js/sharedfilelist.js @@ -375,11 +375,6 @@ // convert the recipients map to a flat // array of sorted names data.mountType = 'shared'; - data.recipients = _.keys(data.recipients); - data.recipientsDisplayName = OCA.Sharing.Util.formatRecipients( - data.recipients, - data.recipientsCount - ); delete data.recipientsCount; if (self._sharedWithUser) { // only for outgoing shres @@ -413,10 +408,19 @@ * @property {int} stime share timestamp in milliseconds * @property {String} [targetDisplayName] display name of the recipient * (only when shared with others) + * @property {String} [targetShareWithId] id of the recipient * */ /** + * Recipient attributes + * + * @typedef {Object} OCA.Sharing.RecipientInfo + * @property {String} shareWith the id of the recipient + * @property {String} shareWithDisplayName the display name of the recipient + */ + + /** * Shared file info attributes. * * @typedef {OCA.Files.FileInfo} OCA.Sharing.SharedFileInfo @@ -427,7 +431,8 @@ * @property {String} shareOwner name of the share owner * @property {Array.<String>} recipients name of the first 4 recipients * (this is mostly for display purposes) - * @property {String} recipientsDisplayName display name + * @property {Object.<OCA.Sharing.RecipientInfo>} recipientData (as object for easier + * passing to HTML data attributes with jQuery) */ OCA.Sharing.FileList = FileList; |