make unshare work
This commit is contained in:
parent
7ae84e0e5c
commit
a5b0ea031d
|
@ -885,40 +885,6 @@ $(document).ready(function() {
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
|
|
||||||
$(document).on('click', '#dropdown .unshare', function() {
|
|
||||||
var $li = $(this).closest('li');
|
|
||||||
var itemType = $('#dropdown').data('item-type');
|
|
||||||
var itemSource = $('#dropdown').data('item-source');
|
|
||||||
var shareType = $li.data('share-type');
|
|
||||||
var shareWith = $li.attr('data-share-with');
|
|
||||||
var $button = $(this);
|
|
||||||
|
|
||||||
if (!$button.is('a')) {
|
|
||||||
$button = $button.closest('a');
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($button.hasClass('icon-loading-small')) {
|
|
||||||
// deletion in progress
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
$button.empty().addClass('icon-loading-small');
|
|
||||||
|
|
||||||
OC.Share.unshare(itemType, itemSource, shareType, shareWith, function() {
|
|
||||||
$li.remove();
|
|
||||||
var index = OC.Share.itemShares[shareType].indexOf(shareWith);
|
|
||||||
OC.Share.itemShares[shareType].splice(index, 1);
|
|
||||||
// updated list of shares
|
|
||||||
OC.Share.currentShares[shareType].splice(index, 1);
|
|
||||||
$('#dropdown').trigger(new $.Event('sharesChanged', {shares: OC.Share.currentShares}));
|
|
||||||
OC.Share.updateIcon(itemType, itemSource);
|
|
||||||
if (typeof OC.Share.statuses[itemSource] === 'undefined') {
|
|
||||||
$('#expiration').slideUp(OC.menuSpeed);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
return false;
|
|
||||||
});
|
|
||||||
|
|
||||||
$(document).on('change', '#dropdown .permissions', function() {
|
$(document).on('change', '#dropdown .permissions', function() {
|
||||||
var li = $(this).closest('li');
|
var li = $(this).closest('li');
|
||||||
if ($(this).attr('name') == 'edit') {
|
if ($(this).attr('name') == 'edit') {
|
||||||
|
|
|
@ -212,6 +212,9 @@
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var view = this;
|
||||||
|
this.$el.find('.unshare').click(function() { view.onUnshare(this, view); });
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -224,6 +227,24 @@
|
||||||
this._template = Handlebars.compile(TEMPLATE);
|
this._template = Handlebars.compile(TEMPLATE);
|
||||||
}
|
}
|
||||||
return this._template;
|
return this._template;
|
||||||
|
},
|
||||||
|
|
||||||
|
onUnshare: function(element, view) {
|
||||||
|
var $element = $(element);
|
||||||
|
|
||||||
|
if($element.hasClass('icon-loading-small')) {
|
||||||
|
// in process
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$element.empty().addClass('icon-loading-small');
|
||||||
|
|
||||||
|
var $li = $element.closest('li');
|
||||||
|
var shareType = $li.data('share-type');
|
||||||
|
var shareWith = $li.attr('data-share-with');
|
||||||
|
|
||||||
|
view.model.removeShare(shareType, shareWith);
|
||||||
|
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
|
@ -121,15 +121,7 @@
|
||||||
},
|
},
|
||||||
|
|
||||||
removeLinkShare: function() {
|
removeLinkShare: function() {
|
||||||
var model = this;
|
this.removeShare(OC.Share.SHARE_TYPE_LINK, '');
|
||||||
var itemType = this.get('itemType');
|
|
||||||
var itemSource = this.get('itemSource');
|
|
||||||
|
|
||||||
OC.Share.unshare(itemType, itemSource, OC.Share.SHARE_TYPE_LINK, '', function() {
|
|
||||||
model.fetch();
|
|
||||||
//FIXME: updateIcon belongs to view
|
|
||||||
OC.Share.updateIcon(itemType, itemSource);
|
|
||||||
});
|
|
||||||
},
|
},
|
||||||
|
|
||||||
setPublicUpload: function(allow) {
|
setPublicUpload: function(allow) {
|
||||||
|
@ -179,6 +171,18 @@
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
|
removeShare: function(shareType, shareWith) {
|
||||||
|
var model = this;
|
||||||
|
var itemType = this.get('itemType');
|
||||||
|
var itemSource = this.get('itemSource');
|
||||||
|
|
||||||
|
OC.Share.unshare(itemType, itemSource, shareType, shareWith, function() {
|
||||||
|
model.fetch();
|
||||||
|
//FIXME: updateIcon belongs to view
|
||||||
|
OC.Share.updateIcon(itemType, itemSource);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @returns {boolean}
|
* @returns {boolean}
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue