|
@@ -239,7 +239,7 @@ def edit_user(request, username=None):
|
|
|
try:
|
|
try:
|
|
|
ensure_home_directory(request.fs, instance.username)
|
|
ensure_home_directory(request.fs, instance.username)
|
|
|
except (IOError, WebHdfsException), e:
|
|
except (IOError, WebHdfsException), e:
|
|
|
- request.error(_('Cannot make home directory for user %s.' % instance.username))
|
|
|
|
|
|
|
+ request.error(_('Cannot make home directory for user %s.') % instance.username)
|
|
|
|
|
|
|
|
if require_change_password(userprofile):
|
|
if require_change_password(userprofile):
|
|
|
userprofile.first_login = False
|
|
userprofile.first_login = False
|
|
@@ -362,7 +362,7 @@ def add_ldap_users(request):
|
|
|
try:
|
|
try:
|
|
|
ensure_home_directory(request.fs, user.username)
|
|
ensure_home_directory(request.fs, user.username)
|
|
|
except (IOError, WebHdfsException), e:
|
|
except (IOError, WebHdfsException), e:
|
|
|
- request.error(_("Cannot make home directory for user %s." % user.username))
|
|
|
|
|
|
|
+ request.error(_("Cannot make home directory for user %s.") % user.username)
|
|
|
|
|
|
|
|
if not users:
|
|
if not users:
|
|
|
errors = form._errors.setdefault('username_pattern', ErrorList())
|
|
errors = form._errors.setdefault('username_pattern', ErrorList())
|
|
@@ -395,6 +395,7 @@ def add_ldap_groups(request):
|
|
|
import_by_dn = form.cleaned_data['dn']
|
|
import_by_dn = form.cleaned_data['dn']
|
|
|
import_members = form.cleaned_data['import_members']
|
|
import_members = form.cleaned_data['import_members']
|
|
|
import_members_recursive = form.cleaned_data['import_members_recursive']
|
|
import_members_recursive = form.cleaned_data['import_members_recursive']
|
|
|
|
|
+ is_ensuring_home_directories = form.cleaned_data['ensure_home_directories']
|
|
|
server = form.cleaned_data.get('server')
|
|
server = form.cleaned_data.get('server')
|
|
|
try:
|
|
try:
|
|
|
connection = ldap_access.get_connection_from_server(server)
|
|
connection = ldap_access.get_connection_from_server(server)
|
|
@@ -405,6 +406,17 @@ def add_ldap_groups(request):
|
|
|
except AssertionError, e:
|
|
except AssertionError, e:
|
|
|
raise PopupException(_('There was a problem with some of the LDAP information'), detail=str(e))
|
|
raise PopupException(_('There was a problem with some of the LDAP information'), detail=str(e))
|
|
|
|
|
|
|
|
|
|
+ unique_users = set()
|
|
|
|
|
+ if is_ensuring_home_directories:
|
|
|
|
|
+ for group in groups:
|
|
|
|
|
+ for user in group.user_set.all():
|
|
|
|
|
+ unique_users.add(user)
|
|
|
|
|
+ for user in unique_users:
|
|
|
|
|
+ try:
|
|
|
|
|
+ ensure_home_directory(request.fs, user.username)
|
|
|
|
|
+ except (IOError, WebHdfsException), e:
|
|
|
|
|
+ raise PopupException(_("Exception creating home directory for LDAP user %s in group %s.") % (user, group), detail=e)
|
|
|
|
|
+
|
|
|
if groups:
|
|
if groups:
|
|
|
return redirect(reverse(list_groups))
|
|
return redirect(reverse(list_groups))
|
|
|
else:
|
|
else:
|