summaryrefslogtreecommitdiffstats
path: root/settings/js/apps.js
diff options
context:
space:
mode:
Diffstat (limited to 'settings/js/apps.js')
-rw-r--r--settings/js/apps.js35
1 files changed, 17 insertions, 18 deletions
diff --git a/settings/js/apps.js b/settings/js/apps.js
index e808e51e936..22bac1eaf3e 100644
--- a/settings/js/apps.js
+++ b/settings/js/apps.js
@@ -7,6 +7,11 @@
OC.Settings = OC.Settings || {};
OC.Settings.Apps = OC.Settings.Apps || {
+ setupGroupsSelect: function() {
+ OC.Settings.setupGroupsSelect($('#group_select'), {
+ placeholder: t('core', 'All')
+ });
+ },
loadApp:function(app) {
var page = $('#app-content');
page.find('p.license').show();
@@ -112,23 +117,16 @@ OC.Settings.Apps = OC.Settings.Apps || {
page.find(".warning").hide();
}
- page.find("div.multiselect").parent().remove();
if(OC.Settings.Apps.isType(app, 'filesystem') || OC.Settings.Apps.isType(app, 'prelogin') ||
OC.Settings.Apps.isType(app, 'authentication') || OC.Settings.Apps.isType(app, 'logging')) {
page.find("#groups_enable").hide();
page.find("label[for='groups_enable']").hide();
page.find("#groups_enable").attr('checked', null);
} else {
- $('#group_select > option').each(function (i, el) {
- if (app.groups.length === 0 || app.groups.indexOf(el.value) >= 0) {
- $(el).attr('selected', 'selected');
- } else {
- $(el).attr('selected', null);
- }
- });
if (app.active) {
if (app.groups.length) {
- $('#group_select').multiSelect();
+ OC.Settings.Apps.setupGroupsSelect();
+ $('#group_select').select2('val', app.groups || []);
page.find("#groups_enable").attr('checked','checked');
} else {
page.find("#groups_enable").attr('checked', null);
@@ -380,9 +378,10 @@ $(document).ready(function(){
}
});
- $('#group_select').change(function() {
+ $('#group_select').change(function(ev) {
var element = $('#app-content input.enable');
- var groups = $(this).val();
+ // getting an array of values from select2
+ var groups = ev.val || [];
var appid = element.data('appid');
if (appid) {
OC.Settings.Apps.enableApp(appid, false, element, groups);
@@ -404,14 +403,14 @@ $(document).ready(function(){
}
$("#groups_enable").change(function() {
+ var $select = $('#group_select');
+ $select.val('');
if (this.checked) {
- $("div.multiselect").parent().remove();
- $('#group_select').multiSelect();
- } else {
- $('#group_select').hide().val(null);
- $("div.multiselect").parent().remove();
+ OC.Settings.Apps.setupGroupsSelect();
}
-
- $('#group_select').change();
+ else {
+ $select.select2('destroy');
+ }
+ $select.change();
});
});