summaryrefslogtreecommitdiffstats
path: root/core/js
diff options
context:
space:
mode:
authorRoeland Jago Douma <roeland@famdouma.nl>2017-04-10 17:07:45 +0200
committerRoeland Jago Douma <roeland@famdouma.nl>2017-04-11 13:56:03 +0200
commit58f959864abbce05af586a162fde2fc10b039478 (patch)
treed3da25848267287181cd834f4cb8aa516e414413 /core/js
parent18580395d4095842462e035a2d947e716413d2fd (diff)
downloadnextcloud-server-58f959864abbce05af586a162fde2fc10b039478.tar.gz
nextcloud-server-58f959864abbce05af586a162fde2fc10b039478.zip
Show 'shared via' in share list for reshares
Fixes #1330 userA shares a file to userB userB shares that file to userC userA can see both userB and userC. Now they can also see that userB shared it to user C Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Diffstat (limited to 'core/js')
-rw-r--r--core/js/sharedialogshareelistview.js13
-rw-r--r--core/js/shareitemmodel.js27
2 files changed, 40 insertions, 0 deletions
diff --git a/core/js/sharedialogshareelistview.js b/core/js/sharedialogshareelistview.js
index a9945b594e1..6903dd57c33 100644
--- a/core/js/sharedialogshareelistview.js
+++ b/core/js/sharedialogshareelistview.js
@@ -190,6 +190,8 @@
var shareWithDisplayName = this.model.getShareWithDisplayName(shareIndex);
var shareWithTitle = '';
var shareType = this.model.getShareType(shareIndex);
+ var sharedBy = this.model.getSharedBy(shareIndex);
+ var sharedByDisplayName = this.model.getSharedByDisplayName(shareIndex);
var hasPermissionOverride = {};
if (shareType === OC.Share.SHARE_TYPE_GROUP) {
@@ -211,6 +213,17 @@
shareWithTitle = shareWith;
}
+ if (sharedBy !== oc_current_user) {
+ var empty = shareWithTitle === '';
+ if (!empty) {
+ shareWithTitle += ' (';
+ }
+ shareWithTitle += t('core', 'shared by {sharer}', {sharer: sharedByDisplayName});
+ if (!empty) {
+ shareWithTitle += ')';
+ }
+ }
+
var share = this.model.get('shares')[shareIndex];
var password = share.password;
var hasPassword = password !== null && password !== '';
diff --git a/core/js/shareitemmodel.js b/core/js/shareitemmodel.js
index 6bb8d75b91f..bff006f7ef3 100644
--- a/core/js/shareitemmodel.js
+++ b/core/js/shareitemmodel.js
@@ -47,6 +47,7 @@
* @property {Date} expiration optional?
* @property {number} stime optional?
* @property {string} uid_owner
+ * @property {string} displayname_owner
*/
/**
@@ -408,6 +409,32 @@
},
/**
+ * @param shareIndex
+ * @returns {string}
+ */
+ getSharedBy: function(shareIndex) {
+ /** @type OC.Share.Types.ShareInfo **/
+ var share = this.get('shares')[shareIndex];
+ if(!_.isObject(share)) {
+ throw "Unknown Share";
+ }
+ return share.uid_owner;
+ },
+
+ /**
+ * @param shareIndex
+ * @returns {string}
+ */
+ getSharedByDisplayName: function(shareIndex) {
+ /** @type OC.Share.Types.ShareInfo **/
+ var share = this.get('shares')[shareIndex];
+ if(!_.isObject(share)) {
+ throw "Unknown Share";
+ }
+ return share.displayname_owner;
+ },
+
+ /**
* returns the array index of a sharee for a provided shareId
*
* @param shareId