1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-03 07:55:36 +00:00

Revert "[select2] upgraded it to v4.0"

This reverts commit 62c3519e85.
This commit is contained in:
lian
2018-08-03 16:08:29 +08:00
parent 20cb4ce86f
commit ee8e4135ea
35 changed files with 4567 additions and 428 deletions

View File

@@ -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');