summaryrefslogtreecommitdiffstats
path: root/client/components/settings/connectionMethod.js
blob: 4983a3efc2d93f2a3e605475527001a9450e43b1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Template.connectionMethod.onCreated(function() {
  this.connectionMethods = new ReactiveVar([]);

  Meteor.call('getConnectionsEnabled', (_, result) => {
    if (result) {
      // TODO : add a management of different languages
      // (ex {value: ldap, text: TAPi18n.__('ldap', {}, T9n.getLanguage() || 'en')})
      this.connectionMethods.set([
        {value: 'default'},
        // Gets only the connection methods availables
        ...Object.entries(result).filter((e) => e[1]).map((e) => ({value: e[0]})),
      ]);
    }

    // If only the default authentication available, hides the select boxe
    const content = $('.at-form-connection');
    if (!(this.connectionMethods.get().length > 1)) {
      content.hide();
    } else {
      content.show();
    }
  });
});

Template.connectionMethod.onRendered(() => {
  // Moves the select boxe in the first place of the at-pwd-form div
  $('.at-form-connection').detach().prependTo('.at-pwd-form');
});

Template.connectionMethod.helpers({
  connections() {
    return Template.instance().connectionMethods.get();
  },
});