diff --git a/docker/lama/dev.env b/docker/lama/dev.env index 8a911c7..1a047bf 100644 --- a/docker/lama/dev.env +++ b/docker/lama/dev.env @@ -18,7 +18,7 @@ LDAP_SERVER_URI=ldap://ldap:389 LDAP_ADMIN_USER_NAME=cn=admin,dc=test,dc=de LDAP_ADMIN_USER_PASSWORD=secret -LDAP_USER_ENTRY=ou=dc=test,dc=de +LDAP_USER_ENTRY=dc=test,dc=de LDAP_USER_SELECTOR=(cn=%(user)s) LDAP_GROUP_ENTRY=dc=test,dc=de diff --git a/src/account_manager/views/group_views.py b/src/account_manager/views/group_views.py index 18a10cf..7359b39 100644 --- a/src/account_manager/views/group_views.py +++ b/src/account_manager/views/group_views.py @@ -65,8 +65,9 @@ def group_add(request, realm_id): 'extra_error': 'Bitte wähle mindestens ein Mitglied aus. Falls kein Mitglied angezeigt wird, erstelle zuerst einen Nutzer'}) # if a GET (or any other method) we'll create a blank form else: + users = LdapUser.objects.all() form = AddLDAPGroupForm() - return render(request, 'group/group_add.jinja2', {'form': form, 'realm': realm}) + return render(request, 'group/group_add.jinja2', {'form': form, 'realm': realm, 'users': users}) @login_required @@ -78,7 +79,7 @@ def group_update(request, realm_id, group_dn): LdapGroup.base_dn = f'ou=groups,{realm.ldap_base_dn}' group = LdapGroup.objects.get(dn=group_dn) - + users = LdapUser.objects.all() if request.method == 'POST': form = AddLDAPGroupForm(request.POST) if form.is_valid(): @@ -105,7 +106,7 @@ def group_update(request, realm_id, group_dn): form = AddLDAPGroupForm(initial=data) return render(request, 'group/group_detail.jinja2', - {'form': form, 'realm': realm, 'group': group}) + {'form': form, 'realm': realm, 'group': group, 'users': users}) @login_required diff --git a/src/static/css/floating_labels.css b/src/static/css/floating_labels.css index f887305..a299a6f 100644 --- a/src/static/css/floating_labels.css +++ b/src/static/css/floating_labels.css @@ -156,6 +156,12 @@ background-color: var(--danger); } +.table-checkbox-control-input:checked ~ .table-checkbox-control-label-add::before { + color: #fff; + border-color: var(--primary); + background-color: var(--primary); +} + .table-checkbox-control-label::after { position: absolute; top: 0.25rem; diff --git a/src/static/js/main.js b/src/static/js/main.js index 1ca747f..85cd9ab 100644 --- a/src/static/js/main.js +++ b/src/static/js/main.js @@ -14,9 +14,9 @@ $(document).ready(function () { $("#delete-all-checkbox").change(function () { if (document.getElementById('delete-all-checkbox').checked) { - $('.delete-checkbox').prop("checked", true); + $('.multiple-select-checkbox').prop("checked", true); } else { - $('.delete-checkbox').prop("checked", false); + $('.multiple-select-checkbox').prop("checked", false); } }); }); \ No newline at end of file diff --git a/src/templates/group/group_add.jinja2 b/src/templates/group/group_add.jinja2 index ee7c43e..0a06b7f 100644 --- a/src/templates/group/group_add.jinja2 +++ b/src/templates/group/group_add.jinja2 @@ -10,7 +10,7 @@ {{ mform.text_input(form.name) }} {{ form.members.label }} - {{ mform.checkbox_input_for_choice_fields(form.members) }} + {{ mform.user_select_table_input(form.members, users) }}
| + + | +Nutzername | +Vorname | +Nachname | +|
|---|---|---|---|---|
| + + + | +{{ user.username }} | +{{ user.email }} | +{{ user.first_name }} | +{{ user.last_name }} | +