Merge pull request #22285 from owncloud/fix_22275
Only show link shares for the current user
This commit is contained in:
commit
3184115c3c
3 changed files with 19 additions and 4 deletions
|
@ -46,6 +46,7 @@
|
|||
* @property {string} mail_send
|
||||
* @property {Date} expiration optional?
|
||||
* @property {number} stime optional?
|
||||
* @property {string} uid_owner
|
||||
*/
|
||||
|
||||
/**
|
||||
|
@ -725,6 +726,14 @@
|
|||
|| share.item_source === this.get('itemSource'));
|
||||
|
||||
if (isShareLink) {
|
||||
/*
|
||||
* Ignore reshared link shares for now
|
||||
* FIXME: Find a way to display properly
|
||||
*/
|
||||
if (share.uid_owner !== OC.currentUser) {
|
||||
return share;
|
||||
}
|
||||
|
||||
var link = window.location.protocol + '//' + window.location.host;
|
||||
if (!share.token) {
|
||||
// pre-token link
|
||||
|
|
|
@ -164,6 +164,8 @@ describe('OC.Share.ShareItemModel', function() {
|
|||
}
|
||||
]));
|
||||
|
||||
OC.currentUser = 'root';
|
||||
|
||||
model.fetch();
|
||||
|
||||
var shares = model.get('shares');
|
||||
|
@ -253,7 +255,7 @@ describe('OC.Share.ShareItemModel', function() {
|
|||
uid_owner: 'root'
|
||||
}]
|
||||
));
|
||||
|
||||
OC.currentUser = 'root';
|
||||
model.fetch();
|
||||
|
||||
var shares = model.get('shares');
|
||||
|
@ -443,7 +445,7 @@ describe('OC.Share.ShareItemModel', function() {
|
|||
token: 'tehtoken',
|
||||
uid_owner: 'root'
|
||||
}]));
|
||||
|
||||
OC.currentUser = 'root';
|
||||
model.fetch();
|
||||
|
||||
var res = model.sendEmailPrivateLink('foo@bar.com');
|
||||
|
@ -493,7 +495,7 @@ describe('OC.Share.ShareItemModel', function() {
|
|||
token: 'tehtoken',
|
||||
uid_owner: 'root'
|
||||
}]));
|
||||
|
||||
OC.currentUser = 'root';
|
||||
model.fetch();
|
||||
|
||||
var res = model.sendEmailPrivateLink('foo@bar.com');
|
||||
|
|
|
@ -2495,7 +2495,8 @@ class Share extends Constants {
|
|||
if ($fileDependent) {
|
||||
$select = '`*PREFIX*share`.`id`, `*PREFIX*share`.`parent`, `share_type`, `path`, `storage`, '
|
||||
. '`share_with`, `uid_owner` , `file_source`, `stime`, `*PREFIX*share`.`permissions`, '
|
||||
. '`*PREFIX*storages`.`id` AS `storage_id`, `*PREFIX*filecache`.`parent` as `file_parent`';
|
||||
. '`*PREFIX*storages`.`id` AS `storage_id`, `*PREFIX*filecache`.`parent` as `file_parent`, '
|
||||
. '`uid_initiator`';
|
||||
} else {
|
||||
$select = '`id`, `parent`, `share_type`, `share_with`, `uid_owner`, `item_source`, `stime`, `*PREFIX*share`.`permissions`';
|
||||
}
|
||||
|
@ -2583,6 +2584,9 @@ class Share extends Constants {
|
|||
$statuses = array();
|
||||
foreach ($items as $item) {
|
||||
if ($item['share_type'] === self::SHARE_TYPE_LINK) {
|
||||
if ($item['uid_initiator'] !== \OC::$server->getUserSession()->getUser()->getUID()) {
|
||||
continue;
|
||||
}
|
||||
$statuses[$item[$column]]['link'] = true;
|
||||
} else if (!isset($statuses[$item[$column]])) {
|
||||
$statuses[$item[$column]]['link'] = false;
|
||||
|
|
Loading…
Reference in a new issue