mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-03 07:55:36 +00:00
@@ -53,7 +53,7 @@ define([
|
||||
}).modal({focus:false});
|
||||
}
|
||||
|
||||
this.$("#share-tabs").tabs({});
|
||||
this.$("#share-tabs").tabs();
|
||||
|
||||
if (!this.repo_encrypted && app.pageOptions.can_generate_share_link) {
|
||||
this.downloadLinkPanelInit();
|
||||
@@ -106,9 +106,6 @@ define([
|
||||
},
|
||||
|
||||
events: {
|
||||
'click #dir-user-share-tab': 'clickUserShareTab',
|
||||
'click #dir-group-share-tab': 'clickGroupShareTab',
|
||||
|
||||
'click [type="checkbox"]': 'clickCheckbox',
|
||||
'click .shared-link': 'clickToSelect',
|
||||
|
||||
@@ -140,40 +137,6 @@ define([
|
||||
'click #add-dir-group-share-item .submit': 'dirGroupShare'
|
||||
},
|
||||
|
||||
// To make select2 input get the right width
|
||||
clickUserShareTab: function() {
|
||||
var $add_item = $('#add-dir-user-share-item');
|
||||
$('[name="emails"]', $add_item).select2($.extend({
|
||||
'width': '100%'
|
||||
}, Common.contactInputOptionsForSelect2()));
|
||||
},
|
||||
|
||||
clickGroupShareTab: function() {
|
||||
var $add_item = $('#add-dir-group-share-item');
|
||||
var prepareGroupsSelector = function(groups) {
|
||||
var group_list = [];
|
||||
for (var i = 0, len = groups.length; i < len; i++) {
|
||||
group_list.push({
|
||||
id: groups[i].id,
|
||||
text: groups[i].name
|
||||
});
|
||||
}
|
||||
$('[name="groups"]', $add_item).select2({
|
||||
language: Common.i18nForSelect2(),
|
||||
width: '100%',
|
||||
multiple: true,
|
||||
placeholder: gettext("Select groups"),
|
||||
data: group_list,
|
||||
escapeMarkup: function(m) { return m; }
|
||||
});
|
||||
};
|
||||
if (this.parent_group_id) { // group owned repo
|
||||
this.prepareAvailableGroupsForGroupOwnedRepo({'callback': prepareGroupsSelector});
|
||||
} else {
|
||||
this.prepareAvailableGroups({'callback': prepareGroupsSelector});
|
||||
}
|
||||
},
|
||||
|
||||
clickCheckbox: function(e) {
|
||||
var $el = $(e.currentTarget);
|
||||
// for link options such as 'password', 'expire'
|
||||
@@ -676,6 +639,9 @@ define([
|
||||
});
|
||||
$add_item.after(new_item.el);
|
||||
});
|
||||
$('[name="emails"]', $add_item).select2($.extend({
|
||||
//width: '292px' // the container will copy class 'w100' from the original element to get width
|
||||
},Common.contactInputOptionsForSelect2()));
|
||||
$table.removeClass('hide');
|
||||
},
|
||||
error: function(xhr, textStatus, errorThrown) {
|
||||
@@ -818,7 +784,23 @@ define([
|
||||
});
|
||||
$add_item.after(new_item.el);
|
||||
});
|
||||
$table.removeClass('hide');
|
||||
|
||||
var prepareGroupsSelector = function(groups) {
|
||||
var g_opts = '';
|
||||
for (var i = 0, len = groups.length; i < len; i++) {
|
||||
g_opts += '<option value="' + groups[i].id + '" data-index="' + i + '">' + groups[i].name + '</option>';
|
||||
}
|
||||
$('[name="groups"]', $add_item).html(g_opts).select2({
|
||||
placeholder: gettext("Select groups"),
|
||||
escapeMarkup: function(m) { return m; }
|
||||
});
|
||||
$table.removeClass('hide');
|
||||
};
|
||||
if (_this.parent_group_id) { // group owned repo
|
||||
_this.prepareAvailableGroupsForGroupOwnedRepo({'callback': prepareGroupsSelector});
|
||||
} else {
|
||||
_this.prepareAvailableGroups({'callback': prepareGroupsSelector});
|
||||
}
|
||||
},
|
||||
error: function(xhr, textStatus, errorThrown) {
|
||||
var err_msg = Common.prepareAjaxErrorMsg(xhr);
|
||||
@@ -840,9 +822,9 @@ define([
|
||||
var $panel = $('#dir-user-share');
|
||||
var $form = this.$('#add-dir-user-share-item'); // pseudo form
|
||||
|
||||
var $emails_input = $('[name="emails"]', $form),
|
||||
emails = $emails_input.val(); // []
|
||||
if (!emails.length) {
|
||||
var emails_input = $('[name="emails"]', $form),
|
||||
emails = emails_input.val(); // string
|
||||
if (!emails) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -864,7 +846,7 @@ define([
|
||||
data = {
|
||||
'permission': perm,
|
||||
'path': path,
|
||||
'username': emails
|
||||
'username': emails.split(',')
|
||||
};
|
||||
} else {
|
||||
url = Common.getUrl({
|
||||
@@ -874,7 +856,7 @@ define([
|
||||
method = 'PUT';
|
||||
data = {
|
||||
'share_type': 'user',
|
||||
'username': emails,
|
||||
'username': emails.split(','),
|
||||
'permission': perm
|
||||
};
|
||||
}
|
||||
@@ -898,7 +880,7 @@ define([
|
||||
});
|
||||
$add_item.after(new_item.el);
|
||||
});
|
||||
$emails_input.val(null).trigger('change'); // clear the selected items
|
||||
emails_input.select2("val", "");
|
||||
$('option', $perm).prop('selected', false);
|
||||
$('[value="rw"]', $perm).prop('selected', true);
|
||||
$error.addClass('hide');
|
||||
@@ -928,9 +910,9 @@ define([
|
||||
var $form = this.$('#add-dir-group-share-item'); // pseudo form
|
||||
|
||||
var $groups_input = $('[name="groups"]', $form),
|
||||
groups = $groups_input.val(); // [] or [group.id]
|
||||
groups = $groups_input.val(); // null or [group.id]
|
||||
|
||||
if (!groups.length) {
|
||||
if (!groups) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -985,7 +967,7 @@ define([
|
||||
});
|
||||
$add_item.after(new_item.el);
|
||||
});
|
||||
$groups_input.val(null).trigger('change'); // clear the selected items
|
||||
$groups_input.select2("val", "");
|
||||
$('option', $perm).prop('selected', false);
|
||||
$('[value="rw"]', $perm).prop('selected', true);
|
||||
$error.addClass('hide');
|
||||
|
Reference in New Issue
Block a user