summaryrefslogtreecommitdiffstats
path: root/core/js
diff options
context:
space:
mode:
authorRoeland Jago Douma <rullzer@owncloud.com>2016-02-11 08:17:52 +0100
committerRoeland Jago Douma <rullzer@owncloud.com>2016-02-11 11:03:11 +0100
commitf5be48d81dc4cb2d9e7b1ef340deec2ded042982 (patch)
treec243174043879a5b1cf7f7101374a3b1c7917338 /core/js
parent06af9b817edb1fdf230f71c2fc77bc9c12031bc6 (diff)
downloadnextcloud-server-f5be48d81dc4cb2d9e7b1ef340deec2ded042982.tar.gz
nextcloud-server-f5be48d81dc4cb2d9e7b1ef340deec2ded042982.zip
Calculate the share statuses in js from the OCS Response
Right now this is only done on page load. We should do it on each directory traversal.
Diffstat (limited to 'core/js')
-rw-r--r--core/js/share.js18
1 files changed, 12 insertions, 6 deletions
diff --git a/core/js/share.js b/core/js/share.js
index 9baa34d9bb7..b2c1bd5de10 100644
--- a/core/js/share.js
+++ b/core/js/share.js
@@ -52,15 +52,21 @@ OC.Share = _.extend(OC.Share || {}, {
loadIcons:function(itemType, fileList, callback) {
// Load all share icons
$.get(
- OC.filePath('core', 'ajax', 'share.php'),
+ OC.linkToOCS('apps/files_sharing/api/v1', 2) + 'shares',
{
- fetch: 'getItemsSharedStatuses',
- itemType: itemType
+ subfiles: 'true',
+ path: fileList.dirInfo.path,
+ format: 'json'
}, function(result) {
- if (result && result.status === 'success') {
+ if (result && result.ocs.meta.statuscode === 200) {
OC.Share.statuses = {};
- $.each(result.data, function(item, data) {
- OC.Share.statuses[item] = data;
+ $.each(result.ocs.data, function(it, share) {
+ if (!(share.item_source in OC.Share.statuses)) {
+ OC.Share.statuses[share.item_source] = {link: false};
+ }
+ if (share.share_type === OC.Share.SHARE_TYPE_LINK) {
+ OC.Share.statuses[share.item_source] = {link: true};
+ }
});
if (_.isFunction(callback)) {
callback(OC.Share.statuses);