Add info if group could not be created, because no member (ldap requirement)
This commit is contained in:
parent
5b4fe02f86
commit
b8b7fea7ad
@ -44,7 +44,7 @@ def group_detail(request, realm_id, group_dn):
|
||||
@login_required
|
||||
@is_realm_admin
|
||||
def group_add(request, realm_id):
|
||||
realm_obj = Realm.objects.get(id=realm_id)
|
||||
realm = Realm.objects.get(id=realm_id)
|
||||
LdapUser.base_dn = LdapUser.ROOT_DN
|
||||
# if this is a POST request we need to process the form data
|
||||
if request.method == 'POST':
|
||||
@ -52,18 +52,19 @@ def group_add(request, realm_id):
|
||||
form = AddLDAPGroupForm(request.POST)
|
||||
# check whether it's valid:
|
||||
if form.is_valid():
|
||||
name = form.cleaned_data['name']
|
||||
name = form.cleaned_data["name"]
|
||||
members = form.cleaned_data['members']
|
||||
members = [member.dn for member in members]
|
||||
LdapGroup.base_dn = f'ou=groups,{realm_obj.ldap_base_dn}'
|
||||
LdapGroup.base_dn = f'ou=groups,{realm.ldap_base_dn}'
|
||||
LdapGroup.objects.create(name=name, members=members)
|
||||
return redirect('realm-group-list', realm_id)
|
||||
|
||||
elif 'members' not in form.cleaned_data:
|
||||
return render(request, 'group/group_add.jinja2', {'form': form, 'realm': realm,
|
||||
'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:
|
||||
form = AddLDAPGroupForm()
|
||||
|
||||
return render(request, 'group/group_add.jinja2', {'form': form, 'realm': realm_obj})
|
||||
return render(request, 'group/group_add.jinja2', {'form': form, 'realm': realm})
|
||||
|
||||
|
||||
@login_required
|
||||
|
||||
@ -2,6 +2,9 @@
|
||||
{% import 'macros/form_macros.jinja2' as mform %}
|
||||
|
||||
{% block detail_content %}
|
||||
{% if extra_error %}
|
||||
<div class="alert alert-warning">{{ extra_error }}</div>
|
||||
{% endif %}
|
||||
<form action="{{ url('realm-group-add', args=[realm.id]) }}" method="post">
|
||||
<input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}">
|
||||
{{ mform.text_input(form.name) }}
|
||||
|
||||
Reference in New Issue
Block a user