def change_password(request): if not account.password_management_enabled(): raise Http404 user = request.user can_change_password = user.has_usable_password() if not can_change_password: form = None if request.POST: form = CFGOVPasswordChangeForm(user=user, data=request.POST) if form.is_valid(): form.save() update_session_auth_hash(request, form.user) messages.success(request, _("Your password has been changed successfully!")) return redirect('wagtailadmin_account') else: if '__all__' in form.errors: for error in form.errors['__all__']: messages.error(request, error) else: form = CFGOVPasswordChangeForm(user=request.user) return render(request, 'wagtailadmin/account/change_password.html', { 'form': form, 'can_change_password': can_change_password, })