mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-19 18:29:23 +00:00
Add share dialog
This commit is contained in:
@@ -50,6 +50,7 @@ define([
|
|||||||
var dir = this.collection;
|
var dir = this.collection;
|
||||||
var path = this.getPath();
|
var path = this.getPath();
|
||||||
var model = this;
|
var model = this;
|
||||||
|
options = options || {};
|
||||||
|
|
||||||
var opts = {
|
var opts = {
|
||||||
repo_id: dir.repo_id,
|
repo_id: dir.repo_id,
|
||||||
|
@@ -102,7 +102,6 @@ define([
|
|||||||
},
|
},
|
||||||
|
|
||||||
showPopupMenu: function(event) {
|
showPopupMenu: function(event) {
|
||||||
console.log("showPopupMenu");
|
|
||||||
var dir = this.dir;
|
var dir = this.dir;
|
||||||
var template;
|
var template;
|
||||||
|
|
||||||
@@ -132,17 +131,21 @@ define([
|
|||||||
'top': '100px',
|
'top': '100px',
|
||||||
});
|
});
|
||||||
|
|
||||||
// TODO: bind operations here
|
// Using _.bind(function, object) to make that whenever the function is
|
||||||
|
// called, the value of this will be the object.
|
||||||
this.$('.grid-item-op .delete').on('click', { view: this }, this.del);
|
this.$el.on('click', '.delete', _.bind(this.del, this));
|
||||||
|
this.$el.on('click', '.share', _.bind(this.share, this));
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_closeMenu: function() {
|
||||||
|
this.$('.grid-item-op').remove();
|
||||||
|
},
|
||||||
|
|
||||||
del: function(event) {
|
del: function(event) {
|
||||||
var _this = event.data.view;
|
var dirent_name = this.model.get('obj_name');
|
||||||
var dirent_name = _this.model.get('obj_name');
|
this.model.deleteFromServer({
|
||||||
_this.model.deleteFromServer({
|
|
||||||
success: function(data) {
|
success: function(data) {
|
||||||
var msg = gettext("Successfully deleted %(name)s")
|
var msg = gettext("Successfully deleted %(name)s")
|
||||||
.replace('%(name)s', Common.HTMLescape(dirent_name));
|
.replace('%(name)s', Common.HTMLescape(dirent_name));
|
||||||
@@ -155,6 +158,26 @@ define([
|
|||||||
return false;
|
return false;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
share: function() {
|
||||||
|
var dir = this.dir,
|
||||||
|
obj_name = this.model.get('obj_name'),
|
||||||
|
dirent_path = this.model.getPath();
|
||||||
|
|
||||||
|
var options = {
|
||||||
|
'is_repo_owner': dir.is_repo_owner,
|
||||||
|
'is_virtual': dir.is_virtual,
|
||||||
|
'user_perm': this.model.get('perm'),
|
||||||
|
'repo_id': dir.repo_id,
|
||||||
|
'repo_encrypted': false,
|
||||||
|
'is_dir': this.model.get('is_dir') ? true : false,
|
||||||
|
'dirent_path': dirent_path,
|
||||||
|
'obj_name': obj_name
|
||||||
|
};
|
||||||
|
new ShareView(options);
|
||||||
|
this._closeMenu();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
return DirentGridView;
|
return DirentGridView;
|
||||||
|
Reference in New Issue
Block a user