settings: password editable -> external auth
This commit is contained in:
parent
c878c59bce
commit
69553587c1
4 changed files with 16 additions and 12 deletions
|
@ -4,15 +4,15 @@ from django.forms.widgets import PasswordInput
|
|||
from accounts.models import *
|
||||
|
||||
|
||||
__all__ = ['AddUserForm', 'EditUserForm', 'GroupForm', 'TeamForm']
|
||||
__all__ = ['UserForm', 'UserFormWithoutUsername', 'GroupForm', 'TeamForm']
|
||||
|
||||
|
||||
user_fields=['first_name', 'last_name', 'email', 'is_superuser']
|
||||
user_fields=['first_name', 'last_name', 'email']
|
||||
|
||||
AddUserForm = modelform_factory(User,
|
||||
fields=['username']+user_fields)
|
||||
EditUserForm = modelform_factory(User,
|
||||
fields=user_fields)
|
||||
UserForm = modelform_factory(User,
|
||||
fields=['username']+user_fields+['is_superuser'])
|
||||
UserFormWithoutUsername = modelform_factory(User,
|
||||
fields=user_fields+['is_superuser'])
|
||||
GroupForm = modelform_factory(Group,
|
||||
fields=['name'])
|
||||
TeamForm = modelform_factory(Team,
|
||||
|
|
|
@ -32,6 +32,7 @@ def profile(request):
|
|||
def user_list(request):
|
||||
return render(request, 'accounts/user_list.html', {
|
||||
'users': User.objects.all(),
|
||||
'external_auth': settings.EXTERNAL_AUTH,
|
||||
})
|
||||
|
||||
|
||||
|
@ -43,7 +44,7 @@ def user_details(request, user):
|
|||
'directteams': Team.objects.filter(users__id=user),
|
||||
'tab': tab,
|
||||
'group_managment': settings.GROUP_MANAGMENT,
|
||||
'password_editable': settings.PASSWORD_EDITABLE,
|
||||
'external_auth': settings.EXTERNAL_AUTH,
|
||||
})
|
||||
|
||||
|
||||
|
@ -52,9 +53,12 @@ def user_edit(request, user=None):
|
|||
|
||||
if user:
|
||||
user = get_object_or_404(User, id=user)
|
||||
form = EditUserForm(request.POST or None, instance=user)
|
||||
if settings.EXTERNAL_AUTH:
|
||||
form = UserFormWithoutUsername(request.POST or None, instance=user)
|
||||
else:
|
||||
form = UserForm(request.POST or None, instance=user)
|
||||
else:
|
||||
form = AddUserForm(request.POST or None)
|
||||
form = UserForm(request.POST or None)
|
||||
|
||||
if request.method == 'POST' and form.is_valid():
|
||||
newuser = form.save()
|
||||
|
@ -72,7 +76,7 @@ def user_edit(request, user=None):
|
|||
|
||||
@project_perm_required('manage_accounts')
|
||||
def user_edit_password(request, user):
|
||||
if not settings.PASSWORD_EDITABLE:
|
||||
if not settings.EXTERNAL_AUTH:
|
||||
raise Http404()
|
||||
user = get_object_or_404(User, id=user)
|
||||
form = AdminPasswordChangeForm(user, request.POST or None)
|
||||
|
|
|
@ -170,4 +170,4 @@ RESERVED_PROJECT_URLS = [
|
|||
]
|
||||
|
||||
GROUP_MANAGMENT = True
|
||||
PASSWORD_EDITABLE = True
|
||||
EXTERNAL_AUTH = False
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
{% else %}
|
||||
<a href="{% url 'activate-user' user.id %}" class="btn btn-default"><span class="glyphicon glyphicon-check"></span> activate</a>
|
||||
{% endif %}
|
||||
{% if password_editable %}
|
||||
{% if not external_auth %}
|
||||
<a href="{% url 'edit-user-password' user.id %}" class="btn btn-info"><span class="glyphicon glyphicon-cog"></span> change password</a>
|
||||
{% endif %}
|
||||
<a href="{% url 'edit-user' user.id %}" class="btn btn-primary"><span class="glyphicon glyphicon-edit"></span> edit</a>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue